Outils pour utilisateurs

Outils du site


gnu:clonage

Clonage de machine GNU/linux

Solution liveCD

Quand on a le temps ou une multitude de configuration différentes

  1. Faire une image iso pour CD ou DVD avec remastersys
  2. Utiliser cette image pour la déposer sur une cléUSB avec unetbootin voir multisystem ;-)
  3. Prendre le CD ou la clé et passer sur chaque machine

Solution réseau

Quand on veut optimiser le déploiement à travers une réseau grâce à un serveur d'image.

Idée de cloner sa propre machine

  1. Passer par un remastersys pour faire un joli iso
  2. le poser sur un répertoire de tftpboot pour l'offrir au boot réseau PXE, ce qui fonctionne avec grub2

il y a la solution clonezilla/drbl mais nous pouvons utiliser un script qui offre un boot PXE sur le reseau local et une image iso ou au moins un systeme de fichier en NFS avec un ubiquity pour l'installation.

liens donnant des pistes:

Nous avons deja grub2, il manque: gru2pxe

cd /usr/lib/grub/i386-pc
grub-mkimage --output=core.img --prefix="(pxe)/boot/grub" --format=i386-pc pxe pxecmd
cat pxeboot.img core.img > grub2pxe
cp grub2pxe /tftpboot
mkdir -p /tftpboot/boot
cp -a /boot/grub /tftpboot
chmod 666 /tftpboot/boot/grub/grub.cfg

dans le /tftpboot/grub/grub.cfg au lieu du reste

menuentry 'Clonezilla' --class ubuntu --class gnu-linux --class gnu --class os {
insmod ext2
insmod iso9660
insmod loopback
loopback loop (pxe)/clonezilla.iso
linux (loop)/live/vmlinuz boot=live union=aufs noswap config nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" video=uvesafb:mode_option=800x600-16 ocs_numlk="on" ip=172.31.0.1 nosplash fetch=tftp://172.31.0.1/tftpboot/iso/clonezilla/live/filesystem.squashfs 
initrd (loop)/live/initrd.img
}

menuentry 'XUB-SNALIS 7d ISO' --class ubuntu --class gnu-linux --class gnu --class os {
insmod iso9660
insmod loopback
loopback loop (pxe)/iso/xub-snalis-7d.iso
linux (loop)/linux
initrd (loop)/initrd.gz
}
apt-get install nfs-kernel-server nfs-common

Clonezilla will run into extreme difficulty if you boot too many systems at once, unless you change the configuration settings for NFS. These settings are stored in the file /etc/default/nfs-kernel-server, the important ones to change are the number of simultaneous NFS processes to use:

# Number of servers to start up
RPCNFSDCOUNT=100

and the number of simultaneous RPC mounts:

RPCMOUNTDOPTS="--manage-gids --num-threads=50"

http://drbl.sourceforge.net/one4all/techrpt.php?c=drbl-SL.sh&t=Load%20Small%20GNU/Linux%20%28DSL,%20PuppyLinux,%20Clonezilla%20live%20or%20GParted%20live%29%20into%20DRBL%20environment

mkdir -p /tftpboot
echo "/tftpboot 172.31.0.0/255.255.0.0(rw,crossmnt,no_subtree_check,async)">> /etc/exportfs
exportfs -a

apt-get install pxe xinetd

clonezilla modification

si on fixe le nom pour un restore automatique

de https://raymii.org/s/software/Clonezilla-custom-backup-script.html et http://clonezilla.org/fine-print-live-doc.php?fullmode=0&path=./clonezilla-live/doc/05_Preseed_options_to_do_job_after_booting/01-preseed-options.doc#01-preseed-options.doc

cd live
sudo unsquashfs -f ./filesystem.squashfs 

faire script dans squashfs-root/scripts/restoredisk.sh

#!/bin/bash
clear
echo "################################"
echo "# SNALIS Clonage               #"
echo "#     Based on Clonezilla      #"
echo "#       fait le 15/01/2013     #"
echo "################################"
echo
for i in 0 1 2 3 4
do
        ifconfig eth$i up
        dhclient eth$i
done
ifconfig | grep "inet addr"
NAME="image-maitre"
echo "Montage NFS "
echo "recherche de " $NAME
echo
mount -t nfs 192.168.1.10:/home/partimag /home/partimag
#clear
echo
if [ ! -f "/home/partimag/ne-pas-effacer" ] ; then
        echo "NFS"
        echo "le serveur 192.168.1.10:/home/partimag "
        echo "n est pas accessible"
        echo "pas de fichier ne-pas-effacer"
        echo "Test avec un montage samba ubuntu/ubuntu sur partimag"
        mount -t cifs -o username="ubuntu",password="ubuntu" //192.168.1.10/partimage /home/partimag
        if [ ! -f "/home/partimag/ne-pas-effacer" ] ; then
                echo "SAMBA"
                echo "Pas de samba non plus"
                echo "sortie"
                exit 1
        fi
fi
cd /home/partimag
pwd
# tentative eject CD avant eteind
echo "ejection CD"
eject

