stephen7 at bigfoot.com
,
Wanneer je begint, heb je op z'n minst het volgende nodig
Wellicht dat je je eerst wat in de linux-documentatie wilt verdiepen, voor een overzicht kun je in ieder geval het volgende (vluchtig) doornemen:
Vermoedelijk staan er in de directory /usr/doc/LDP tevens
De verplichte link
En nog als laatste
De server moet om de client te kunnen herkennen op een aantal wijzen worden ingesteld.
Start het commando /sbin/ifconfig
; als je uitvoer vergelijkbaar
is met wat hieronder staat, dan zijn je loopback en ethernetkaart juist
geconfigureerd.
[cassie@snoball cassie]$ /sbin/ifconfig lo Link encap:Local Loopback inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0 UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1 RX packets:854 errors:0 dropped:0 overruns:0 frame:0 TX packets:854 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 eth0 Link encap:Ethernet HWaddr 00:AA:00:BB:BD:09 inet addr:192.168.53.1 Bcast:192.168.53.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:190369 errors:0 dropped:0 overruns:0 frame:0 TX packets:249267 errors:0 dropped:0 overruns:0 carrier:1 collisions:4793 Interrupt:5 Base address:0x320
Als ...
Hier geeft de server IP-nummers op verzoek van de clients
/etc/dhcpd.conf
bestand kent statische IP-nummers toe als
je een overeenkomend MAC-adres hebt. Een Mac-adres is een uniek 'nummer'
welke aan de NIC wordt gegeven.
Het begin van het 'nummer' is gebaseerd op de fabrikant, als er geen sticker
op de kaart zit, probeer het rom-image dan vanuit eprom of diskette te
laden en kijk wat het rapporteert. (zie client-setup)
#/etc/dhcpd.conf subnet 192.168.35.0 netmask 255.255.255.0 { option domain-name "gundog.net"; range dynamic-bootp 192.168.35.128 192.168.35.255; default-lease-time 21600; max-lease-time 43200; } host 286 { filename "/tftpboot/kermit.nb"; hardware ethernet 00:80:c8:22:ae:de; fixed-address 192.168.35.70; } host elite { filename "/tftpboot/vmlinuz.xterm"; hardware ethernet 00:00:79:80:34:c9; fixed-address 192.168.35.23; option host-name "elite";
/etc/hosts
zet IP-nummers om in hostnamen
#etc/hosts 127.0.0.1 localhost localhost.localdomain 192.168.53.1 snoball snoball.gundog.net 192.168.53.23 elite elite.gundog.net
trivial ftp - als je client het IP-nummer heeft, verzoekt het om een kernel, deze wordt over ethernet bezorgd.
/etc/inetd.conf
zie je een regel met,
tftp dgram udp wait root /usr/sbin/tcpd in.tftpd -s /tftpboot
Herstart inetd, kill -HUP "proces-id van inetd".
Je moet een kernel voor de Client compileren waarin ondersteuning voor NFS en de NIC-driver voor die client is meegecompileerd (niet als modules). Antwoord yes op Root file system on NFS? en BOOTP support?
Draai na het bouwen van de kernel mknbi-linux vanaf de Etherboot-distributie. (het mknbi programma in de netboot/linux directory). Installeer tagged image als /tftpdir/"vmlinuz.xterm".
zie etherboot-4.2/doc/html/README-3.html
zal ik een kopie van die van mij ergens voor download RH6.0 ne2000 NIC beschikbaar stellen.
Het eenvoudigst is het om alles en iedereen toe te staan services en processen op je computer uit te laten voeren, maar op een dag zul je daar spijt van krijgen. Je beperkt dit door je /etc/hosts.deny en herstelt bijzondere rechten in het bestand /etc/hosts.allow, voorbeelden:
#hosts.deny # alles behalve die in hosts.allow ALL:ALL #hosts.allow #alleen hosts binnen mijn domein en mijn host thuis. ALL:LOCAL, 192.168.53. #<-- noot:geen spatie achter :
Meer beveiliging - kijk voor meer informatie in de ldp-howto's en als je gebruik maakt van etherboot, in de security howto daarvan.
Netwerk loader
Een klein programma dat als een BIOS-uitbreiding wordt uitgevoerd, kan vanaf een diskette worden geladen, of je kunt een eprom-chip branden en het voor een geheel diskloze client op je netwerkkaart voegen. Het handelt het DHCPD-verzoek en het laden van TFTP af en het geeft de controle dan over aan het geladen image. Het maakt gebruik van het TCP/IP protocol.
Er zijn twee gratis implementaties TCP/IP net-loaders: Etherboot en Netboot: Etherboot maakt gebruik van ingebouwde drivers terwijl Netboot gebruik maakt van Packet drivers.
cat floppyload.bin ne2000.lzrom > /dev/fd0
De Client doet een verzoek /tftpboot/
<IP-adres van
client> te mounten als zijn /
door NFS vanaf de server.
Je moet dit exporteren vanaf de server, (misschien veiligheidshalve
een symlink maken naar /tftpboot/client
).
NFS is een uitgebreid onderwerp waarvoor een HOWTO en twee mini-HOWTO's zijn.
Ten eerste heb je een kopie van je huidige systeem onder /tftpboot nodig. Ken heeft twee scripts geschreven waarmee de helft van al het werk wordt gedaan, ik noemde ze makefirst en makecopy. Mijn eerste client neemt 20-30mb. Ik gebruikte du -h om te zoeken naar grote onnodige bestanden.
zie etherboot-4.2/doc/html/diskless-5.html
naar het schijnt zijn de volgende bestanden hier kritiek:
#/etc/exports /tftpboot/elite elite(rw,no_root_squash) /tftpboot/elite gordon(rw,no_root_squash) /usr *.gundog.net(ro) /home *.gundog.net(rw) /mnt/cdrom (ro) draai exportfs -a om het bestand exports na de wijzigingen opnieuw in te lezen /usr/sbin/exportfs --help #/etc/sysconfig/network NETWORKING=yes FORWARD_IPV4="no" HOSTNAME="snoball" <----------- GATEWAYDEV="" GATEWAY="" #/etc/sysconfig/network-scripts/ifcfg-eth0 IPADDR="192.168.53.1" <----------- BOOTPROTO=none
#tftpboot/elite/etc/fstab snoball:/tftpboot/elite / nfs rw 1 1 none /proc proc defaults 0 0 snoball:/usr /usr nfs ro 1 1 snoball:/home /home nfs rw 1 1 #tftpboot/elite/etc/sysconfig/network NETWORKING=yes FORWARD_IPV4=nomore HOSTNAME=elite GATEWAYDEV= GATEWAY="192.168.53.1" <----------- #/tftpboot/elite/etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 USERCTL=yes ONBOOT=yes BOOTPROTO=none BROADCAST=192.168.53.255 NETWORK=192.168.53.0 NETMASK=255.255.255.0 IPADDR=192.168.53.23 <-----------
Zonder verdere wijzigingen zou je client nu op de CLIENT pc moeten booten, het deelt zijn bestaden via NFS
Je hebt nu een console terminal. Je hoeft slechts nog een paar wijzigingen aan te brengen om het zodanig te wijzigen dat het X kan draaien.
#controleer hoe xfs start op server /etc/rc.d/init.d/xfs start) echo -n "Starten van X Font Server: " rm -fr /tmp/.font-unix daemon --check xfs su xfs -c xfs -s /bin/sh touch /var/lock/subsys/xfs echo ;; #wijzig XF86Config voor alle computers FontPath "tcp/snoball:7100"
X -query snoball
en je zal de loginbox naar de server krijgen1. Zorg ervoor dat de client overeenkomt met een clausule in /etc/X11/xdm/Xaccess * CHOOSER BROADCAST #iedere indirecte host kan een chooser krijgen 2. Plaats een commentaarteken voor de :0 in /etc/X11/xdm/Xservers #:0 local /usr/X11R6/bin/X 3. Zorg er dan voor dat xdm vanuit de init-scripts wordt uitgevoerd #etc/inittab id:5:initdefault: en # Draai xdm in runlevel 5 # xdm is nu een aparte service x:5:respawn:/etc/X11/prefdm -nodaemon xdm:5:respawn:/usr/X11R6/bin/xdm -nodaemon
#/tftpboot/elite/etc/inittab id:5:initdefault: #WARNING x:5:respawn:/usr/X11R6/bin/Xwrapper -query snoball #WARNING OF om uit te voeren op client ?? id:3:initdefault: #runlevel 3 dwz console x:5:respawn:/etc/X11/prefdm -nodaemon
Markus Gutschke en Ken Yap de auteurs van het programma Etherboot.
Breid je systeem met de volgende programma's uit
stephen7 at bigfoot.com