Cloner son disque dur dual boot Windows-GNU/Linux vers un SSD

Il y a de ces moments trop rares en informatique où on pense être parti pour des heures de galère et où tout finalement se déroule sans accroc, mon cher Looping ! Voilà le topo, j’ai récemment eu l’occasion d’acquérir pour le boulot un SSD de 512 Gio à vil prix, afin de remplacer mon asthmatique disque dur de 500 Gio. Je précise les tailles car ici nul besoin de retailler les partitions, le SSD étant plus volumineux que le disque dur. Alors les guides pour cloner Windows d’un disque dur vers un SSD, il y en a des tartines. Ils utilisent les utilitaires constructeurs, Acronis True Image, EaseUs Todo Backup, Macrium Reflect ou encore Gparted ou CloneZilla. La procédure est bien rôdée et ça se passe généralement très bien. Les guides pour cloner du GNU/Linux y’en a déjà beaucoup moins, tous à base de Gparted et CloneZilla et souvent assez confus et rarement semblables, ce qui n’aide pas à avoir les idées claires. Enfin concernant ceux dédiés à la procédure de clonage de Windows et GNU/Linux en double amorçage, et bien c’est encore pire niveau rareté, clarté et efficacité. Vous l’avez bien compris, je suis dans le dernier cas de figure et je pensais déjà à la réinstallation complète tant je me voyais mal recommencer X fois les procédures découlants les différentes techniques trouvées sur le Web.

Clone

Je ne sais pas pourquoi mais concernant la gestion des disques/partitions, j’ai toujours eu l’impression que des logiciels comme Acronis True Image, feu-Partition Magic ou Macrium Reflect étaient bien meilleurs et sûrs que Gparted ou CloneZilla alors que je me sers bien plus de ces derniers. Sûrement une très lointaine résurgence de mon passé de windowsien, passons… Toujours est-il que j’ai commencé par cloner le disque avec Acronis True Image 2014 lequel a renoncé après avoir copié les partitions Windows, puis avec EaseUs Todo Backup qui lui faisait redémarrer le PC dès le début de l’opération. À ce moment-là, ça sentait vraiment la réinstallation complète.

Je relis alors les différents sujets consacrés à Gparted et CloneZilla, c’est toujours aussi confus mais je laisse tout ça mijoter en même temps que ma tartiflette et une fois de retour au boulot, je me lance dans l’inconnu avec pour seule méthode, la bonne vieille Rache. En gros, je compte copier à l’identique chaque partition vers le SSD (tous ceux derrière leur écran qui se sont sentis obligés l’espace d’un instant de me préciser qu’il s’agit là de la définition du verbe cloner peuvent faire un Ctrl-W, merci) et me débrouiller ensuite avec les éventuels problèmes de démarrage.

Ils nous faut donc :

 – Un adaptateur SATA/USB pour connecter le SSD au PC portable (ou les câbles SATA classiques pour un PC fixe).
– Un ISO de la dernière version de Gparted que vous graverez sur un CD/DVD ou que vous utiliserez sur une clé USB amorçable (à l’aide de Multiboot ou Easy2Boot par exemple).
– Un ISO de Super Grub Disk (j’ai pris la bêta parce que je suis plus à ça près) auquel vous réserverez le même sort que l’ISO précédent. Vous me voyez venir, oui il va falloir dépanner Grub.
– Idéalement faire une copie de sauvegarde du disque dur afin d’éviter les crises de nerf en cas de clonage du SSD vers le disque dur (on ne ricane pas, j’en connais qui l’ont déjà fait, dont moi…).
– De la patience, du calme et surtout vérifiez 2 fois avant de valider une opération définitive, voire 3 fois pour les 2 au fond qui passent leur temps sur leur smartphone. Gparted c’est comme Tinder, quand on a cliqué c’est trop tard.
– Conseil bonus : enfermez votre chat et votre gamin à la cave, les 2 sont adorables et tout et tout mais ils ont une fâcheusement propension à provoquer des catastrophes avec le clavier.

1. Gparted

Après avoir connecter le SSD au PC et démarrer sur Gparted, on va comme je l’ai dit plus haut copier les partitions du disque dur vers le SSD. Pour ce faire, il suffit de sélectionner la partition d’origine, de cliquer sur le bouton « Copier », de sélectionner le SSD et de cliquer sur le bouton « Coller ».

-dev-sdb - GParted_207

Depuis le disque dur, copier les partitions une par une.

On va le faire pour toutes les partitions et pour finir on valide les opérations.

-dev-sda - GParted_208

Valider les manipulations.

