{"id":36,"date":"2026-01-08T08:42:30","date_gmt":"2026-01-08T07:42:30","guid":{"rendered":"https:\/\/my-tips.ovh\/?p=36"},"modified":"2026-01-08T15:11:47","modified_gmt":"2026-01-08T14:11:47","slug":"migration-serveur-physique-vers-vm-proxmox","status":"publish","type":"post","link":"https:\/\/my-tips.ovh\/?p=36","title":{"rendered":"Migration Serveur Physique vers VM Proxmox"},"content":{"rendered":"<h2>\ud83d\udccb Informations du Serveur Source<\/h2>\n<ul>\n<li>Serveur : serveur physique ( dans mon cas : chez OVH )<\/li>\n<li>OS : Debian xx<\/li>\n<li>Disque : 2 To (1,8 To partition principale + 511 Mo swap)<\/li>\n<li>Utilisation : ~15 Go seulement actuellement<\/li>\n<li>SSH : Port 22<\/li>\n<li>Type de boot : BIOS Legacy<\/li>\n<\/ul>\n<hr \/>\n<h2>\ud83c\udfaf Objectif<\/h2>\n<p>Cloner le serveur physique OVH vers une machine virtuelle Proxmox , en utilisant rsync pour ne transf\u00e9rer que les donn\u00e9es utilis\u00e9es.<\/p>\n<hr \/>\n<h2>\u2705 \u00c9tape 1 : Cr\u00e9ation de la VM sur Proxmox<\/h2>\n<ol>\n<li>Cr\u00e9er une nouvelle VM (ex: VM ID 100)<\/li>\n<li>Configuration :<\/li>\n<li>Disque : 100-200 Go (largement suffisant pour 15 Go de donn\u00e9es)<\/li>\n<li>Type de boot : BIOS<\/li>\n<li>RAM\/CPU : 2 CPU &#8211; 2Go RAM<\/li>\n<li>Attacher une ISO Debian Live<\/li>\n<li>D\u00e9marrer la VM sur le Live CD<\/li>\n<\/ol>\n<hr \/>\n<h2>\ud83d\udd27 \u00c9tape 2 : Pr\u00e9paration du Disque dans la VM<\/h2>\n<p>Dans la console de la VM (Live CD) :<\/p>\n<pre># Cr\u00e9er les partitions<\/pre>\n<pre><code>sudo fdisk \/dev\/sda<\/code><\/pre>\n<pre><code># Commandes : n, p, 1, Entr\u00e9e, +95G, w<\/code><\/pre>\n<pre><code># Puis : n, p, 2, Entr\u00e9e, Entr\u00e9e, t, 2, 82, w<\/code><\/pre>\n<pre><\/pre>\n<pre># Formater les partitions<\/pre>\n<pre>sudo mkfs.ext4 \/dev\/sda1<\/pre>\n<pre>sudo mkswap \/dev\/sda2<\/pre>\n<pre><\/pre>\n<pre># Monter la partition principale<\/pre>\n<pre>sudo mkdir -p \/mnt\/restore<\/pre>\n<pre>sudo mount \/dev\/sda1 \/mnt\/restore<\/pre>\n<pre><\/pre>\n<pre># Installer les outils n\u00e9cessaires<\/pre>\n<pre>sudo apt-get update<\/pre>\n<pre>sudo apt-get install -y rsync pv openssh-client<\/pre>\n<pre><\/pre>\n<hr \/>\n<h2>\ud83d\udce6 \u00c9tape 3 : Synchronisation des Donn\u00e9es avec rsync<\/h2>\n<p>Depuis la VM, r\u00e9cup\u00e9rer les donn\u00e9es du serveur OVH :<\/p>\n<pre># Tester la connexion SSH (port 22 ou autre selon config)<\/pre>\n<pre>ssh user@IP_SERVEUR_OVH<\/pre>\n<pre><\/pre>\n<pre># Lancer la synchronisation rsync<\/pre>\n<pre>cd \/mnt\/restore<\/pre>\n<pre>sudo rsync -aAXvP --delete \\<\/pre>\n<pre>  -e \"ssh -p 22\" \\<\/pre>\n<pre>  --exclude=\/dev\/* \\<\/pre>\n<pre>  --exclude=\/proc\/* \\<\/pre>\n<pre>  --exclude=\/sys\/* \\<\/pre>\n<pre>  --exclude=\/tmp\/* \\<\/pre>\n<pre>  --exclude=\/run\/* \\<\/pre>\n<pre>  --exclude=\/mnt\/* \\<\/pre>\n<pre>  --exclude=\/media\/* \\<\/pre>\n<pre>  --exclude=\/lost+found \\<\/pre>\n<pre>  --exclude=\/var\/cache\/* \\<\/pre>\n<pre>  --exclude=\/var\/tmp\/* \\<\/pre>\n<pre>  user@IP_SERVEUR_OVH:\/ \/mnt\/restore\/<\/pre>\n<pre><\/pre>\n<p>Options rsync utilis\u00e9es :<br \/>\n-a : Mode archive (pr\u00e9serve permissions, liens symboliques, timestamps, etc.)<br \/>\n-A : Pr\u00e9serve les ACLs<br \/>\n-X : Pr\u00e9serve les attributs \u00e9tendus<br \/>\n-v : Mode verbose<br \/>\n-P : Affiche la progression et permet la reprise<br \/>\n&#8211;delete : Synchronise les suppressions &#8211;<br \/>\n-e \u00ab\u00a0ssh -p 22\u00a0\u00bb : Utilise SSH sur le port diff\u00e9rent que 22<\/p>\n<p>&nbsp;<\/p>\n<hr \/>\n<h2>\ud83d\uddc2\ufe0f \u00c9tape 4 : Finalisation du Syst\u00e8me<\/h2>\n<h3>4.1 &#8211; Recr\u00e9er les r\u00e9pertoires syst\u00e8me<\/h3>\n<pre>cd \/mnt\/restore<\/pre>\n<pre>sudo mkdir -p proc sys dev tmp run mnt media<\/pre>\n<pre><\/pre>\n<h3>4.2 &#8211; Configuration du fstab<\/h3>\n<pre># Monter pour le chroot<\/pre>\n<pre>sudo mount --bind \/dev \/mnt\/restore\/dev<\/pre>\n<pre>sudo mount --bind \/proc \/mnt\/restore\/proc<\/pre>\n<pre>sudo mount --bind \/sys \/mnt\/restore\/sys<\/pre>\n<pre><\/pre>\n<pre># Entrer dans le syst\u00e8me clon\u00e9<\/pre>\n<pre>sudo chroot \/mnt\/restore<\/pre>\n<pre><\/pre>\n<pre># R\u00e9cup\u00e9rer les UUID des partitions<\/pre>\n<pre>blkid \/dev\/sda1<\/pre>\n<pre>blkid \/dev\/sda2<\/pre>\n<pre><\/pre>\n<pre># \u00c9diter le fstab<\/pre>\n<pre>nano \/etc\/fstab<\/pre>\n<pre><\/pre>\n<p>Contenu du \/etc\/fstab :<\/p>\n<pre>UUID=VOTRE_UUID_SDA1  \/     ext4  errors=remount-ro  0  1<\/pre>\n<pre>UUID=VOTRE_UUID_SDA2  none  swap  sw                 0  0<\/pre>\n<pre><\/pre>\n<hr \/>\n<h2>\ud83d\ude80 \u00c9tape 5 : Installation de GRUB<\/h2>\n<h3>5.1 &#8211; Installer GRUB depuis le Live CD<\/h3>\n<pre># Sortir du chroot si vous y \u00eates<\/pre>\n<pre>exit<\/pre>\n<pre><\/pre>\n<pre># Installer les paquets GRUB dans le Live CD<\/pre>\n<pre>sudo apt-get update<\/pre>\n<pre>sudo apt-get install -y grub-pc-bin grub-common grub-pc<\/pre>\n<pre><\/pre>\n<pre># Installer GRUB sur le disque<\/pre>\n<pre>sudo grub-install --target=i386-pc --boot-directory=\/mnt\/restore\/boot --recheck --force \/dev\/sda<\/pre>\n<pre><\/pre>\n<p>Note : &#8211;target=i386-pc pour BIOS \/ Legacy<\/p>\n<h3>5.2 &#8211; G\u00e9n\u00e9rer la configuration GRUB<\/h3>\n<pre># Re-rentrer en chroot<\/pre>\n<pre>sudo mount --bind \/dev \/mnt\/restore\/dev<\/pre>\n<pre>sudo mount --bind \/proc \/mnt\/restore\/proc<\/pre>\n<pre>sudo mount --bind \/sys \/mnt\/restore\/sys<\/pre>\n<pre>sudo chroot \/mnt\/restore<\/pre>\n<pre><\/pre>\n<pre># G\u00e9n\u00e9rer la config GRUB<\/pre>\n<pre>update-grub<\/pre>\n<pre><\/pre>\n<pre># V\u00e9rifier que tout est ok<\/pre>\n<pre>ls -la \/boot\/grub\/grub.cfg<\/pre>\n<pre>cat \/boot\/grub\/grub.cfg | grep menuentry<\/pre>\n<pre><\/pre>\n<hr \/>\n<h2>\ud83d\udd04 \u00c9tape 6 : Modifications Post-Migration (Optionnel)<\/h2>\n<h3>Installation de paquets suppl\u00e9mentaires<\/h3>\n<p>Dans le chroot, vous pouvez installer des paquets :<\/p>\n<pre># Agent Proxmox (recommand\u00e9)<\/pre>\n<pre>apt-get update<\/pre>\n<pre>apt-get install -y qemu-guest-agent<\/pre>\n<pre>systemctl enable qemu-guest-agent<\/pre>\n<pre><\/pre>\n<pre># Autres paquets utiles<\/pre>\n<pre>apt-get install -y openssh-server sudo curl<\/pre>\n<pre><\/pre>\n<h3>Changement de kernel (optionnel)<\/h3>\n<pre># Installer un kernel plus r\u00e9cent depuis les backports ( xxx : distrib , par ex trixie)<\/pre>\n<pre>echo \"deb http:\/\/deb.debian.org\/debian xxxx-backports main\" &gt;&gt; \/etc\/apt\/sources.list<\/pre>\n<pre>apt-get update<\/pre>\n<pre>apt-get install -y -t xxxx-backports linux-image-amd64<\/pre>\n<pre><\/pre>\n<pre># Reg\u00e9n\u00e9rer GRUB<\/pre>\n<pre>update-grub<\/pre>\n<pre><\/pre>\n<h3>D\u00e9sactiver e2fsck au boot<\/h3>\n<p>M\u00e9thode 1 &#8211; via fstab (d\u00e9j\u00e0 fait ci-dessus) : Mettre 0 en dernier champ dans \/etc\/fstab<\/p>\n<p>M\u00e9thode 2 &#8211; via tune2fs :<\/p>\n<pre>tune2fs -c 0 -i 0 \/dev\/sda1<\/pre>\n<pre><\/pre>\n<hr \/>\n<h2>\ud83c\udfac \u00c9tape 7 : Premier D\u00e9marrage<\/h2>\n<h3>7.1 &#8211; Nettoyage et d\u00e9montage<\/h3>\n<pre># Sortir du chroot<\/pre>\n<pre>exit<\/pre>\n<pre><\/pre>\n<pre># D\u00e9monter proprement<\/pre>\n<pre>sudo umount \/mnt\/restore\/dev<\/pre>\n<pre>sudo umount \/mnt\/restore\/proc<\/pre>\n<pre>sudo umount \/mnt\/restore\/sys<\/pre>\n<pre>sudo umount \/mnt\/restore<\/pre>\n<pre><\/pre>\n<pre># Red\u00e9marrer<\/pre>\n<pre>sudo reboot<\/pre>\n<pre><\/pre>\n<h3>7.2 &#8211; Configuration Proxmox avant le boot<\/h3>\n<p>Important : 1. Dans l&rsquo;interface Proxmox, aller dans les options de la VM 2. Retirer l&rsquo;ISO du lecteur CD\/DVD 3. V\u00e9rifier l&rsquo;ordre de boot (Hard Disk en premier) 4. D\u00e9marrer la VM<\/p>\n<h3>7.3 &#8211; V\u00e9rifications post-boot<\/h3>\n<p>Une fois la VM d\u00e9marr\u00e9e :<\/p>\n<pre># V\u00e9rifier le syst\u00e8me de fichiers<\/pre>\n<pre>df -h<\/pre>\n<pre><\/pre>\n<pre># V\u00e9rifier le swap<\/pre>\n<pre>swapon -s<\/pre>\n<pre><\/pre>\n<pre># V\u00e9rifier le kernel<\/pre>\n<pre>uname -a<\/pre>\n<pre><\/pre>\n<pre># V\u00e9rifier les services<\/pre>\n<pre>systemctl status<\/pre>\n<pre><\/pre>\n<pre># Activer le swap si n\u00e9cessaire<\/pre>\n<pre>swapon -a<\/pre>\n<pre><\/pre>\n<hr \/>\n<h2>\ud83d\udd0d D\u00e9pannage<\/h2>\n<h3>La VM ne boot pas<\/h3>\n<ol>\n<li>Red\u00e9marrer avec l&rsquo;ISO Live<\/li>\n<li>Remonter le syst\u00e8me :<\/li>\n<\/ol>\n<pre>sudo mount \/dev\/sda1 \/mnt\/restore<\/pre>\n<pre>sudo mount --bind \/dev \/mnt\/restore\/dev<\/pre>\n<pre>sudo mount --bind \/proc \/mnt\/restore\/proc<\/pre>\n<pre>sudo mount --bind \/sys \/mnt\/restore\/sys<\/pre>\n<pre>sudo chroot \/mnt\/restore<\/pre>\n<pre><\/pre>\n<ol>\n<li>R\u00e9installer GRUB :<\/li>\n<\/ol>\n<pre>grub-install --force \/dev\/sda<\/pre>\n<pre>update-grub<\/pre>\n<pre><\/pre>\n<h3>Erreur \u00ab\u00a0unknown filesystem\u00a0\u00bb avec grub-probe<\/h3>\n<p>Ignorez l&rsquo;avertissement si update-grub se termine quand m\u00eame avec succ\u00e8s. Sinon, cr\u00e9ez manuellement le grub.cfg (voir section installation GRUB).<\/p>\n<h3>R\u00e9seau ne fonctionne pas dans le chroot<\/h3>\n<pre># Sortir du chroot<\/pre>\n<pre>exit<\/pre>\n<pre># Copier la configuration DNS<\/pre>\n<pre>sudo cp \/etc\/resolv.conf \/mnt\/restore\/etc\/resolv.conf<\/pre>\n<pre># Re-rentrer en chroot<\/pre>\n<pre>sudo chroot \/mnt\/restore<\/pre>\n<pre><\/pre>\n<hr \/>\n<h2>\u2728 Avantages de cette M\u00e9thode<\/h2>\n<p>\u2705 Rapide : Seulement 15 Go transf\u00e9r\u00e9s au lieu de 2 To<br \/>\n\u2705 Sans interruption : Le serveur OVH reste en production pendant la migration<br \/>\n\u2705 S\u00e9curis\u00e9 : Transfert via SSH chiffr\u00e9<br \/>\n\u2705 Reprise possible : rsync permet de reprendre en cas d&rsquo;interruption<br \/>\n\u2705 Pr\u00e9serve tout : Liens symboliques, permissions, ACLs, attributs<br \/>\n\u2705 Testable : Possibilit\u00e9 de tester la VM avant de couper l&rsquo;ancien serveur<\/p>\n<hr \/>\n<h2>\ud83d\udcdd Notes Importantes<\/h2>\n<ul>\n<li>Le serveur source reste accessible pendant toute la migration<\/li>\n<li>La VM peut \u00eatre test\u00e9e avant de d\u00e9sactiver le serveur OVH<\/li>\n<li>Les donn\u00e9es peuvent \u00eatre re-synchronis\u00e9es avec rsync si n\u00e9cessaire<\/li>\n<li>Pensez \u00e0 installer qemu-guest-agent pour une meilleure int\u00e9gration Proxmox<\/li>\n<\/ul>\n<hr \/>\n<h2>\ud83c\udf93 Ce que rsync pr\u00e9serve<\/h2>\n<ul>\n<li>\u2705 Liens symboliques<\/li>\n<li>\u2705 Liens durs (hardlinks)<\/li>\n<li>\u2705 Permissions (chmod)<\/li>\n<li>\u2705 Propri\u00e9taires (chown)<\/li>\n<li>\u2705 Timestamps<\/li>\n<li>\u2705 Attributs \u00e9tendus<\/li>\n<li>\u2705 ACLs<\/li>\n<li>\u2705 Fichiers sp\u00e9ciaux (devices)<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\ud83d\udccb Informations du Serveur Source Serveur : serveur physique ( dans mon cas : chez OVH ) OS : Debian xx Disque : 2 To (1,8 To partition principale + 511 Mo swap) Utilisation : ~15 Go seulement actuellement SSH : Port 22 Type de boot : BIOS Legacy \ud83c\udfaf Objectif Cloner le serveur physique [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,4,2,9,10],"tags":[],"class_list":["post-36","post","type-post","status-publish","format-standard","hentry","category-bare-metal","category-debian","category-linux","category-proxmox","category-vm"],"_links":{"self":[{"href":"https:\/\/my-tips.ovh\/index.php?rest_route=\/wp\/v2\/posts\/36","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/my-tips.ovh\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/my-tips.ovh\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/my-tips.ovh\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/my-tips.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=36"}],"version-history":[{"count":4,"href":"https:\/\/my-tips.ovh\/index.php?rest_route=\/wp\/v2\/posts\/36\/revisions"}],"predecessor-version":[{"id":41,"href":"https:\/\/my-tips.ovh\/index.php?rest_route=\/wp\/v2\/posts\/36\/revisions\/41"}],"wp:attachment":[{"href":"https:\/\/my-tips.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=36"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/my-tips.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=36"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/my-tips.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=36"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}