reseau

Installation d'ubuntu avec le LiveCD en réseau

Ou commment installer une ubuntu en mode graphique avec une netboot et netinstall

live cd pxe, ubuntu live cd, ubuntu installation reseau, netboot ubuntu, installer ubuntu reseau, installation ubuntu par reseau, netboot livecd, ubuntu pxe netinstall, pedopanda, bootp iso

Date de publication : 2008-12-13

J'en avait marre de graver des cd d'ubuntu (ayant un PC sous xubuntu et deux sous kubuntu) alors avec la sortie de gutsy je me suis mis à chercher comment installer par réseau cette distribution. J'ai tester le netboot tout court mais ça n'a pas marcher sur mon portable car il n'a pas réussi à trouver internet.

Je me suis inspiré en grande partie des pages suivantes :
https://help.ubuntu.com/community/Installation/LocalNet?highlight=%28install%29%7C%28net%29
http://doc.ubuntu-fr.org/netboot

La méthode si dessous permet d'installer les versions d'ubuntu comme depuis un liveCD d'installation (Ubuntu desktop), mais depuis à travers le réseau.

Pour cela on a besoin de pas mal de chose :
- un serveur dhcp pour permettre au bios d'accéder au reseau
- un serveur tfptd-hpa qui permet au bios d'aller chercher l'image du noyau pour booter
- les fichiers pxe permettent au bios de savoir comment booter
- nfs pour permettre au noyau d'aller chercher les fichier du liveCD

Configuration de mon réseau :


[serveur@192.168.0.1](eth0)----[pc à installer@dhcp]

Installation tfptd-hpa :


sudo apt-get install tftpd-hpa

Confifuration tfptd-hpa (mon utilisateur par default est pcr à vous d'adapter) :


pcr@home:~$ sudo vi /etc/default/tftpd-hpa
#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -c -u pcr -s /var/lib/tftpboot
pcr@home:~$ sudo chown pcr:pcr /var/lib/tftpboot/ -R
pcr@home:~$ sudo chmod 1777 /var/lib/tftpboot/

On redémarre le serveur :


sudo /etc/init.d/tftpd-hpa restart

Test du serveur tftp sur une autre machine que le serveur :


pcr@home:~$ touch toto
pcr@home:~$ tftp 192.168.0.1
pcr@home:~$ tftp> put toto

Sur le serveur on doit retrouver le fichier toto dans /var/lib/tftpboot/

Préparation des fichiers de boot pxe :


pcr@home:~$ cd /var/lib/tftpboot/

On récupère le fichier netboot de l'ubuntu :


pcr@home:~$ wget http://archive.ubuntu.com/ubuntu/dists/gutsy/main/installer-i386/current/images/netboot/netboot.tar.gz

On décompresse le fichier :


pcr@home:~$ tar -xvzf netboot.tar.gz

On monte l'image du liveCD d'installation ubuntu Desktop :


pcr@home:~$ sudo mount -o loop -t iso9660 /path/to/ubuntu-7.10-desktop-i386.iso /media/cdrom0/

On copie le noyau du liveCD pour le boot distant dans le repertoire /var/lib/tftpboot/


pcr@home:~$ cp /media/cdrom0/casper/vmlinuz .
pcr@home:~$ cp /media/cdrom0/casper/initrd.gz .

On ajoute le boot depuis le l'image CD par le biais du le serveur NFS à la configuration pxe :


pcr@home:~$ vi pxelinux.cfg/default
LABEL LiveCD
kernel vmlinuz
append initrd=initrd.gz boot=casper netboot=nfs nfsroot=192.168.0.1:/media/cdrom0

Installation du serveur nfs
plus d'information sur le nfs


pcr@home:~$ sudo apt-get install nfs-kernel-server

On partage le cdrom pour l'installation :


sudo vi /etc/exports
pcr@home:~$ /media/cdrom0 192.168.0.0/24(ro,async)

On redémarre le serveur NFS :


pcr@home:~$ sudo vi /etc/init.d/nfs-kernel-server restart

Installation du serveur dhcp
plus d'information sur le dhcp


pcr@home:~$ sudo apt-get install dhcp3-server
pcr@home:~$ sudo vi /etc/dhcp3/dhcpd.conf
#DNS
ddns-update-style none;
option domain-name-servers 212.27.53.252,212.27.54.252;
option domain-name "example.org";
#Baux DHCP
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
#reseau
subnet 192.168.0.0 netmask 255.255.255.0 {
option broadcast-address 192.168.0.255;
option routers 192.168.0.1;
range 192.168.0.6 192.168.0.8;
filename "pxelinux.0";
next-server 192.168.0.1;
ping-check = 1;
}
#on autorise le boot distant
allow bootp;
allow booting;

On configure l'interface du serveur dhcp en static :


pcr@home:~$ sudo vi /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.0.1
netmask 255.255.255.0
broadcast 192.168.0.255
network 192.168.0.0
gateway 192.168.10.254

On dit au serveur DHCP d'écouter sur la bonne interface :


pcr@home:~$ sudo vi /etc/default/dhcp3-server
INTERFACES="eth0"

On redemarre l'interface réseau et le serveur dhcp :


pcr@home:~$ sudo /etc/init.d/networking restart
pcr@home:~$ sudo /etc/init.d/dhcp3-server restart

Installation sur l'ordinateur client
On boot le pc client en pxe depuis le bios ou depuis une disquette Etherboot. Au prompt "boot: " saisir LiveCD (le label de la configuration du fichier pxelinux.cfg/default).
Ensuite installez votre ubuntu comme depuis le liveCD

Image : ivanx

 
 

b1n@sp1n