Vous remarquerez qu’une de mes partitions était marquée comme « inconnu », il s’agit de la SWAP je n’ai pas trop d’explication si ce n’est qu’elle était peut-être chiffrée, je ne sais plus trop, des fois je suis parano… Dans ce cas, il suffira de la recréer manuellement avec Gparted sur le SSD.

-dev-sdb - GParted_206

Le disque dur avec la partition de SWAP non reconnue.

Si tout ce passe bien, il n’ya plus qu’à patienter 3-4 heures. Vous penserez bien à la fin à ajouter aux partitions du SSD les mêmes drapeaux que sur le disque dur (ici boot,lba pour la première partition et lba pour la partition étendue).

-dev-sda - GParted_205

Le SSD une fois les manipulations finies.

2. Super Grub Disk

La copie s’est bien déroulée ? Parfait, on va maintenant éteindre le PC et remplacer le disque dur par le SSD. Dans le cas contraire, les commentaires sont là pour exposer votre problème.

L’instant de vérité, le redémarrage. Bon j’ai déjà éventé le suspens précédemment, l’écran n’affiche qu’un laconique curseur blanc en haut à gauche. Bref Gparted, c’est bien mais ça n’est pas suffisant, place maintenant à Super Grub Disk.

Après avoir démarrer sur Super Grub Disk, on va choisir l’option Boot manually.

Super Grub Disk_210

Ensuite la ligne Operating Systems.

Super Grub Disk_211

Et enfin celle contenant le kernel que vous voulez utiliser (les grincheux qui ont échappés au Ctrl-W et qui trouvent que la capture d’écran est moche et floue, c’est parce que c’est une photo, passez donc par la case Alt-F4 et ne touchez pas 20000 BTC).

Super Grub Disk_212

Normalement vous devriez atterrir sur votre joli environnement graphique. Pour ma part, je suis arrivé sur un terminal en root, visiblement quelque chose a putréfié au royaume du kernel ! Rappelons-nous que j’ai recréé ma SWAP et que donc elle n’a plus le même UUID. Il va donc falloir corriger le fichier /etc/fstab en conséquence.

 – Identifions la partition contenant la swap (ici sda6):

Disk /dev/sda: 512.1 GB, 512110190592 bytes
255 têtes, 63 secteurs/piste, 62260 cylindres, total 1000215216 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 4096 octets
taille d’E/S (minimale / optimale) : 4096 octets / 4096 octets
Identifiant de disque : 0x08219ef9

Périphérique Amorçage  Début         Fin      Blocs    Id. Système
/dev/sda1   *        2048    52430847    26214400    c  W95 FAT32 (LBA)
/dev/sda2        52430848   257230847   102400000    7  HPFS/NTFS/exFAT
/dev/sda3       257230848   659804159   201286656    7  HPFS/NTFS/exFAT
/dev/sda4       659804160  1000214527   170205184    f  Étendue W95 (LBA)
/dev/sda5       659806208   968566783   154380288   83  Linux
/dev/sda6       992022528  1000214527     4096000   82  partition d’échange Linux / Solaris

– Trouvons son UUID (ici d17277c0-656d-423d-acac-75270120834b) :

total 0
drwxr-xr-x 2 root root 140 févr.  4 19:22 .
drwxr-xr-x 5 root root 100 févr.  4 19:22 ..
lrwxrwxrwx 1 root root  10 févr.  4 19:22 3022FBCD22FB9656 -> ../../sda3
lrwxrwxrwx 1 root root  10 févr.  4 19:33 4C8B-2392 -> ../../sda1
lrwxrwxrwx 1 root root  10 févr.  4 19:22 BC008F1B008EDBB0 -> ../../sda2
lrwxrwxrwx 1 root root  10 févr.  4 17:32 d17277c0-656d-423d-acac-75270120834b -> ../../sda6
lrwxrwxrwx 1 root root  10 févr.  4 19:22 df72b8af-a2ad-4ef5-ac04-5aa69f5cfc5a -> ../../sda5

– Il ne reste plus qu’à corriger le /etc/fstab :

# /etc/fstab: static file system information.
#
# Use ‘blkid’ to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda5 during installation
UUID=df72b8af-a2ad-4ef5-ac04-5aa69f5cfc5a /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda6 during installation
UUID=d17277c0-656d-423d-acac-75270120834b none            swap    sw              0       0

– Tant qu’on y est, SSD oblige on va ajouter l’option « discard » pour activer le TRIM :
# / was on /dev/sda5 during installation
UUID=df72b8af-a2ad-4ef5-ac04-5aa69f5cfc5a /               ext4    errors=remount-ro,discard 0       1

 – On valide le changement de configuration et on teste le TRIM :

