web-dev-qa-db-fra.com

Ubuntu 15.10 GRUB a disparu après la mise à jour d'Ubuntu 14.04

J'ai un système informatique avec plusieurs disques. J'ai Ubuntu 14.04 LTS installé comme mon système d'exploitation principal, mais j'ai également Windows 7 installé sur un disque séparé. Plus récemment, j'ai installé Ubuntu 15.10 sur un autre disque et quand je l'ai fait, l'installateur a apparemment vu que j'avais également installé 14.04 et créé un menu de démarrage avec 15.10 par défaut et 14.04 en option. Ce n'était pas ce que je voulais, j'avais l'intention de basculer entre 14.04 et 15.10 via les options de démarrage de firmare et que les deux installations Ubuntu ne se connaissent pas, sauf si je décidais de monter l'autre disque, mais peu importe, tout fonctionnait bien. J'ai utilisé 15.10 pendant un certain temps, puis j'ai redémarré en 14.04 après peut-être quelques mois.

Sans surprise, l'installation 14.04 avait un grand nombre de mises à jour en attente, j'ai donc continué et mis à jour en utilisant le Software Updater comme d'habitude. Je pense que l'une des mises à jour concernait GRUB. Lorsque j'ai redémarré après l'installation des mises à jour, l'option de démarrage dans 15.10 n'était plus disponible. J'ai essayé d'utiliser l'utilitaire de réparation de démarrage sur ma clé USB Ubuntu 14.04 en direct, mais cela m'a suggéré de faire quelque chose qui me semblait potentiellement dangereux, à savoir:

Sudo chroot "/mnt/boot-sav/sda2" dpkg --configure -a
Sudo chroot "/mnt/boot-sav/sda2" apt-get install -fy
Sudo chroot "/mnt/boot-sav/sda2" apt-get install -y --force-yes dmraid
Sudo chroot "/mnt/boot-sav/sda2" dmraid -ay
Sudo chroot "/mnt/boot-sav/sda2" apt-get install -y --force-yes lvm2
Sudo chroot "/mnt/boot-sav/sda2" apt-get purge -y --force-yes grub*-common grub-common:i386 shim-signed linux-signed*

j'ai donc annulé cette action et l'ai fait générer un rapport d'informations de démarrage qui peut être trouvé ici:

http://paste.ubuntu.com/15146374/

Quelqu'un peut-il m'aider à comprendre ce qui ne va pas et comment je dois y remédier? S'il est sûr d'utiliser la suggestion de l'utilitaire de réparation de démarrage, je peux le faire. Je suppose que je peux même réinstaller 15.10 si besoin est, mais je pense que les données 15.10 sont toujours là et je veux comprendre ce qui s'est passé afin que je puisse l'empêcher de se produire à l'avenir. Merci d'avance pour toute aide!

1
Jim

Si je lis correctement votre sortie, Ubuntu 15.10 est installé dans un volume logique LVM appelé /dev/mapper/ubuntu-vg-root; cependant, le script n'a pas pu identifier le système de fichiers sur ce volume logique. Cela signifie probablement que:

  • Le script ne peut pas détecter Ubuntu 15.10 à cause d'un bogue ou d'une mauvaise configuration - C'est la cause la plus optimiste, mais cela n'aide pas vraiment beaucoup car cela signifie que vous manquez de données. Vous pourriez d'abord essayer ls /dev/mapper/ubuntu-vg-root depuis Ubuntu 14.04. Si le fichier n'est pas présent, vous devrez peut-être installer certains composants LVM dans Ubuntu 14.04 (essayez Sudo apt-get install lvm2). Si cela provoque /dev/mapper/ubuntu-vg-root pour apparaître, essayez Sudo update-grub et voyez si cela aide. Si /dev/mapper/ubuntu-vg-root est déjà présent, vous pouvez essayer Sudo blkid /dev/mapper/ubuntu-vg-root, et/ou essayez de le monter, pour vérifier que le système de fichiers est intact.
  • Le système de fichiers est endommagé - Si le système de fichiers sur /dev/mapper/ubuntu-vg-root est endommagé, alors vous avez des ennuis. Si vous disposez de données critiques sur cette installation, vous devez d'abord effectuer une sauvegarde de bas niveau, comme dans Sudo dd if=/dev/mapper/ubuntu-vg-root of=/path/to/lots/of/space/u1510-backup.img. Vous pouvez ensuite essayer Sudo fsck /dev/mapper/ubuntu-vg-root pour le réparer. Si la réparation réussit, effectuez une Sudo update-grub pourrait le ramener au menu de démarrage.

