Installazione debian senza clic
Boot da rete
Servizi necessari
Server
- dhcp3-server
- tftpd-hpa (questa versione, non un'altra)
- server web Apache
Client
- scheda di rete con supporto pxe o floppy/cd avvio con rom pxe www.rom-o-matic.net
Il servizio tftp gira sulla porta 69/UDP. Se si usano le iptables, bisogna aprire questa porta.
Dubbi
DHCP TFTP
I tentativi di avvio da rete su client con nic 3c905 hanno avuto esito positivo solo quando la lease dhcp è stata data dallo stesso server con il demone tftp. Nella schermata di avvio l'opzione next server viene passata ed è visualizzata sui client come "DHCP Server: " con l'indirizzo corretto del server TFTP, ma il client và in tftp time out. Eseguendo le prove su client virtuali vmware (nic amd),su workstation HP (nic intel proset), chipset realtek 8139 family l'installazione procede regolarmente. Al momento i client vmware si bloccano a metà dell'installazione dei pacchetti
Bisogna registrare l'host nel dhcpd? Potrebbe bastare modificare le options del maintain?
La registrazione doppia dell'host nel dhcp di maintain e del server TFTP sembra quindi obbligatoria per le schede 3com 3c905, non è chiaro cosa succeda se la lease viene assegnata dai server dns unimo
Esempi
In questo esempio sia il server dhcp che quello tftp sono presenti sulla stessa macchina. File /etc/dhcp3/dhcp3.conf
option domain-name "unimo.it"; option domain-name-servers 155.185.1.2; # allow bootp; # allow booting; default-lease-time 600; max-lease-time 7200; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. #authoritative; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; # No service will be given on this subnet, but declaring it helps the # DHCP server to understand the network topology. subnet 155.185.0.0 netmask 255.255.255.0 { option routers 155.185.0.254; } host install { filename "pxelinux.0"; next-server Thor.cesia.unimo.it; hardware ethernet 00:01:02:19:3A:F6; fixed-address 155.185.0.91; }
Riferimenti
Setting up a server for PXE network booting
preseed.cfg
Esempi
File /var/lib/tftpboot/pxelinux.cfg/default per passare alcuni parametri:
DISPLAY debian-installer/i386/boot-screens/boot.txt F1 debian-installer/i386/boot-screens/f1.txt F2 debian-installer/i386/boot-screens/f2.txt F3 debian-installer/i386/boot-screens/f3.txt F4 debian-installer/i386/boot-screens/f4.txt F5 debian-installer/i386/boot-screens/f5.txt F6 debian-installer/i386/boot-screens/f6.txt F7 debian-installer/i386/boot-screens/f7.txt F8 debian-installer/i386/boot-screens/f8.txt F9 debian-installer/i386/boot-screens/f9.txt F0 debian-installer/i386/boot-screens/f10.txt DEFAULT install LABEL install kernel debian-installer/i386/linux append auto url=http://155.185.0.89/di/preseed.cfg debian-installer/locale=it_IT languagechooser/language-name=Italian countrychooser/shortlist=IT console-keymaps-at/keymap=it netcfg/get_hostname=unassigned-hostname netcfg/get_domain=unassigned-domain time/zone=Europe/Rome vga=normal initrd=debian-installer/i386/initrd.gz -- LABEL linux kernel debian-installer/i386/linux append vga=normal initrd=debian-installer/i386/initrd.gz -- LABEL expert kernel debian-installer/i386/linux append priority=low vga=normal initrd=debian-installer/i386/initrd.gz -- LABEL rescue kernel debian-installer/i386/linux append vga=normal initrd=debian-installer/i386/initrd.gz rescue/enable=true -- LABEL auto kernel debian-installer/i386/linux append auto=true priority=critical vga=normal initrd=debian-installer/i386/initrd.gz -- PROMPT 1 TIMEOUT 0
Impostando TIMEOUT ad 1 l'installer non aspetterà conferma per iniziare l'installazione.
Per la creazione del file preseed.cfg si consiglia di fare molta attenzione alle domande che avranno risposta in italiano ed a quelle che invece avranno risposta in inglese. Per questo motivo è consigliato l'uso del comando debconf-get-selections per avere una panoramica di tutte le domande e le risposte che vengono fatte durante l'installazione di DEBIAN.
In questo esempio il file preseed.gfg è stato messo all'interno della directory /var/www/di/
File preseed.cfg:
Referimenti
Compliazione dei file di preseed
capistrano
capistrano è un progetto in ruby per automatizzare il deployment di applicazioni rails, ma si presta molto bene ad eseguire degli script di configurazione post-installazione.