Lab

Linux : migrer un système avec rsync, version moins kamikaze

Une vieille procédure de migration machine à machine remise au goût du jour : rsync oui, PermitRootLogin à l’arrache non. On a évolué, normalement.

· Linux, rsync, migration, sauvegarde

Le vieux besoin

Migrer une machine sans tout réinstaller : garder les services, les configs, les données, et éviter de passer deux jours à se souvenir pourquoi ce serveur était “spécial”. Spoiler : ils le sont tous.

L’ancienne procédure utilisait un LiveCD, SSH root et rsync.

L’idée générale reste bonne. Les pratiques autour doivent être modernisées.

Principe moderne

  1. Démarrer depuis un environnement de secours si nécessaire.
  2. Préparer les partitions sur la cible.
  3. Monter source et destination proprement.
  4. Copier avec rsync en préservant droits, liens, ACL/xattrs si besoin.
  5. Adapter /etc/fstab, bootloader, initramfs.
  6. Tester avant de déclarer victoire devant témoins.

Commande de base

Depuis la cible, vers un point de montage local :

sudo rsync -aAXHv --numeric-ids \
  --exclude=/dev/* \
  --exclude=/proc/* \
  --exclude=/sys/* \
  --exclude=/tmp/* \
  --exclude=/run/* \
  --exclude=/mnt/* \
  --exclude=/media/* \
  --exclude=/lost+found \
  root@source:/ /mnt/cible/

Options utiles :

  • -a archive ;
  • -A ACL ;
  • -X attributs étendus ;
  • -H liens durs ;
  • --numeric-ids garde les UID/GID sans interprétation hasardeuse.

SSH root ?

Éviter d’ouvrir PermitRootLogin yes juste pour faire vite.

Préférer :

  • clé SSH temporaire ;
  • utilisateur d’admin + sudo ;
  • accès réseau isolé ;
  • fermeture immédiate après opération ;
  • journal de ce qui a été fait.

Si root SSH est absolument nécessaire dans un contexte de rescue : le limiter dans le temps et documenter. Le “je remettrai comme avant après” est une fiction littéraire.

Après la copie

À vérifier :

cat /mnt/cible/etc/fstab
lsblk -f
blkid

Puis selon distribution :

arch-chroot /mnt/cible
update-initramfs -u
update-grub

ou équivalents.

Aujourd’hui, on peut aussi choisir autre chose

Selon le cas :

  • snapshot LVM/ZFS/Btrfs ;
  • image disque ;
  • sauvegarde/restauration ;
  • Ansible + données restaurées ;
  • migration VM ;
  • conteneurisation.

Verdict

rsync reste un excellent outil. Mais la migration complète d’un système doit être préparée, testée et réversible. Sinon ce n’est pas une migration : c’est un pari avec une invite de commande.