Une approche entièrement différente consiste à essayer une autre méthode de démarrage. En particulier, mon gestionnaire de démarrage rEFInd pourrait aider:

  1. Téléchargez la clé USB ou la version CD-R de rEFInd depuis sa page de téléchargements.
  2. Préparez un support de démarrage à partir de rEFInd.
  3. Si le démarrage sécurisé est activé, désactivez-le. (Vous pouvez le réactiver plus tard, si vous le souhaitez.)
  4. Démarrez sur le support rEFInd. Il devrait afficher des options pour vos deux installations Ubuntu, bien que les étiquettes ne soient pas claires. L'installation 14.04 fera probablement référence au démarrage boot\vmlinuz-3.13-*, alors que l'installation 15.10 fera probablement référence au démarrage vmlinuz-4.2.0-* (sans interligne boot\, et un numéro de version de noyau supérieur).
  5. Mettez en surbrillance l'entrée 15.10 et appuyez deux fois sur F2 ou Insérer. Cela ouvrira un simple éditeur de ligne en mode texte avec des options de noyau.
  6. Ajouter ro root=/dev/mapper/ubuntu-vg-root aux options de démarrage.
  7. Appuyez sur Entrée.

Si rEFInd démarre Ubuntu 15.10, vous pouvez installer le paquet Debian rEFInd ou PPA. Cela fera de rEFInd le programme de démarrage par défaut. Vous pouvez faire l'installation à partir de l'une ou l'autre distribution, mais avec des conséquences différentes:

  • À partir du 14.04 - Les noyaux des deux distributions apparaîtront dans le menu rEFInd, vous pourrez donc démarrer soit directement; cependant, vous devrez ajouter les options du noyau manuellement lorsque vous démarrez 15.10, au moins la première fois que vous le faites. (Vous pouvez exécuter le script mkrlconf, fourni avec rEFInd, à partir de 15.10, pour créer un fichier de configuration qui évite de devoir modifier manuellement les options de démarrage. Vous devrez copier ce script à partir de l'installation 14.04, ou au moins monter la partition 14.04 en 15.10 pour pouvoir accéder à ce script.)
  • À partir de 15.10 - Le fichier de configuration créé par mkrlconf sera créé automatiquement par l'installation du package, vous pourrez donc démarrer 15.10 sans modifier ses options de démarrage; cependant, le pilote du système de fichiers EFI nécessaire pour accéder à votre noyau 14.04 ne sera pas installé. Ainsi, pour démarrer 14.04, vous devrez le faire via GRUB, qui devrait apparaître en option. Vous pouvez installer manuellement le pilote ext4fs, ou réinstaller rEFInd à partir de 14.04, si vous voulez pouvoir démarrer le noyau 14.04 directement à partir de rEFInd, sans utiliser GRUB.

Notez que l'utilisation de rEFInd ne fonctionnera probablement pas si le système de fichiers pour votre installation 15.10 est endommagé. Au mieux, il affichera une option pour le noyau 15.10, mais le lancement de ce noyau échouera à un moment donné, peut-être avec un message sur les dommages du système de fichiers. rEFInd est très probablement utile si la cause première est un manque de prise en charge LVM dans Ubuntu 14.04 ou un autre problème dans les scripts GRUB pour détecter Ubuntu 15.10.

1
Rod Smith