Pour copier un file system à l’identique, un bon moyen est d’utiliser un tar pipe qui permettra de s’assurer une copie des fichiers avec structure, permissions, hard links, et time stamp…
cd source_mounting_point
tar -cf - . | (cd /target_mounting_point;tar -xf -)
Autre solution : via nc :
1. Créer une vm ou mettre à disposition un serveur physique
2. booter sur un liveCD (systemRescue par exemple)
3. Créer une table des partitions identique
4. formater au même format : mkfs.ext3 / mkswap et cie..
5. monter la partition sur le liveCD : /mnt/xxx
6. lancer la commande sur la destination : cd /mnt/xxx; nc -l -p $PORT | tar xpf –
7. lancer la commande sur la source : cd /; tar cpf – /* –exclude “proc” –exclude “sys” –exclude “dev” | nc $IP_DEST $PORT
8. mkdir /dev /sys et /proc
9. mount –bind /dev /mnt/$DEST/dev (meme chose pour /proc et /sys
10. chroot dans le nouvel environnement
11. grub-install /dev/sda
12. grub-mkconfig >> boot/grub/grub.conf
13. Modifier également les UUID dans le fichier dans /etc/fstab
14. blkid
Via SSH j’utilise cette commande également “le p” pour préserver les droits :
tar cpf – /* –exclude “proc” –exclude “sys” –exclude “dev” | ssh IP_DISTANTE “(cd /target; tar xpf -)”