Ubuntu ne démarre pas à cause de lvmetad

27

J'ai suivi ce tutoriel pour installer Ubuntu 15.10:

https://thesimplecomputer.info/full-disk-encryption-with-ubuntu

Après avoir redémarré mon ordinateur, je suis arrivé au menu grub et j'ai choisi Ubuntu. Peu de temps après, j'ai eu cette erreur:

/run/lvm/lvmetad.socket: connect failed: No such file or directory
WARNING: Failed to connect to lvmetad. Falling back to internal scanning.

Ces messages continuent de s'ajouter sur un écran noir à chaque seconde. Après un certain temps, j'ai accès à la initramfsconsole Ash.

Qu'est-ce que je fais mal?

Mac Dre
la source
console en frêne ou console bash? faute de frappe?
Thufir

Réponses:

12

J'ai vu la même erreur aujourd'hui sur un ordinateur portable exécutant Ubuntu 15.10 que j'ai toujours gardé à jour mais que je n'avais pas redémarré depuis un mois jusqu'à ce que je veuille tester un noyau actuel (c'est-à-dire qu'il pourrait y avoir eu un changement récent).

Quoi qu'il en soit, j'ai trouvé que dans mon cas, la cause sous-jacente était en fait une partition de swap "manquante" en raison d'un problème d'installation lors de la suite du tutoriel ci-dessus. Si tel est le cas et / ou si vous utilisez réellement lvm, vous pourrez peut-être ignorer l'étape 2 ci-dessous. Bien sûr, vous pouvez également voir le message d'erreur ci-dessus au cas où votre partition système (ou une donnée secondaire) a été endommagée ou introuvable (voir l'étape 3).

Étape 1: Montez votre système, démarrez les partitions en suivant le tutoriel susmentionné

Disons que votre partition de démarrage (ext2) est / dev / sdX1, votre partition de swap (cryptée) est / dev / sdX2, votre partition de données (cryptée) est / dev / sdX3 et vous avez réussi à décrypter cette dernière en utilisant cryptsetup luksOpen /dev/sdX3 data, suivie du montage il: mkdir /tmp/data; mount /dev/mapper/data /tmp/data.

Faites attention aux montages de liaison dans le tutoriel et assurez-vous de monter / dev / sdX1 afin que vous puissiez y accéder depuis le répertoire / boot de votre partition système (ceci est crucial car nous devons l'exécuter update-initramfs).

Dans ce qui suit, nous supposons que vous avez exécuté avec succès chroot /tmp/data/@ubuntu1510(ou quel que soit le nom de votre partition système montée)

Étape 2: se débarrasser du message d'erreur ci-dessus

J'utilise btrfs (comme vous l'avez peut-être deviné à partir du nom de sous-volume mentionné), donc lvmetad peut facilement être désactivé comme suit sans perte de fonctionnalité:

  • éditez /etc/lvm/lvm.conf et changez use_lvmetad=1pouruse_lvmetad=0
  • exécuter update-initramfs -k $(uname -r) -u ; sync

Maintenant, vous pouvez redémarrer et le message d'erreur devrait disparaître. Cependant, dans mon cas, le message d'erreur suivant [1] m'a signalé le problème sous-jacent mentionné ci-dessus, alors pendant que nous y sommes, ...

Étape 3: assurez-vous que / etc / crypttab pointe vers les partitions correctes et non endommagées

Tout d'abord, exécutez sfdisk --list /dev/sdXet vérifiez que votre partition de swap chiffrée (dans mon cas, / dev / sdX2) n'apparaît pas réellement comme une partition de swap (normale). Si c'était le cas (comme dans mon cas), cela signifiait que le démarrage, par exemple en utilisant un disque de secours, utiliserait probablement cette partition de swap disponible, écrasant ainsi vos métadonnées liées à cryptsetup (phrase clé et UUID).

Ensuite, jetez un œil à / dev / disk / by-uuid et comparez les UUID respectifs de vos partitions chiffrées avec ceux contenus dans / etc / crypttab. Ma conjecture à ce stade: dans votre cas, il y a un décalage.

Si la partition d'échange cryptée dédiée est introuvable sous / dev / disk / by-uuid, c'est parce qu'elle est actuellement utilisée par votre système de secours. Dans ce cas, procédez comme suit:

  • assurez-vous d'arrêter d'utiliser la partition: swapoff -a
  • reformatez-le: mkfs.ext2 /dev/sdX2(ceci est crucial , en particulier lorsque vous utilisez des partitions GPT [2], car cela annule le problème que j'ai mentionné plus tôt. mkswap /dev/sdX2lors de la configuration de la partition au début.)
  • suivez le didacticiel pour crypter la partition et définir une phrase secrète; ensuite, ouvrez-le en utilisant cryptsetup et reformatez correctement la partition maintenant déchiffrée (en utilisant quelque chose comme mkswap /dev/mapper/swap)
  • assurez-vous que sfdisk --list /dev/sdXn'identifiera pas la partition de swap en tant que telle (dans ce cas, répétez les dernières étapes)

Maintenant, vérifiez à nouveau que les UUID répertoriés dans / etc / crypttab correspondent à ce que vous voyez ci-dessous / dev / disk / by-uuid pour vos partitions chiffrées respectives.

Encore une fois, pour rendre les modifications permanentes, vous devez exécuter update-initramfscomme indiqué ci-dessus.

Si vous êtes satisfait, assurez-vous que tout est écrit sur le disque et redémarrez le système (pas besoin de tout démonter manuellement). Ensuite, votre problème devrait avoir disparu.

[1] peut-être que je n'ai pas fait attention la première fois ou que le premier message d'erreur a "masqué" la seconde; c'est-à-dire qu'après le redémarrage (avec use_lvmetad=0), on m'a présenté " Lire tous les volumes physiques. Cela peut prendre un certain temps ... " (répété plusieurs fois), suivi de " ALERTE! / dev / disk / by-uuid / .. . n'existe pas. ". (Il convient de noter que update-initramfsse plaignait également d'une partition manquante.)

[2] car leur type est déduit de l'analyse de leur contenu et n'est finalement pas spécifié par un indicateur / octet (c'est pourquoi il n'y a pas de moyen facile, par exemple, de changer le type de système de fichiers GPT à l'aide [g]parted.)

Markus Ueberall
la source
2

Ubuntu 18.04.1 LTS ici. Il avait fonctionné pendant quelques mois sans surveillance, mais à mon retour, j'ai trouvé le clavier non reconnu. Lorsque j'ai redémarré, j'ai reçu le message «impossible de se connecter à lvmetad» et plus d'informations sur le fait de ne pas pouvoir obtenir la «liste UEFI db».

J'avais installé sans chiffrement de disque.

Le message UEFI était inquiétant car c'était ma première installation sur un ordinateur UEFI, donc je n'avais aucune expérience, et je suis franchement toujours pas informé de l'utilité. Mon problème était aggravé par le fait que j'avais utilisé «lvm» sur ce qui allait être mon «/», racine, volume. (En fait, j'ai déjà oublié comment j'ai accompli cela en premier lieu! Hé. Je suis vieux.)

Cependant, lorsque la machine ne redémarrait pas, j'ai cherché une solution et je n'ai rien trouvé de définitif, mais j'ai remarqué que a) ma partition EFI était plus petite que les 500 Mo recommandés sur un site, et b) la partition / boot / partition séparée que j'avais arrangée car était probablement hors de propos et inutilisé. J'ai pensé qu'il était possible qu'une mise à niveau sans surveillance, peut-être, ait causé quelque chose, éventuellement, pour remplir son espace alloué.

J'ai décidé de réinstaller - ce qui a fonctionné, et j'ai laissé ma structure de répertoire / home / intacte. Je n'ai pas vérifié / etc /, mais j'ai fait des copies des deux avant [1], donc je peux vérifier plus tard. / etc / est vraiment petit.

J'ai également supprimé supprimé et combiné les partitions pour EFI et / boot / en une seule partition EFI plus grande (> 750 Mo).

Il redémarre maintenant, mais un seul message d'erreur clignote trop vite pour être lu, et on ne me propose pas de «menu» de démarrage d'images Linux pour démarrer, il démarre directement dans Ubuntu à la place. Il y a encore du travail à faire, avec grub je suppose, pour y remédier. Mais au moins mes fichiers sont de retour.

[1] J'ai démarré l'installation d'Ubuntu à partir d'une clé USB et j'ai choisi "d'essayer" Ubuntu, ce qui m'a permis de faire des copies de etc et de la maison, avant de choisir "Installer" sur le bureau.

bourbier
la source
avec mount /dev/mapper/data /tmp/dataje reçois unknown filesystem type LVM2_member.
Francesco Boi
2

L' Failed to connect to lvmetaderreur peut se produire car le disque est plein à 100%. Pour résoudre ce problème, démarrez à partir d'une clé USB, montez le disque complet, supprimez certains fichiers inutiles et redémarrez. J'ai également réinstallé le système de démarrage - je ne sais pas si cela est nécessaire ou non.

Ce sont les commandes qui ont résolu le problème pour moi, exécutées à partir d'un terminal après le démarrage à partir du lecteur USB. J'ai en stock Ubuntu 18.04 avec un cryptage complet. YMMV.

  • monter le lecteur:
sudo cryptsetup luksOpen /dev/sda5 sda5_crypt
sudo vgscan --mknodes
sudo vgchange -ay
sudo mount /dev/mapper/ubuntu--vg-root /mnt
  • supprimer les fichiers inutiles ( cd /mnt/home/your_username... rm ...)
  • (peut ne pas être nécessaire) réinstallez le système de démarrage:
cd /mnt/
sudo mount /dev/sda1 boot
for d in dev sys proc run; do sudo mount --bind /$d $d; done
sudo vi etc/crypttab # make sure first line uses "sda5_crypt"
sudo chroot .
update-grub
grub-install /dev/sda
update-initramfs -u -k all
exit
sudo umount dev sys proc run boot
  • démonter:
cd /
sudo umount /mnt
sudo vgchange -an
sudo cryptsetup close sda5_crypt
  • redémarrer:
sudo reboot
bitinerant
la source
0

Il n'est pas nécessaire de démarrer votre système à partir d'une clé USB ou autre chose. J'ai eu le même problème et une raison - parce que le disque est plein à 100%. La solution suivante m'a aidé.

1) Redémarrez votre système. Avec le BIOS, appuyez rapidement sur la touche Maj et maintenez-la enfoncée, ce qui fera apparaître le menu GNU GRUB.

2) Après avoir appuyé sur «e» pour modifier les paramètres Ubuntu. Dans ce problème, vous pouvez trouver des écrans. Trouvez une chaîne commençant comme 'linux *', comme ceci:

linux     /boot/vmlinuz-4-4.0-22-generic root=UUID=43ad24d3-e\
c5b-44ee-a099-a88eb9520989 ro  quiet splash $vt_handoff

Supprimer:

ro  quiet splash $vt_handoff

et ajouter:

init=/bin/bash

Une fois prêt, appuyez sur CTRL + x ou F10 pour démarrer.

3) La partition racine est montée en lecture seule. Pour le monter en lecture / écriture, entrez la commande

mount -o remount,rw /

4) Découvrez ce qui a mal tourné:

df -hT
Ekaterina Borikova
la source