Diese Möglichkeiten leiden unter demselben Problem, daß man sich für einen Referenzrechner (golden client) entscheiden muß, von dem die Konfiguration geklont wird.
Die vorhandene Infrastruktur zu DHCP und DNS soll erhalten bleiben; aber NFS und TFTP von einem Rechner (faepop01, meine WS) mit FAI aus versorgt werden:
sudo apt-get install fai-server fai-doc fai-client debmirror \
nfs-kernel-server tftpd-hpa syslinux apt-move
/etc/fai/apt/sources.list:
deb http://faepsv04.tu-graz.ac.at:3142/apt-cacher/security.debian.org lenny/updates main non-free contrib deb http://faepsv04.tu-graz.ac.at:3142/apt-cacher/volatile.debian.org/debian-volatile lenny/volatile main contrib non-free deb http://ftp.tu-graz.ac.at/mirror/debian/ lenny main non-free contrib deb-src http://ftp.tu-graz.ac.at/mirror/debian/ lenny main non-free contrib deb http://ftp.at.debian.org/debian/ lenny main non-free contrib deb-src http://ftp.at.debian.org/debian/ lenny main non-free contrib deb http://itp.tugraz.at/Comp/debian/ lenny main system backports deb-src http://itp.tugraz.at/Comp/debian/ lenny main system backports deb http://fai-project.org/download lenny koeln
/etc/fai/fai.conf: (bleibt zZ unverändert)
# installserver=faepop01.tu-graz.ac.at # mirrorhost=ftp.tu-graz.ac.at/mirror
/etc/fai/make-fai-nfsroot.conf:
FAI_DEBOOTSTRAP="lenny http://ftp.at.debian.org/debian"
Setup ausführen: erzeugt das über NFS exportierte root filesystem
sudo fai-setup
http://wiki.fai-project.org/Using_customized_kernels_with_FAI
Im sonst verwendeten Kernel-Paket (siehe Debian) wird die Unterstützung für Module abgeschaltet (Loadable module support —> Enable loadable module support). Die Optionen für IP-Autokonfiguration (Networking —> Networking options —> IP: kernel level autoconfiguration + IP: DHCP support) und root over NFS (File systems —> Network File Systems —> Root file system on NFS) werden aktiviert.
Zusätzlich: aufs einpatchen (zur Zeit reicht das aufs-Paket aus debian testing)
CONFIG_NFS_COMMON=y CONFIG_NFS_FS=y CONFIG_NFS_V3=y CONFIG_ROOT_NFS=y
Kompilieren und installieren des Kernels mit dem Eintrag "linux-image-2.6.31.12" in der Datei /etc/fai/NFSROOT
sudo make-fai-nfsroot
oder beser gleich mit GRML-Kernel:
Wo ist die Konfiguration für den DHCP Server? Was solls - Ergänzung in der DHCP-Konfiguration:
group {
next-server faepop01 ;
filename "pxelinux.0";
use-host-decl-names on;
host faeppc## {hardware ethernet 00:0C:6E:8F:06:96; fixed-address 129.27.161.##;}
host ....
}
Für den zweiten Tei des Bootens übers Netz ist TFTP zuständig; das funktioniert hier leider nur zuverlässig; wenn es nicht über den inet-Superdaemon ausgeführt wird.
Installieren über
apt-get install tftpd-hpa # oder atftpd
und einstellen der Parameter für den start als eigenständiger Daemon in "/etc/default/tftpd-hpa":
RUN_DAEMON="yes" OPTIONS="-l -v -s /srv/tftp"
alternativ:
"/etc/inetd.conf"
tftp dgram udp wait root /usr/sbin/in.tftpd in.tftpd -s /srv/tftp
Dann wird noch
sudo fai-chboot -IFv -s2.6.32.7 faepop.. # install sudo fai-chboot -IFv -s2.6.33-grml64 faepnb.. # install sudo fai-chboot -SFv -s2.6.33-grml64 default # sysinfo /usr/sbin/fai-chboot -L
ausgeführt, PXE-Boot läuft.
Das "alte" Etherboot funktioniert nicht mit nicht mit "3Com Corporation 3c940 10/100/1000Base-T [Marvell] (rev 12) - 10b7:1700" - allerdings ist das durch gPXE sehr viel besser geworden.
IMG=$(mktemp -u /tmp/fai.img.XXXXXXXXXX)
sudo make-fai-bootfloppy -B -f ${IMG} -F \
"nfsroot=/srv/fai/nfsroot,v3,rsize=32768,wsize=32768 FAI_ACTION=install"
dd if=${IMG} of=/dev/sda && rm -f ${IMG}
fai-mirror -v /tmp/mirror fai-cd -m /tmp/mirror fai.iso #ai-cd -m /tmp/mirror -u DIRECTORY make-fai-bootfloppy -f /tmp/fai_floppy.img -i /tmp/fai_iso.img -F \ "nfsroot=/srv/fai/nfsroot,v3,rsize=32768,wsize=32768 FAI_ACTION=install"
neu:
sudo mkdir -p /usr/local/share/fai/ sudo cp -a /usr/share/doc/fai/examples/simple/* /usr/local/share/fai/
[....]
[....]
/etc/udev/rules.d/70_persistent-net.rules werden 2
Ethernet-Schnittstellen eingetragen, davon ist nur die zweite (eth1)
korrekt?/etc/X11/default-desktop-manager hindert kdm am laufen -
anscheinend nicht immer?Einige der Schritte sind zur Zeit noch nicht in FAI integriert, daher sind folgende Aktionen manuell auszuführen.
rm -f /var/lib/cfengine/ppkeys/root-129.27.XXX.XXX.pub
make -C ~/ITP/Config/files SSH install ; sudo cfagent -qK krb5_hostkey_generator.pl <neuer_rechner>
ssh root@<neuer_rechner> /afs/itp.tugraz.at/common/scratch/debian-postinstall