update-initramfs: Generating /boot/initrd.img-3.18.5-031805-generic

Reste à réinstaller Grub sur le disque /dev/sda. Si vous êtes connecté à Internet vous pouvez utiliser la commande suivante (sélectionnez /dev/sda quand c’est demandé) :

Dans le cas contraire, utilisez les commandes :

Il n’y a plus qu’à redémarrer le PC et s’assurer qu’à la fois GNU/Linux et Windows démarrent bien à partir de Grub, pour ma part, c’était le cas. Je ne garantis pas que ma méthode fonctionne à chaque fois mais ça vaut le coup d’être tenté.

En cas de problème ou de question, les commentaires sont ouverts 😉

14 commentaires

  1. Bonjour.

     

    J'ai moi auusi un disque en dual boot ( Seven en 64 bits / Ubuntu 14.04 en 64 bits ) à transférer d'un 500 Go vers un 1 To. Les deux sont bien sur en SATA 3,5 pouces ( pas assez de sous pour passer en SSD ).

    J'ai aussi lu beaucoup de tutoriels et la veille de recevoir par colis mon 1To je suis encore craintif.

    Je me pose encore la question de l'option offerte par Clonezilla en live ( j'ai les 2 en USB ou en CD ). Je pensais bêtement que Clonezilla allait tout me transférer. En fait j'aurais un espace non utilisé sur mon futur 1To que je pourrais par la suite allouer à ubuntu ( je veux passer de Windows à Ubuntu pour mes photos et dans quelques années ne plus utiliser windows ).

    Mes craintes viennent à la lecture de Super Grub Disk……………

    Donc pas plus aisé avec Clonzilla ?

     

  2. Bonjour Daniel,

    je n'ai pas testé avec CloneZilla mais tout comme avec Gparted, il va "bêtement" copier les partitions d'un disque à l'autre. Il te restera effectivement 500 Gio de libre mais avec Gparted tu pourras au choix, créer une nouvelle partition ou étendre une partition existante sur cet espace disque.

    Sur mon SSD après clonage, il restait 11,18 Gio de libre. Il m'a suffit de faire un clic-droit -> redimensionner sur /dev/sda5 pour étendre la partition.

    Dans ton cas la manip me parait assez simple :

     – Connecter les 2 disques au PC

     – Redémarrer sous Gparted

     – Copier les partitions une à une du disque de 500 Gio vers le disque de 1 Tio comme décrit dans l'article

     – Éteindre le PC, retirer/débrancher le disque de 500 Gio et redémarrer sur celui de 1 Tio.

     – Si tout s'est bien passé (Windows et Ubuntu démarrent), redémarrer sur Gparted pour créer un nouvelle partition ou étendre une partition existante sur l'espace libre.

     – Sinon, redémarrer sur Super Grub Disk pour réinstaller Grub sur le disque de 1 Tio. Super Grub Disk remplace temporairement le Grub manquant et permet de relancer Ubuntu, il faut ensuite réinstaller Grub comme indiqué dans l'article.

    Si connexion Internet :

    Dans le cas contraire (/dev/sda étant le disque de 1 Tio) :

    C'est bien plus simple que ça en a l'air.

    Pas trop d'inquiétude à avoir, la seule chose à éviter c'est de faire une mauvaise manipulation sur le disque de 500 Gio. Pour le reste, méthode et patience.

    N'hésite pas revenir vers moi si tu as des questions.

    Doc

     

  3. super, merci pour le tuto, je vais me faire ça car la flemme de tout réinstaller.

    par contre pour faire cohabiter windows 10 et ubuntu 14.04 LTS sans UEFi, ca a l'air compliqué 🙁

    1. Bonjour Pascal,

      je suis tout à fait d'accord avec toi, Acronis et autres clicodromes commerciaux sont bien plus intuitifs pour cloner un simple Windows. (Encore que Gparted n'a rien à leur envier)

      Il s'agissait ici d'une configuration particulière (HDD vers SSD et 2 OS dont un GNU/Linux) sur laquelle Acronis et 2-3 autres se sont justement cassés les dents.

      Depuis, j'ai aussi eu à cloner des HDD et des SSD en conservant la partition de restauration et là aussi les logiciels "classiques" ont échoués. Par contre CloneZilla, qui est loin d'être aussi intuitif, a parfaitement réussi à chaque fois. Ça demande un peu de lecture mais quand on touche aux partitions, on n'a pas le droit à l'erreur.

       

       

  4. Bonjour

    Tout s'est bien passé en apparence, copie des disques, reboot avec supergrub. j'arrive à booter ma debian, puis je fais un update-grub

    Depuis pas moyen de rebooter, aucun système n'est reconnu même avec supergrb (-> "operating system" donne une liste vide)

    J'ai un écran noir qui me dit qu'il ne trouve rien de bootable. J'arrive à booter sur les clés supergrub et gparted, mais c'est tout…

    any hint ?

    dom

    1. Bonjour Dom,

      peux-tu décrire ta configuration des partitions avec un fdsik -l ou un screenshot de Gparted ? As-tu plusieurs OS ?

      As-tu essayer de rebooter dirtectement sous Debian après la copie, sans passer par la case SuperGrub ? Si le reboot se passe bien, nul besoin de passer par SuperGrub, le tuto n'est peut-être pas assez clair sur ce point…

      Il semble que ce soit le update-grub qui ait mis le bazar. Si SuperGrub ne "voit" plus d'OS, il faudra peut-être réinstaller Grub à la main en suivant une de ces méthodes : http://www.isalo.org/wiki.debian-fr/R%C3%A9installer_Grub2

      Doc

       

       

  5. Le problème, c'est que le PC ne "voit" pas le disque au démarrage. Je peux booter sur une clé USB mais c'est tout. 

    Lorsque je boote sur SuperGrub, et que je passe en ligne de commande par exemple, si je tape "ls" j'obtiens ça :
    grub> ls
    (porc) (hd0) (hd0,gpt3) (hd0, gpt2,msdos1) (hd0, gpt2) (hd0, gpt1)
    ici hd0 correspond à la clé USB de SuperGrub mais pas de trace de mon disque

    Par contre, si je charge un système, par exemple un live-debian sur une clé USB, une fois le système démarré je vois mon disque, sur /dev/sda et la clé sur /dev/sdb. Je peux même installer un système sur une partition, configurer grub, qui détecte les différents systèmes y compris UEFI et windows, et qui s'installe sans message d'erreur, mais quand je reboot j'ai de nouveau le même problème : si aucune clé USB n'est présente :

    "All boot options are tried.
    Press <F4> key to recover with factory image using recovery
    or any other key for next boot loop iteration."

    et il ne veut bien rebooter que sur une clé USB…

     

     

    1. EDIT: j'ai fini par trouver une erreur dans UEFI.

      du coup supergrub voit de nouveau mon disque, et j'arrive à booter dessus 🙂 ouf
      puis je refais le update grub en faisant gaffe à efi.. et bingo ça marche

      seul pbm maintenant, il refuse de booter sous windows, mais je l'utilise en moyenne 3 fois par an, c'est pas dramatique. Quand je tente de booter dessus il me dit:

      "Récupération
      Votre PC doit être réparé.
      Un périphérique requis n'est pas connecté ou est inaccessible.
      Code d'erreur : 0x0000225"

      Merci pour le tuto et la réactivité anyway

  6. Bonjour,

    J'ai suivi le tuto mais j'ai un souci…

    Ma config (pour planter le décor) :

    1 SSD de 128 Go -> "source" avec 2 partitions NTFS dont une avec Windows 10 64 (mis à jour depuis Seven)

    1 HDD de 500 Go avec une partition de stockage et les partitions Ubuntu (c'est sur ce disque qu'on trouve le Grub)

    1 SSD de 480 Go -> "cible" branché avec un adaptateur USB

    Tentative 1

    Initialement, j'ai fait le tuto. Au redémarrage, j'avais le message d'absence d'OS. J'ai donc réinstallé un Grub à l'aide de la commande dans l'article (sudo aptget install reinstall grubpc grubcommon). Aucun souci. Le Grub se situe désormais sur le nouveau SSD. Dans le menu du Grub, si je lance Ubuntu, aucun souci. Windows affiche en revanche une erreur 0xc000000e.

    Dès lors, je remonte le disque source. Je réinstalle un Grub et tout marche bien.

    Tentative 2

    Je refais le tuto. Je laisse tous les disques branchés. Au démarrage, je choisis de booter sur le disque "cible". Comme je m'y attendais, il ne voit pas le Grub et cherche à démarrer Windows. Il y parvient. Je me dis super ! Je vais pouvoir enlever le disque source et mettre le disque cible à sa place (puisqu'il était toujours connecté avec l'adaptateur USB). Je le fais. Message d'erreur Windows.

    Quelqu'un a une idée, SVP ?

  7. Salut,

    si je comprend bien, ton but est de cloner le SSD 128Gio vers le SSD 480Gio.

    As-tu essayé en réinstallant GRUB sur le HDD ?

    Si cela ne fonctionne pas, tu pourrais tenter d'utiliser Clonezilla pour cloner le SSD de 128 Gio vers celui de 480 Gio sans toucher au HDD contenant GRUB.

    J'ai eu à cloner des SSD de 128 Gio vers des 256 Gio mais en passant d'abord par la case "image" :

    SSD 128 -> Image puis Image -> SSD 256

    Voici la précédure que j'utilise pour créer une image :

    – Démarrer sur la clé USB CloneZilla
    – Other mode of CloneZilla Live
    – CloneZilla live (Default settings, KMS)
    – fr_FR.UTF-8 French
    – Choisir un codage clavier pour votre architecture -> azerty -> French -> Apple USB
    – Start_Clonezilla Démarrage de Clonezilla
    – device-image disque/partition vers/depuis image
    – local_dev Monter un périphérique local (p.ex. : disque dur, clé USB)
    – Connecter le disque dur USB qui recevra l'image, patienter 5s et appuyer sur Entrée
    – Sélectionner le disque dur USB dans la liste (ex : sdc1 464.3G_ntfs…)
    – Sélectionner la racine comme répertoire qui va accueillir l'image
    – Expert Mode Expert : Choisissez vos propres options
    – Savedisk Sauvegarder le disque local dans une image (pour sauvegarder le disque entier)
    – Nommer l'image (ne pas laisser d'espace)
    – Choisir le disque source (touche Espace pour sélectionner)
    – Choisir l'option -q2
    – Choisir les options :
        -c
        -j2
        -ntfs-ok (ne pas vérifier la structure NTFS)
        -rescue (si on soupçonne le disque d'être défecteux, permet de poursuivre la copie en cas de secteur défecteux)
    – Choisir la compression -z2p (compresse fortement en bzip2 avec tous les coeurs CPU)
    – Indiquer la taille de découpe de l'archive (entrer une valeur comme 1000000000000 pour avoir un seul fichier par partition)
    – Ne pas vérifier/réparer le système de fichier
    – Oui, vérifier l'image sauvegardée
    – Ne pas chiffrer l'image
    – -p true Ne rien faire après le clonage
    – y pour commencer le clonage si absence de message d'erreur

     

    Et celle pour restaurer :

    – Démarrer sur la clé USB CloneZilla
    – Other mode of CloneZilla Live
    – CloneZilla live (Default settings, VGA 1024×768)
    – fr_FR.UTF-8 French
    – Choisir un codage clavier pour votre architecture -> azerty -> French -> Apple USB
    – Start_Clonezilla Démarrage de Clonezilla
    – device-image disque/partition vers/depuis image
    – local_dev Monter un périphérique local (p.ex. : disque dur, clé USB)
    – Connecter le disque dur USB qui contient l'image, patienter 5s et appuyer sur Entrée
    – Sélectionner le disque dur USB dans la liste (ex : sdc1 464.3G_ntfs…)
    – Sélectionner le répertoire qui contient l'image (racine par défaut)
    – Expert Mode Expert : Choisissez vos propres options
    – Restoredisk Restaurer une image vers le disque local
    – Sélectionner l'image
    – Choisir les options :
        -e1
        -e2
        -c
        -r
        -j2
    – Utiliser la table de partition de l'image
    – -p true Ne rien faire après le clonage
    – y pour commencer le clonage si absence de message d'erreur

     

    Normalement, tu devrais obtenir une copie exacte du SSD 128 Gio sur le 480 Gio, GRUB devrait donc retrouver Windows.

    Il ne reste plus qu'à démarrer sous Windows et agrandir la partition pour qu'elle occupe tout le disque via le gestionnaire de disque.

    Dans tous les cas, il est recommandé avant de procéder à de telles opérations d'avoir des images des disques qui vont être modifiés, CloneZilla étant tout indiqué pour les faire.

    Tiens nous au courant,

    Doc

     

    1. Salut,

      J'ai retenté la manip. Après le clonage, j'ai redémarré. Le Grub était absent (comme prévu). Si je tentais le démarrage depuis le SSD, Windows buggait. Si je tentais depuis le HDD, Windows se lançait. J'ai donc suivi ton conseil : réinstallation du Grub… mais j'ai fait simple :

      démarrage en live USB ubuntu 14.04

      installation de boot-repair selon la ligne de commande fournie dans la doc (sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt update && sudo apt install boot-repair && sudo boot-repair)

      lancement de boot-repair avec la "réparation recommandée"

      Rien d'autre à faire. Tout fonctionne normalement !

      Merci de ton aide. Bonne continuation !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *