web-dev-qa-db-fra.com

Terminal Grub après le clonage d'Ubuntu 16.04 du disque SSD interne vers le disque dur externe

Ubuntu 16.04 est actuellement installé sur le SSD 240 de mon thinkpad E580. Je souhaite cloner mon installation sur un disque dur externe de 1 To, puis remplacer ubuntu par Windows 10 sur le SSD. La raison en est que je dois exécuter le logiciel 3D CAD SolidWorks (SW) qui ne fonctionne que sous Windows. J'ai actuellement installé Windows 10 et SW sur un disque dur externe USB 3.0 de 1 To, mais le résultat est plutôt lent.

Utilisation de fdisk -l J'ai trouvé que le disque SSD était /dev/nvme0n1 et que le nouveau disque dur était /dev/sda. Comme décrit ici j'ai déjà essayé de cloner le SSD sur un disque dur en démarrant à partir d'un live CD Ubuntu, puis en utilisant dd if=/dev/nvme0n1 of=/dev/sda bs=64K conv=noerror,sync, mais après avoir démarré à partir du disque dur, j'obtiens un terminal grub. Je suis assez nouveau dans ce domaine et je ne sais pas quoi faire ensuite. Toute aide serait appréciée.

1
Phil

Vous pouvez utiliser ce script: script Bash pour cloner Ubuntu sur une nouvelle partition pour tester la mise à niveau de 18.04 LTS pour cloner Ubuntu 16.04 (ou d'autres distributions et versions):

clone-ubuntu.png

0
WinEunuuchs2Unix

Disclaimer: J'ai suivi les étapes de this manuel pour déplacer Ubuntu vers une partition f2fs.

Tout d'abord, j'ai une question: avez-vous exécuté le dd à partir du système actif ou avez-vous utilisé un système démarré en direct pour cloner votre installation actuelle?

Je suggérerais les étapes suivantes:

  1. créez les partitions dont vous avez besoin sur le nouveau lecteur cible
  2. copiez votre installation depuis un système live démarré externe avec rsync dans le nouvel emplacement
  3. lier quelques dossiers et chroot dans votre nouvelle copie de tatget
  4. mettre à jour/etc/fstab pour le nouvel emplacement
  5. installer et mettre à jour grub

1. Copier vers une nouvelle cible
Démarrez à partir d’un disque d’installation Ubuntu et jetez un coup d’oeil avec synaptics sur votre lecteur cible et créez vos partitions si nécessaire.

Ensuite, ouvrez une bash, entrez le shell root et faites:

cd /media
mkdir -p ubuntu ubuntu/oldRoot ubuntu/newRoot
cd ubuntu

Maintenant, vérifiez quelles sont vos partitions. Pour l'exemple, je choisis les éléments suivants:

  • / dev/sda1 - ancienne racine
  • / dev/sdb1 - nouvelle racine

Montez les:

mount /dev/sda1 ./oldRoot
mount /dev/sda2 ./newRoot

2. Copier vers un nouvel emplacement

rsync -avWHAX --progress ./oldRoot/* ./newRoot/

3. Chroot dans un nouvel emplacement

mount -o bind /dev ./newRoot/dev
mount -o bind /sys ./newRoot/sys
mount -o bind /proc ./newRoot/proc

chroot ./newRoot

4. Mettre à jour fstab pour le nouvel emplacement
Vérifiez le nouvel UUID de votre partition et remplacez l’ancien dans /etc/fstab par celui-ci.

5. Installer et mettre à jour grub

Je suppose que vous avez votre SSD en tant que premier atm de périphérique de démarrage. Vous avez le choix ici de le faire, lisez-les ci-dessous.
Je vais vous montrer le deuxième moyen:

grub-install /dev/sdb
update-grub

exit
umount ./*

Vous devriez maintenant pouvoir démarrer Ubuntu à partir du nouvel emplacement.

Options Grub:

  1. Faites l’installation de grub sur le ssd, vérifiez que votre système démarre correctement à partir du nouvel emplacement, installez Windows sur le ssd (ce qui sera probablement le remobe à nouveau) et relancez le point 3-5 de ma liste. De cette façon, vous auriez le même ordre de démarrage.

  2. Installez grub sur le disque dur où réside votre Ubuntu et effectuez un update-grub après l’installation de Windows sur le SSD. De cette façon, il vous faudrait changer l'ordre de démarrage sur le disque dur, mais le système pourrait alors fonctionner, même s'il est remobe. Pour Windows uniquement, il vous suffira de changer à nouveau l'ordre de démarrage et votre Ubuntu pourra démarrer sans le SSD.



note latérale de dd

dd est un outil de bas niveau, qui copie simplement les blocs comme s'ils traînaient. Cela signifie que votre périphérique cible doit être au moins aussi grand que votre périphérique source. Si vous avez une grande partition, à peine remplie, vous pouvez toujours copier tout l’espace vide de la source. L’utilisation de rsync pour cette tâche a permis de copier les fichiers présents de l’autre côté et vous donne la liberté de modifier la disposition de votre partition si vous pensiez que, par le passé, vous souhaitiez modifier quelque chose, c’est la chance ^^.

0
9Lukas5