update to db59a1a2dd 2019-03-07
[automated-distro-installer] / fai / config / files / etc / rc.local / FAISERVER
index 6640ab14dda034414494a3bed6ad94c2b90db1fd..e70fae952205b7e5689cd19881a7e745060faa04 100755 (executable)
@@ -10,14 +10,20 @@ GREEN='\E[32m'
 set -o pipefail
 
 # setup network
-ifup eth0
+nic=$(awk '/iface/ {print $2}' /etc/network/interfaces |egrep -v ^lo)
+ifup $nic
+# regenerate ssh_host keys
+ls /etc/ssh/ssh_host_* > /dev/null
+if [ $? -ne 0 ]; then
+    dpkg-reconfigure -fnoninteractive openssh-server
+fi
 sleep 8
-[ -x /etc/init.d/nscd ] && /etc/init.d/nscd restart
+[ -x /etc/init.d/nscd ] && invoke-rc.d nscd restart
 
-echo "=================================" >/dev/console
-echo "Setting up the FAI install server" >/dev/console
-echo "This will take a few minutes" >/dev/console
-echo "=================================" >/dev/console
+echo "================================="
+echo "Setting up the FAI install server"
+echo "This will take a few minutes"
+echo "================================="
 
 . /etc/fai/fai.conf
 . /etc/fai/nfsroot.conf
@@ -27,37 +33,37 @@ if [ ! -d "$FAI_CONFIGDIR/class" ]; then
     mkdir -p $FAI_CONFIGDIR
     cp -a /usr/share/doc/fai-doc/examples/simple/* $FAI_CONFIGDIR
     ainsl /srv/fai/config/class/FAIBASE.var "^LOGUSER=fai"
-    myip=$(ip addr show up| grep -w inet | cut -d t -f 2 | cut -d ' ' -f 2 | cut -d / -f 1 | grep -v 127.0.0.1)
+    myip=$(ip addr show up| grep -P -o '(?<=inet )[^/]+' | grep -v 127.0.0.1)
     echo "APTPROXY=http://$myip:3142" >> /srv/fai/config/class/DEBIAN.var
-    # determine a fast mirror for Ubuntu
-    list=$(curl -s http://mirrors.ubuntu.com/mirrors.txt)
-    mirror=$(netselect $list | awk '{print $2}')
-    sed -i -e "s#MIRRORURL#$mirror#" /srv/fai/config/files/etc/apt/sources.list/UBUNTU
 fi
 # set the LOGUSER, wo we get all the logs from our install clients
 ainsl /etc/fai/fai.conf "^LOGUSER=fai"
 
 # make index, then import the packages from the CD mirror
-apt-get update
+apt-get update >/dev/null
 curl -fs 'http://127.0.0.1:3142/acng-report.html?doImport=Start+Import&calcSize=cs&asNeeded=an#bottom' >/dev/null
 
 # setup the FAI server, including creating the nfsroot, use my own proxy
 export APTPROXY="http://127.0.0.1:3142"
-fai-setup -fvB /var/tmp/base.tar.xz 2>&1
+if [ -f /var/tmp/base.tar.xz ]; then
+    fai-setup -fvB /var/tmp/base.tar.xz > /var/log/fai/fai-setup.log 2>&1
+else
+    fai-setup -fv > /var/log/fai/fai-setup.log 2>&1
+fi
 if [ $? -eq 0 ]; then
     rm /var/tmp/base.tar.xz
     echo ""
-    echo "================================================" >/dev/console
-    echo -e "Setting up the FAI server was ${GREEN}successful${NORMAL}" >/dev/console
-    echo "================================================" >/dev/console
+    echo "================================================"
+    echo -e "Setting up the FAI server was ${GREEN}successful${NORMAL}"
+    echo "================================================"
     echo ""
     sleep 10
 else
     echo ""
-    echo "==================================================" >/dev/console
-    echo -e "${RED}ERROR${NORMAL}: Setting up the FAI install server ${RED}FAILED${NORMAL}!" >/dev/console
-    echo "Read /var/log/fai/fai-setup.log for more debugging" >/dev/console
-    echo "==================================================" >/dev/console
+    echo "=================================================="
+    echo -e "${RED}ERROR${NORMAL}: Setting up the FAI install server ${RED}FAILED${NORMAL}!"
+    echo "Read /var/log/fai/fai-setup.log for more debugging"
+    echo "=================================================="
     echo ""
     sleep 10
     exit 99
@@ -73,7 +79,7 @@ EOF
 fai-chboot -o default
 
 # create a template for booting the installation
-fai-chboot -Iv -f verbose,sshd,createvt,menu -u nfs://faiserver/srv/fai/config jessie.tmpl
+fai-chboot -Iv -f verbose,sshd,createvt,menu -u nfs://faiserver/srv/fai/config buster.tmpl
 
 # Since we do not know the MAC address, our DHCP cannot provide the hostname.
 # Therefore we do explicitly set the hostname
@@ -87,4 +93,10 @@ fai-monitor > /var/log/fai/fai-monitor.log &
 
 # move me away
 mv $0 /var/tmp
+
+# create new rc.local for next reboot
+echo '#! /bin/bash' > /etc/rc.local
+echo 'fai-monitor > /var/log/fai/fai-monitor.log &' >> /etc/rc.local
+chmod a+rx /etc/rc.local
+
 exit 0