Serveur ne boot plus après apt-get upgrade

Bonjour à tou(te)s,

Après un banal apt-get upgrade, l’un de mes serveurs n’est plus en mesure de booter.

Il tourne sous wheezy dans une vm xenServer (citrix) en version Free

J’ai tout de même le menu Grub2, mais j’obtiens l’erreur :
ALERT ! /dev/disk/by-uuid/xxx does not exist.

et je suis expédié sur un shell busybox.

J’ai essayé plusieurs choses :
blkid, mais le disque en question n’est pas récupéré. Pour info, le disque root est formaté en ext4 sur un LVM.
Seule la partition de swap est visible, les partitions en ext4 ne sont pas visibles. La partition de swap est elle aussi en LVM

J’ai booté sur SystemRescueDisk mais le disque en question est visible et je peux y accéder sans problème. J’ai fais un fsck mais rien de mieux ensuite après reboot sans RescueCD.

J’ai augmenter la valeur rootdelay à 90 dans la ligne linux /vmlinuz…, mais toujours même erreur après une durée d’attente effectivement plus longue.

Je suis un peu sec du coup :frowning:

Des idées ?

Merci !

Salut,

[quote=“jpegfr”]Après un banal apt-get upgrade, l’un de mes serveurs n’est plus en mesure de booter.

J’ai tout de même le menu Grub2, mais j’obtiens l’erreur :

ALERT ! /dev/disk/by-uuid/xxx does not exist.[/quote]

Fixer le nommage vos partitions avec l’UUID

Essayer d’activer les volumes dans le shell busybox :

poursuivre le démarrage normal puis actualiser initrd.img* (update-initramfs).

Salut,

J’ai eu une erreur similaire récemment (même message d’erreur et même consequence),
mais c’était sur une sid et pas une wheezy, donc la cause est peut être différente.

Apparemment il s’agissait d’un bug de udev.
En chroot, j’ai pu faire un upgrade et le problème a été résolu.

Merci de vos réponses.

J’avais effectivement déjà essayé de changer les UUID, mais un ls -l /dev/disk/by-uuid ne me montre que les disques que j’ai déjà mentionné, à savoir le swap et le disque de boot. Mais toujours pas de disque Root.

Sous le prompt initramfs, je n’ai pas tous les utilitaires LVM et notamment lvchange :frowning:

Je vais tenter la solution chroot, mais je ne maitrise pas vraiment cette solution. Un tuto ?

Cordialement

Normal, le conseil était erroné …
Correction :
%s/lvchange/vgchange

$ lsinitramfs /boot/initrd.img* | grep lvchange
retour chez moi : ø

$ lsinitramfs /boot/initrd.img* | grep vgchange
retour chez moi : sbin/vgchange

Essaye donc

au lieu de [strike][mono]lvchange -ay[/mono][/strike]

La commande code vgchange -ay[/code] permet bien de “recharger” les disques LVM dont le disque Root.

Comment faire maintenant pour que Grub2 le reprenne en compte la prochaine fois ?

En complément, j’ai fait un control-d pour appliquer et continuer à booter. Le système ayant trouvé le disque Root il a pu démarré correctement. J’ai fait alors un apt-get update et upgrade et à la fin du processus, j’ai l’erreur suivante :

run-parts: executing /etc/kernel/postinst.d/zz-update-grub 3.2.0-4-amd64 /boot/vmlinuz-3.2.0-4-amd64
Generating grub.cfg …
/usr/sbin/grub-probe : erreur : Couldn’t find PV pv1. Check your device.map.
Found linux image: /boot/vmlinuz-3.2.0-4-amd64
Found initrd image: /boot/initrd.img-3.2.0-4-amd64
/usr/sbin/grub-probe : erreur : Couldn’t find PV pv1. Check your device.map.
done

j’ai alors taper les commande suivantes :

# grub-mkdevicemap
# update-grub

Je n’ai plus eu l’erreur.

Le serveur démarre normalement maintenant … Ouf !

Merci de vos conseils …

Grub n’a pas besoin d’être retouché dans le fil suivant :
sid-initramfs-et-lvm-t47460.html
sid-initramfs-et-lvm-t47460.html#p476200

[quote=“fran.b”]Il faut que tu patches /usr/share/initramfs-tools/scripts/local-top/lvm2 parlepatch

[code]— lvm2.old 2014-03-15 19:21:18.839903322 +0100
+++ lvm2 2014-03-15 19:17:45.494131481 +0100
@@ -23,6 +23,11 @@
if [ -z “$dev” ]; then
return 1
fi

  • echo “commande vgchange -ay (FB)”

  • vgchange -ay

  • echo “un petit peu d’attente de 10s”

  • sleep 10

  • echo “On repart…”

    Take care of lilo boot arg, risky activating of all vg

    case “$dev” in
    [/code]
    [/quote]
    Retoucher /usr/share/initramfs-tools/scripts/local-top/lvm2 en y ajoutant un délai,ici 10 secondes, ainsi que [mono]vgchange -ay[/mono] puis actualiser /boot/initrd.img* au moyen d’update-initramfs sans altérer grub.