BxLUG groupe des utilisateurs de GNU/Linux de Bruxelles

Espace membres

Pratique: Rsync pour dupliquer

Lors d'une première installation de 15 postes dans un centre de formation en Debian. On avait remarqué que des postes n'était pas, disons, 'clean' dans le sens ou tous les postes devaient avoir une configuration identique.

Pour cela deux méthodes étaient possibles pour unifier les postes:

1. Soit utiliser la méthode de duplication de disque dur

Cette méthode consiste à dupliquer l'intégralité du disque dur modèle vers un autre.
Pour ceux qui viennent du monde Windows cela pourrait être comparé à un Ghost de dique dur à disque dur.

Voir la man de la commande dd

Point fort :

Point faible :

2. Soit de mettre en place le système Rsync

C'est par cette méthode qui serait plus facile à utiliser à long terme pour effectuer le 'nettoyage' des postes après chaque utilisation des locaux.

Point fort :

Point faible :

Aspects techniques

Sources

Méthode

apt-get install rsync

Downloader le fichier de configuration déjà préparé par les bons soins de Jérôme Warnier.

ftp://mail.mm.be/outgoing/bxlug/replicator/rsyncd.conf

Sur le poste qui sert de modèle, modifier dans /etc/rsyncd.conf la plage d'adresse IP pour qu'elle corresponde à celle de votre réseau, dans notre cas, une classe C:

 host_allow= 192.168.3.0/255.255.255.0

Ensuite /etc/default/rsync, modifier la ligne suivante:

 RSYNC_ENABLE=TRUE 

Sur un des postes qui doit être "dupliqué", on doit au préalable copier les fichiers qui sont au nombre de 5:

ex  ex-home  ex-usr  ex-var  repli

Les fichiers de configuration

le fichier ex

- /etc/my
- /etc/network/interfaces
- /etc/.rootkey
- /etc/adjtime
- /etc/isapnp.conf
- /etc/minirc*
- /etc/gpm.conf
- /etc/fstab
- /etc/lilo.conf
- /etc/hostname
- /etc/hosts
- /etc/aboot.conf
- /etc/exports
- /etc/fmirror
- /etc/squid.conf
- /etc/chatscripts/*
- /etc/init.d/network
- /etc/ppp/*
- /etc/ssh/ssh_host_*key*
- /etc/ssh/ssh_random_seed
- /etc/rmtab
- /etc/mtab
- /etc/X11/XF86Config*
- /etc/X11/Xserver
- /etc/ioctl.save
- /etc/mon/
- /etc/ssh2/hostkey
- *.cfsaved
- *.dpkg-old
- /tmp/*
- /var
- /usr
- /bigpart
- /*old*
- /cdrom/*
- /local
- /localhd
- /fatboot
- /home*
- /proc/*
- /tchich
- /ramdisk/
- /linuxppc/
- /oldexports/
- /amd/
- /tftpboot/
- /*mnt*/*
- /floppy/*
- /export*/
- /exports/*
- /opt*
- /net*
- /vol*
- /ufs*
- /lost+found/
- /etc/replicator/repli-sync.conf
- /dev
- /root

le fichier ex-home

# vide, rien de spécifique

le fichier ex-usr

# vide, rien de spécifique

le fichier ex-var

- tmp/

le fichier repli

#! /bin/sh
# Mettre l'adresse du poste modèle
MODEL=192.168.3.170
EX_DIR=/usr/local/configrsync/

rsync --archive  --hard-links --sparse --whole-file --delete -v \
        --one-file-system --exclude-from=$EX_DIR/ex $MODEL:/ /

rsync --archive  --hard-links --sparse --whole-file --delete -v \
        --one-file-system --exclude-from=$EX_DIR/ex-usr $MODEL:/usr/ /usr/

rsync --archive  --hard-links --sparse --whole-file --delete -v \
        --one-file-system --exclude-from=$EX_DIR/ex-var $MODEL:/var/ /var/

rsync --archive  --hard-links --sparse --whole-file --delete -v \
        --one-file-system --exclude-from=$EX_DIR/ex-home $MODEL:/home/ /home/

Veillez quand même à ce que Rsync et SSH soient également installés sur les postes à répliquer :)

apt-get install rsync
apt-get install ssh 

Par exemple, sur le poste X avec l'adresse IP 192.168.3.171

scp  -r 192.168.3.170:/usr/local/configrsync /usr/local/

Et enfin, roulement de tambours, sur le poste X, lancer le script ./repli dans le répertoire /usr/local/configrsync

Et top chrono !!!

Ash

Bienvenue dans le monde du libre