if [ -d "image-maitre" ] ; then
        echo "recuperation de l'image image-maitre"
        echo y | /opt/drbl/sbin/ocs-sr -g auto -e1 auto -e2 -c -r -j2 -k1 -p poweroff restoredisk $NAME sda
else
        echo "il n'y a pas d'image image-maitre sur le serveur NFS"
        echo "ou le serveur 192.168.1.10:/home/partimag "
        echo "n est pas accessible"
        echo "on en fait une :) "
        echo "10s pour stoper par Ctrl-C"
        sleep 10
        echo y | /opt/drbl/sbin/ocs-sr -q2 -c -j2 -rm-win-swap-hib -z1 -i 2000 -p poweroff savedisk $NAME sda
fi

exit 0

copier dans /home/partimage par exemple

label RESTOR
menu label RESTOR
kernel /live/vmlinuz
append initrd=/live/initrd.img boot=live hostname=precise config union=overlayfs quiet noswap nolocales edd=on nomodeset noprompt ocs_live_run="/scripts/restoredisk.sh" ocs_live_extra_param="" ocs_live_keymap="/usr/share/keymaps/i386/azerty/fr-latin9.kmap.gz" ocs_live_batch="yes" ocs_live_keymap=NONE ocs_lang=fr_FR.UTF-8 ocs_numlk="on" ocs_live_batch="no" ocs_lang="" video=uvesafb:mode_option=800x600-16 ip=frommedia  nosplash toram=filesystem.squashfs

refaire le filesystem.squashfs dans /live

cd ../..
rm -f ./filesystem.squashfs
mksquashfs ./squashfs-root ./filesystem.squashfs
rm -rf squashfs-root

refaire l'iso

cd ../..
mkisofs -r -V "Clonezilla SNALIS restore CD" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o clonezilla-snalis.iso clonezilla

ca donne clonezilla-snalis.iso sur http://sourceforge.net/projects/xublivecd/files/?source=navbar

SME avec un thinclient

Apres l'install du paquet smeserver-thinclient, modifier le fichier pxelinux.cfg/default. 1.10 pour par exemple pour le serveur

label clonezilla
menu label clonezilla
kernel /clonezilla/live/vmlinuz
append initrd=/clonezilla/live/initrd.img boot=live union=aufs noswap config nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" video=uvesafb:mode_option=800x600-16 ocs_numlk="on" nosplash fetch=tftp://192.168.1.10/clonezilla/live/filesystem.squashfs live-media-path=/clonezilla
menu end

Dépaquer un iso clonezilla dans /tftpboot/clonezilla

Projet machine de clone

Un projet se monte entre les associations ALIS44 , SNALIS , Le n@utile, et la Fabrique du Libre. Une mini distribution Ubuntu? pour monter sa machine à dépoter du GNU/Linux à la pelle

c'est le livecd drbl :)

echo "deb http://drbl.sourceforge.net/drbl-core drbl stable">>/etc/apt/sources.list
apt-get update
apt-get install drbl
/opt/drbl/sbin/drblsrv -i
/opt/drbl/sbin/drblpush -i

http://ditwww.epfl.ch/SIC/SA/SPIP/Publications/spip.php?article1942

http://wiki.lm7.fr/index.php/Installation_par_le_r%C3%A9seau

Create Recovery Clonezilla http://clonezilla.org/show-live-doc-content.php?topic=clonezilla-live/doc/04_Create_Recovery_Clonezilla

http://restonux.wikispaces.com/documentation+clonezilla

Resultats sur sourceforge

Avec un article sur snalis : http://snalis.org/Un-nouveau-serveur-de-clonage-pour

  1. Image clonezilla du serveur de clone drbl/clonezilla/ : https://sourceforge.net/projects/xublivecd/files/Clonages/
  2. iso du cd de boot clonezilla avec le script de restoration automatique de l'image /home/partimag/image-maitre : https://sourceforge.net/projects/xublivecd/files/Clonages/clonezilla.snalis.iso

le pcloneur est sous debian,

  • Il DOIT posséder 2 cartes réseaux,
    • 1/WAN internet(reseau local), IP venant du dhcp local
    • 1/LAN réseau de clonage , IP = 192.168.66.6
  • root pass = gnu/linux
  • il utilise un NFS et le répertoire /home/partimag y est accessible.
  • il a aussi un samba , pas testé.
  • il offre un slitaz en boot réseau
  • slitaz US est nécessaire pour un usage de gparted, redimentionnement de partition (FR marche pas)
  • UltimateBootCD permet de reformater bas niveau ( et bien plus de choses )

Le cd clonezilla de snalis, offre

  • un clonezilla standard utilsable telquel
  • un script de suvegarde/restoration automatique
    • le serveur 192.168.66.6 est utilisé
    • /home/partimage/image-maitre est faite automatiquement si elle n'existe pas,
    • /home/partimage/image-maitre est restorée automatiquement apres avoir répondu 'y' sur la machine cible
      • le disque comportera une partition redimensionnée (option clonezilla -k1)
gnu/clonage.txt · Dernière modification: 2017/04/11 15:13 (modification externe)