Diskless PCs intressieren mich schon seit einer ganzen Weile, da ich
es nicht einsehe für spezielle Rechner wie Router oder (Gast-)
Terminals die hohe Lautstärke sowie den erhöhten Stromverbrauch
in kauf zu nehmen.
Anfangs lief mein Router
Raus mit dem FreeBSD
Netboot-Programm auf einer DOS-Diskette, später, dank
Gert, bootete er direkt mit
Boot-EPROM von der Ethernetkarte (
3COM 3C509). Das DOS-Programm, sowie
das ROM-Image für das EPROM, findet sich auf einem FreeBSD-System
in
/usr/src/sys/i386/boot/netboot.
Auf einem Boothost im Netz muß der
bootp laufen, bei mir
(NetBSD-System) durch den
inetd gestartet:
bootps dgram udp wait root /usr/sbin/bootpd bootpd
Für die MAC-Adresse der Netboot-Karte muß dann ein Eintrag im
Konfig-File des
bootp (
/etc/bootptab) vorliegen:
blueberry::ht=ether::ha=0020afc875ac::sm=255.255.255.240::ds=192.68.213.145::ip=192.68.213.148::gw=192.68.213.158::vm=rfc1048:
Über
tftp holt sich das Netboot-Programm dann ein
Konfigfile in Abhängigkeit der durch
bootp zugewiesenen
IP-Adresse (
/tftpboot/cfg.192.68.213.148):
ip 192.68.213.148
server 192.68.213.145
netmask 255.255.255.240
hostname blueberry
kernel kernel
rootfs 192.68.213.145:/usr/local/diskless/root
swapfs 192.68.213.145:/usr/local/diskless
swapsize 20000
Dort ist festgehalten auf welchem NFS-Server und wo dort die Root-Partition und
das Swap-File für das Netboot-System zu finden sind. Das
Swap-File muß auf dem NFS-Server einmal eingerichtet werden und
mindestens so groß sein wie im Konfigfile angegeben (z.B. mit
dd if=/dev/null of=swap.192.68.213.148 bs=1K count=20000).
Als Root-Filesystem verwende ich ein aufs Minimalste reduziertes
System für den jeweils gewünschten Einsatzzweck (Modem-Router,
X-Terminal, o.ä.), als Beispiel kann hier mein
X-BSD dienen, welches momentan für das
Couch-Terminal (Hercules!)
Blueberry seinen Dienst
tut.