Clonezilla Serveur
Clonezilla Serveur
Clonezilla Serveur
I Introduction
II Configurations de test
III Installation du serveur DRBL
IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL
VI Fonctionnement simultané des serveurs SE3, Clonezilla et LTSP
VII Documentation - License – Auteurs- Remerciements
VIII Compléments
I Introduction:
Le serveur Clonezilla est en fait un composant d'un serveur DRBL (différent en terme de gestion et de
fonctionnalités d'un serveur LTSP). La différence essentielle entre les serveurs LTSP et DRBL réside dans le fait qu'ils
ne s'adressent pas aux mêmes clients (lire le paragraphe V à ce propos.).
I Introduction II Configurations de test III Installation du serveur DRBL IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL VI Fonctionnement simultané des VII Documentation - License – VIII Compléments
serveurs SE3, Clonezilla et LTSP Auteurs- Remerciements
II Configurations de test
Toutes les machines sont virtuelles (VirtualBox sur Kubuntu704) sauf pour quelques clients XP (sauvegarde et
restauration de clients « réels » dans un serveur Clonezilla « virtuel ») et sauf pour un serveur DRBL qui était dans
Xen.
Le DHCP du SE3 était désactivé lors des premiers tests mais ensuite il était activé conjointement au DHCP du serveur
Clonezilla (voir VI).
I Introduction II Configurations de test III Installation du serveur DRBL IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL VI Fonctionnement simultané des VII Documentation - License – VIII Compléments
serveurs SE3, Clonezilla et LTSP Auteurs- Remerciements
wget http://drbl.sourceforge.net/GPG-KEY-DRBL
apt-key add GPG-KEY-DRBL
apt-get update
apt-get install drbl
/opt/drbl/sbin/drblsrv -i
A la première question on valide Non (choix par défaut) car on ne souhaite pas installer de machines Linux par DRBL
donc inutile de télécharger les 200 Mo des images de boot d'installation réseau des différentes distributions Linux
Debian, Ubuntu, Redhat, Fedora core, Mandriva et OpenSuse.
Pour toutes les questions suivantes on valide les choix par défaut. Il y aura téléchargement de paquets, installation d'un
serveur dhcp3 sur le DRBL puis de nouveau téléchargement d'autres paquets.
/opt/drbl/sbin/drblpush -i
(Si vous n'avez pas deux cartes réseaux configurées sur le serveur le script s'arrêtera en vous signalant l'absence de la
seconde carte. Il suffira de configurer une seconde carte, par exemple une carte virtuelle eth0:0, et de relancer
/opt/drbl/sbin/drblpush -i).
On vous demande de renseigner le nom de domaine DNS, le nom de domain NIS/YP, le préfixe du nom des clients, de
choisir la carte réseau destinée à l'accès wan, de collecter éventuellement automatiquement les adresses MAC des
clients (cela suppose de les booter), etc... Ces nombreuses questions sont toutes accompagnées d'un commentaire
explicite. Vous pouvez valider par défaut les choix proposés SAUF à la question « Which mode do you prefer ? for
diskless linux services », répondre 2 (I do not want to provide diskless linux service to client) car ici on se contente
d'utiliser le serveur DRBL en serveur Clonezilla. (Ce choix pourra être modifié ultérieurement avec /opt/drbl/sbin/dcs
en cochant la case « More modes or commands »).
A la question suivante « Which mode do you prefer ? for clonezilla », valider le choix par défaut 0 (Full Clonezilla
mode).
La question suivante est importante car elle permet de définir le dossier sur le serveur qui contiendra les images des
partitions ou disques durs (par défaut /home/partimag).
Validez les choix par défaut qui sont proposés. Le script opère et son mode verbeux permet de suivre dans la console les
opérations effectuées. Une fois que le script est terminé votre serveur Clonezilla est disponible.
Remarques:
➢ La commande /opt/drbl/sbin/drblpush sans paramètre donne les différentes options. Il est possible en
particulier d'utiliser un fichier de configuration.
➢ Si vous choisissez d'adresser un grand nombre de clients (par défaut c'est 12) la création automatique des clefs
ssh des clients sera un peu longue.
➢ Si des paquets plus récents sont installés sur le serveur après cette étape, il faudra relancer
"/opt/drbl/sbin/drblpush -i" ou "/opt/drbl/sbin/drblpush -c /etc/drbl/drblpush.conf" (Cela chargera les
paramètres sauvegardés auparavant), afin que les nouveaux paquets soient fournis aux clients.
➢ L'installation et la configuration se font de la même manière sur une debian Sarge ou Etch. J'ai utilisé une
Kubuntu704 ou une Etch basique (sans serveur X et avec une seule carte réseau)
➢ A l'issue de cette étape le /etc/dhcp3/dhcpd.conf est généré par DRLB, ainsi que les fichiers de configuration
qui sont créés dans /etc/drbl (ils sont intéressants à lire en particulier dans le cas ou l'on a demandé la collecte
des adresses MAC et une IP fixe correspondante).
I Introduction II Configurations de test III Installation du serveur DRBL IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL VI Fonctionnement simultané des VII Documentation - License – VIII Compléments
serveurs SE3, Clonezilla et LTSP Auteurs- Remerciements
Mode graphique:
La commande /opt/drbl/sbin/dcs permet de définir graphiquement (mode texte/graphique) des actions à effectuer sur
les clients:
Remarque: attention à la dernière option ''select-in-client''. Le (ou les) ordinateur pour lequel vous choisirez cette option
proposera lors de son boot une option de lancement de Clonezilla pour faire une sauvegarde ou une restauration. Si
l'utilisateur choisit de faire une sauvegarde cela n'est pas gênant mais s'il choisit de faire une restauration il aura accès à
la liste des sauvegardes disponibles sur le serveur et par conséquent pourra restaurer une image ne correspondant pas à
la machine cliente.
Exemple n°1: Comment sauvegarder l'image d'un ordinateur et la restaurer sur d'autres ordinateurs ?
Remarque: une fois l'image réalisée tant que le paramétrage de Clonezilla n'est pas modifié pour cet ordinateur,
au reboot un petit menu proposera soit de démarrer la configuration locale (par défaut), soit de faire un test de
mémoire, et au bout de quelques secondes l'ordinateur démarrera normalement.
Pour cela, dans le serveur clonezilla, exécuter /opt/drbl/sbin/dcs, choisir "clonezilla-start" (utiliser la barre
d'espace) puis choisissez "restore-disk" et choisissez comme image à restaurer celle qui a été créé
précédemment.
4. Faire en sorte que les ordinateurs qui doivent recevoir l'image créée bootent à partir du réseau.
5. Une fois leur séquence de démarrage achevée, les clients commenceront à cloner l'image choisie sur leur
disque dur.
6. Quand tous les les clients sont clonés, vous pouvez arrêter clonezilla avec /opt/drbl/sbin/dcs et choix de
« clonezilla-stop ».
Exemple n°2: Comment programmer différentes actions pour différentes machines?
Puis:
On remarque qu'il est possible de créer des fichiers de groupe d'adresses IP ou MAC, ce qui peut s'avérer très
utile. Puis:
3. Dès qu'un l'ordinateur démarrera l'action Clonezilla programmée spécifiquement pour cet ordinateur
s'executera. Ensuite tant que le paramétrage de Clonezilla n'est pas modifié pour cet ordinateur, lors des
démarrages suivant un petit menu proposera soit de démarrer la configuration locale (par défaut), soit de faire
un test de mémoire, et au bout de quelques secondes l'ordinateur démarrera normalement.
Remarques:
- une fois une action Clonezilla terminée elle est enregistrée dans /var/lo/clonezilla-jobs.log
- Clonezilla donne très souvent des informations utiles à l'administrateur au moment opportun. Ainsi suite à la
programmation (comme dans l'exemple ci-dessus) d'une action Clonezilla spécifique à un ordinateur voici ce qui est
retourné:
On a donc en vert la ligne de commande correspondant à l'action Clonezilla programmée.
Décryptons cette commande:
Il sera donc possible de lancer directement cette commande pour éviter d'avoir à passer par le menu texte/graphique.
/opt/drbl/sbin/drbl-ocs
Usage:
DEMARRAGE de CLONEZILLA:
OPTIONS de RESTAURATION:
-g, --grubinstall GRUB_PARTITION Install grub in hda with root grub directory in GRUB_PARTITION when restoration
finishs, GRUB_PARTITION can be one of "/dev/hda1", "/dev/hda2"... or "auto" ("auto" will clonezilla detects the grub root
partition automatically)
-r, --resize-partition Resize the partition when restoration finishes, this will try to fix the problem when small partition image is
restored to larger partition. Now support partition with filesystem reiserfs, fat, ext2 and ext3. Warning!!! Use this carefully...
Backup your data first
-k, --no-fdisk, --no-create-partition Do NOT create partition in target harddisk. If this option is set, you must make sure there is
an existing partition table in the current restored harddisk. Default is Yes
-t, --no-restore-mbr Do NOT restore the MBR (Mater Boot Record) when restoring image. If this option is set, you must make
sure there is an existing MBR in the current restored harddisk. Default is Yes
-e, --load-geometry Force to use the saved CHS (cylinders, heads, sectors) when using sfdisk
-y, -y0, --always-restore, --always-restore-default-local Let DRBL server as restore server, i.e. client will always has restore
mode to choose (However default mode in PXE menu is local boot)
-y1, --always-restore-default-clone Let DRBL server as restore server, i.e. client will always has restore mode to choose (The
default mode in PXE menu is clone, so if client boots, it will enter clone always, i.e. clone forever)
--time-to-wait TIME Even when the necessary amount of clients do have connected, still wait until TIME seconds since first
client connection have passed
--clients-to-wait NUMBER Automatically start as soon as a minimal number of clients NUMBER have connected
--max-time-to-wait TIME When not enough clients have connected (but at least one), start anyways when TIME seconds since
first client connection have pased. This option is used with –clients-to-wait
-x, --full-duplex Use full-duplex network with udpcast in multicast mode (faster, but does not work with network hub, only
works in switch.).
-j, --create-part-by-sfdisk Use sfdisk to create partition table instead of using dd to dump the partition table from saved image
(This is default)
-j0, --create-part-by-dd Use dd to dump the partition table from saved image instead of sfdisk
-hn0 PREFIX Change the hostname of M$ Windows based on the combination of hostname prefix and IP address, i.e. PREFIX-
IP
-hn1 PREFIX Change the hostname of M$ Windows based on the combination of hostname prefix and NIC MAC address, i.e.
PREFIX-MAC
OPTIONS de SAUVEGARDE:
-z0, --no-compress Don't compress when saving: very fast but very big image file (NOT compatible with multicast restoring!!!)
-z1, --gzip-compress Compress using gzip when saving: fast and small image file (default)
-z2, --bz2-compress Compress using bzip2 when saving: slow but smallest image file
-z3, --lzo-compress Compress using lzop when saving: similar to the size by gzip, but faster than gzip.
-i, --image-size SIZE Set the split image file volume size SIZE (MB). Only works with partimage now
-q, --use-ntfsclone If the partition to be saved is NTFS, use program ntfsclone instead of partimage
OPTIONS GENERALES:
-b, --batch Run drbl-ocs in batch mode, i.e. without any prompt or wait to press enter
--debug=LEVEL Output the partimage debug log in directory /var/log/ with debug LEVEL (0,1,2... default=0)
-h, --hosts IP_LIST Instead of all DRBL clients, assign the clients by IP address, like: -h "192.168.0.1 192.168.0.2" NOTE!!! You
must put " " before and after the IP_LIST!
-m, --module MODULE Force to load kernel module MODULE, this is useful when some SCSI device is not detected.
-n, --no-nfs-restart Do not to restart nfs when start or stop drbl-ocs (This is default)
-f, --nfs-restart Restart nfs when start or stop drbl-ocs (Default is to restart nfs)
-p, --postaction [poweroff|reboot|command] When save/restoration finishs, poweroff, reboot (default) or enter command prompt
-o, --run-post-dir Run the script in the direcoty /opt/drbl/share/ocs/postrun when clone is finished. The command will be run
before that assigned in -p or –postaction.
-mp, --mount-point MOUNT_POINT specify the other ocsroot directory instead of /home/partimag
--mcast-iface PORT Specify the multicast seed ethernet port PORT (eth0, eth1, eth2...). Suppose clonezilla will try to find that for
you, but in some case, you might want to specify that.
ARRET DE CLONEZILLA:
/opt/drbl/sbin/drbl-ocs stop
I Introduction II Configurations de test III Installation du serveur DRBL IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL VI Fonctionnement simultané des VII Documentation - License – VIII Compléments
serveurs SE3, Clonezilla et LTSP Auteurs- Remerciements
A la différence de LTSP, DRBL utilise et rend possible un accès total aux ressources matérielles locales (si
elles existent). Le serveur DRBL permet de paramétrer les options de démarrage pour les clients (en cases à cocher dans
un menu texte/graphique) afin qu'au boot:
La différence essentielle entre LTSP et DRBL est que LTSP utilise les ressources du serveur (qui doit donc être
« puissant ») alors que DRBL s'appuie sur les ressources matérielles du client (ce qui exclut les anciennes machines
avec seulement 64 Mo de RAM). Je me suis amusé à tester des clients virtuels légers (pas de disque dur et 128 Mo de
RAM) avec DRBL, et à l'utilisation cela n'est pas fonctionnel ou ergonomique. En résumé LTSP nécessite un serveur
« musclé » et des clients légers anciens fonctionnent bien alors que DRBL s'adresse lui à des clients plus puissants.
Sur le site de DRBL: What are the differences between DRBL et LTSP?
I Introduction II Configurations de test III Installation du serveur DRBL IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL VI Fonctionnement simultané des VII Documentation - License – VIII Compléments
serveurs SE3, Clonezilla et LTSP Auteurs- Remerciements
- déclarer les adresses MAC des clients qui seront gérés par le LTSP dans le dhcpd.conf du SE3
- déclarer adresses MAC des clients qui seront gérés par le Clonezilla/DRBL dans le dhcpd.conf du serveur
Clonezilla/DRBL.
Exemples concrets:
le dhcpd.conf du se3:
################################################################################
# This File is automagically created by SE3 interface
# déclaration des clients gérés par le LTSP qui a pour IP 192.168.1.11 sur le LAN SE3
group {
next-server 192.168.1.11;
host clientleger1 { hardware ethernet 08:00:27:00:00:04; fixed-address 192.168.1.51; }
host clientleger2 { hardware ethernet 08:00:27:00:00:05; fixed-address 192.168.1.52; }
host clientleger3 { hardware ethernet 08:00:27:00:00:06; fixed-address 192.168.1.53; }
------------------
dhcpd.conf du Clonezilla:
# Generated by DRBL.
# Do NOT modify this file unless you know what you are doing!
default-lease-time 300;
max-lease-time 300;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.1.1;
option domain-name "drbl.sf.net";
ddns-update-style none;
server-name drbl;
filename = "pxelinux.0";
## Uncomment the following "if block" when you have some buggy PXE NIC card (such as annoying sis900 NIC). Remember to
modify the MAC vendor prefix and restart dhcpd service!!!
## This is a workround for some network card with BAD PXE code in firmware.
## It will only affect those clients with MAC vendor prefix you assigned.
## Ref: http://syslinux.zytor.com/archives/2005-August/005640.html
host fifietch1-013 {
hardware ethernet 08:00:27:00:00:01;
fixed-address 192.168.2.13;
# option host-name "fifietch1-013";
}
host fifietch1-014 {
hardware ethernet 08:00:27:00:00:02;
fixed-address 192.168.2.14;
# option host-name "fifietch1-014";
}
host fifietch1-015 {
hardware ethernet 08:00:27:00:00:03;
fixed-address 192.168.2.15;
# option host-name "fifietch1-015";
}
}
a) l'adresse MAC du client n'est pas déclarée dans les dhcpd.conf des serveurs SE3 et Clonezilla,
alors au démarrage le client va avoir l'affichage du menu DRBL restreint et passe en boot “OS local” avec récupération
d' une IP par le DHCP du SE3.
b) l'adresse MAC est déclarée dans le dhcpd.conf du serveur SE3 comme étant client du LSTP,
alors au démarrage le client va être un client léger LTSP avec l'adresse IP définie dans le dhcpd.conf du SE3.
I Introduction II Configurations de test III Installation du serveur DRBL IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL VI Fonctionnement simultané des VII Documentation - License – VIII Compléments
serveurs SE3, Clonezilla et LTSP Auteurs- Remerciements
VII Documentation-License-Auteurs-Remerciement
⧫ License
Toute personne est autorisée à copier et distribuer des copies de ce document sous les termes de la licence GNU FDL.
Ce document est principalement destiné à servir de référence ou d’outil pédagogique. L'auteur décline toute
responsabilité quant aux dommages éventuels causés par l'utilisation de ce document.
⧫ Auteurs
Philippe Peter – (philippe.peter_at_tice.ac-caen.fr)
⧫ Remerciements
Au mauvais temps qui a sévi pendant l'été 2007, sans lequel ce document n'aurait pas vu le jour ... aussi rapidement :-)
I Introduction II Configurations de test III Installation du serveur DRBL IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL VI Fonctionnement simultané des VII Documentation - License – VIII Compléments
serveurs SE3, Clonezilla et LTSP Auteurs- Remerciements
VIII Compléments
Sur un poste Windows, il est possible de créer un serveur virtuel Etch/Clonezila/DRBL dans VirtualBox qui
permettra de sauvegarder/restaurer de véritables clients du réseau sur le poste. C'est assez époustouflant.
Il est aussi très intéressant d'utiliser Xen (voir quelques lignes plus bas).
Il ne faut pas envisager d'installer LTSP et DRBL sur la même machine. En effet lors de l'installation de l'un ou
l'autre les fichiers suivants sont modifiés: /etc/defaul/tftpd-hpa, /etc/exports, etc... Ainsi suite à l'installation de DRBL
sur une machine qui hébergeait LSTP, le service LSTP ne fonctionne plus. Et si on désinstalle DRBL
(/opt/drbl/sbin/drblsrv -u) alors a lieu la suppression de LTSP.
La solution la plus performante consiste à utiliser une machine récente d'y installer Kubuntu704, LTSP et Xen,
de créer une machine virtuelle Etch dans Xen et d'en faire un serveur Clonezilla/DRBL. Cela est facile à réaliser et c'est
impressionnant.
Il peut être utile de disposer d'un CD ou DVD Clonezilla Live contenant une ou plusieurs images. Pour cela il faut
utiliser la commande:
/opt/drbl/sbin/ocs-iso
La création du fichier iso Clonezilla Live contenant une image à restaurer (nommée fifi-image pour l'exemple) se fera
ainsi:
Sur un serveur DRBL/Clonezilla, les images sont normalement dans /home/partimag (sauf si vous avez choisi, lors de
l'installation du serveur, un autre dossier).
Attention: lors du premier lancement de cette commande le script cherche à télécharger le fichier debian-live-for-ocs.iso
puis le fichier unifont.bgf depuis le site http://free.nchc.org.tw auquel je n'ai jamais pu accéder. Il est possible de
télécharger les deux fichiers depuis http://ftp.twaren.net/local-distfiles/clonezilla-live/ Il faudra ensuite placer ces deux
fichiers dans le dossier hébergeant les images.
Remarques:
(1) si vous vouliez inclure aussi l'image fifi2-image il aurait fallu faire: /opt/drbl/sbin/ocs-iso fifi-image fifi2-
image
(2) en raison des limitations imposées par mkisofs il n'est pas possible de gérer avec ocs-iso des images d'une
taille supérieure à 4,5 Go.
(4) Si vous souhaitez que l'iso inclut des paramétres de configuration, tel que que le type de clavier, vous pouvez
faire:
Une fois le CD/DVD gravé, si vous démarrez une machine avec, alors l'action de restauration de l'image fifi-
image sur le disque dur hda s'effectuera. Cette action se fera en mode batch (-t) donc avec un minimum de
questions, en environnement anglais (- g en) , sans modification du type de clavier (-k NONE) et ocs-sr
s'exécutera avec les paramètres "-b -c restoredisk fifi-image hda".
(5) Si votre serveur Clonezilla comporte un graveur de CD/DVD il est possible de graver directement le CD
Clonezilla avec /opt/drbl/sbin/ocs-iso -f /dev/hdc fifi-image /dev/hdc étant le graveur de CD.
remarques:
- il faudra faire un apt-get install cdrecord si la commande ci-dessus retourne un cdrecord non trouvé
- dans VirtualBox 1.4 le support de gravure depuis le graveur de l'hôte est considéré comme expérimental mais
fonctionne sur ma machine. Pour l'activer faire sur l'hôte VBoxManage modifyvm nom_machine_virtuelle
-dvdpassthrough on
(6) Il est possible d'écrire un script, nommé par exemple «custom-ocs » pour personnaliser les actions proposées
lors du démarrage. Un modèle de script est disponible dans /opt/drbl/samples/custom-ocs (avec le CD
Clonezilla Live ou le serveur DRBL) qui permet à l'utilisateur de Clonezilla Live de choisir:
/opt/drbl/sbin/ocs-iso -g en -k NONE -s -m ./custom-ocs pour créer une image iso pour CD/DVD
Création d'une clef USB Clonezilla Live à partir d'un serveur Clonezilla
Brancher votre clef usb sur votre serveur Clonezilla et attendre quelques secondes. Ensuite exécuter dmesg pour
connaître le nom de périphérique de la cle USB. Imaginons que cela soit /dev/sdb1. Si GNU/Linux a monté votre clef
automatiquement il faut la démonter avec unmount /dev/sdb1 par exemple.
Formater la clef USB avec par exemple avec mkfs.vfat -F 32 /dev/sdb1 ou mkfs.ext3 /dev/sdb1.
ATTENTION!!! La commande précédente va supprimer toutes les données se trouvant sur la clef USB.
ATTENTION!!! Soyez certain que le nom de périphérique de votre clef USB est bon car en cas d'erreur vous pourriez
perdre des données sur votre serveur DRBL/Clonezilla.
Vous disposez désormais d'une clef USB Clonezilla Live bootable !
Pour plus d'informations sur les paramètres de ocs-live-dev faire /opt/drbl/sbin/ocs-live-dev –help
I Introduction II Configurations de test III Installation du serveur DRBL IV Utilisation du serveur Clonezilla
V Différences entre LTSP et DRBL VI Fonctionnement simultané des VII Documentation - License – VIII Compléments
serveurs SE3, Clonezilla et LTSP Auteurs- Remerciements