Loading ...
[Plus récent] [Plus ancien] [Meilleur rang] [Mauvais rang]

PCR Postit

Linux

::

Installation d'ubuntu gutsy LiveCD en réseau (netinstall ou netboot)

[Trackback]
Date : 2007-10-20@21:25:23
Rang : 0

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 a chercher comment installer par réseau cette distrib. 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 insipré 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 un serveur à travers le réseau.

Pour cela on a besoin de pas mal de chose
- un serveur dhcp pour permettre au bios d'acceder 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)
sudo vi /etc/default/tftpd-hpa

#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -c -u pcr -s /var/lib/tftpboot

sudo chown pcr:pcr /var/lib/tftpboot/ -R

sudo chmod 1777 /var/lib/tftpboot/

On redemarre le serveur
sudo /etc/init.d/tftpd-hpa restart

Test du serveur tftp sur une autre machine que le serveur
touch toto
tftp 192.168.0.1
tftp> put toto

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

------------------------------------
Préparation des fichiers de boot pxe
------------------------------------

cd /var/lib/tftpboot/

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

wget http://archive.ubuntu.com/ubuntu/dists/gutsy/main/installer-i386/current/images/netboot/netboot.tar.gz

On décompresse le fichier

tar -xvzf netboot.tar.gz

On monte l'image du liveCD d'installation ubuntu Desktop
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/
cp /media/cdrom0/casper/vmlinuz .
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

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 http://doc.ubuntu-fr.org/nfs)

sudo apt-get install nfs-kernel-server

On partage le cdrom pour l'installation

sudo vi /etc/exports
/media/cdrom0 192.168.0.0/24(ro,async)

On redemarre le serveur NFS

sudo vi /etc/init.d/nfs-kernel-server restart

----------------------------
Installation du serveur dhcp
----------------------------
(plus d'informations http://doc.ubuntu-fr.org/dhcp3-server)

sudo apt-get install dhcp3-server

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
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'ecouter sur la bonne interface
sudo vi /etc/default/dhcp3-server

INTERFACES="eth1 eth2"

on redemarre l'interface réseau et le serveur dhcp
sudo /etc/init.d/networking restart
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 confifuration du fichier pxelinux.cfg/default)

Ensuite installez votre ubuntu comme depuis le liveCD