J’ai manipulé mes partitions sur mon PC portable et j’avais déjà eu ce message d’erreur au boot de debian que j’ai résolu grâce à ce post.
J’ai donc réessayé cette méthode mais sans succès. J’ai cherché sur le net sans succès:
j’ai modifié et régénéré le grub avec ce qui est indiqué dans ce post (ajout de “noresume”).
j’ai reformaté la partition swap et inscrit de nouveau le nouvel UUID dans le fstab et dans le /etc/initramfs-tools/conf.d/resume avec 'resume=UUID=de3cf…"
j’avais trouvé un post où il fallait supprimer l’entrée dans /proc/sys mais pas réussi à le modifier malgré le changement de droit en 644 avec root. J’ai pas insisté car cela m’a paru sensible.
j’ai aussi cherché “gave up” dans les logs sur /var/log avec 'grep -Rinw /var/log -e ‘gave up’ mais rien n’est ressorti.
L’exécution d’update-initramfs n’a pas produit d’avertissement concernant le swap ?
Y a-t-il un paramètre resume dans /proc/cmdline ? Dans /etc/default/grub ? Dans un des fichiers quelconque dans /etc/initramfs-tools ?
update-initramfs: Generating /boot/initrd.img-4.9.0-8-amd64
I: The initramfs will attempt to resume from /dev/sda2
I: (UUID=de3cfc4b-bf50-4fd0-83e4-95b21193e0b6)
I: Set the RESUME variable to override this.
Au fait, c’est RESUME= et non resume= (cf. man initramfs.conf).
Mais cela ne devrait rien changer puisqu’en l’absence de cette variable update-initramfs prend en compte l’UUID du swap actif, comme on peut le voir dans les messages d’information.
Peux-tu montrer le paragraphe de l’entrée de menu dans /boot/grub/grub.cfg ?
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="0"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 f06b156c-05e5-43f9-90fe-7ac7e294e218
else
search --no-floppy --fs-uuid --set=root f06b156c-05e5-43f9-90fe-7ac7e294e218
fi
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=fr_FR
insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
set timeout=30
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 f06b156c-05e5-43f9-90fe-7ac7e294e218
else
search --no-floppy --fs-uuid --set=root f06b156c-05e5-43f9-90fe-7ac7e294e218
fi
insmod png
if background_image /usr/share/desktop-base/softwaves-theme/grub/grub-4x3.png; then
set color_normal=white/black
set color_highlight=black/white
else
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-f06b156c-05e5-43f9-90fe-7ac7e294e218' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 f06b156c-05e5-43f9-90fe-7ac7e294e218
else
search --no-floppy --fs-uuid --set=root f06b156c-05e5-43f9-90fe-7ac7e294e218
fi
echo 'Chargement de Linux 4.9.0-8-amd64…'
linux /boot/vmlinuz-4.9.0-8-amd64 root=UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 ro quiet noresume
echo 'Chargement du disque mémoire initial…'
initrd /boot/initrd.img-4.9.0-8-amd64
}
submenu 'Options avancées pour Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-f06b156c-05e5-43f9-90fe-7ac7e294e218' {
menuentry 'Debian GNU/Linux, avec Linux 4.9.0-8-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.9.0-8-amd64-advanced-f06b156c-05e5-43f9-90fe-7ac7e294e218' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 f06b156c-05e5-43f9-90fe-7ac7e294e218
else
search --no-floppy --fs-uuid --set=root f06b156c-05e5-43f9-90fe-7ac7e294e218
fi
echo 'Chargement de Linux 4.9.0-8-amd64…'
linux /boot/vmlinuz-4.9.0-8-amd64 root=UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 ro quiet noresume
echo 'Chargement du disque mémoire initial…'
initrd /boot/initrd.img-4.9.0-8-amd64
}
menuentry 'Debian GNU/Linux, with Linux 4.9.0-8-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.9.0-8-amd64-recovery-f06b156c-05e5-43f9-90fe-7ac7e294e218' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 f06b156c-05e5-43f9-90fe-7ac7e294e218
else
search --no-floppy --fs-uuid --set=root f06b156c-05e5-43f9-90fe-7ac7e294e218
fi
echo 'Chargement de Linux 4.9.0-8-amd64…'
linux /boot/vmlinuz-4.9.0-8-amd64 root=UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 ro single
echo 'Chargement du disque mémoire initial…'
initrd /boot/initrd.img-4.9.0-8-amd64
}
menuentry 'Debian GNU/Linux, avec Linux 4.9.0-6-amd64' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.9.0-6-amd64-advanced-f06b156c-05e5-43f9-90fe-7ac7e294e218' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 f06b156c-05e5-43f9-90fe-7ac7e294e218
else
search --no-floppy --fs-uuid --set=root f06b156c-05e5-43f9-90fe-7ac7e294e218
fi
echo 'Chargement de Linux 4.9.0-6-amd64…'
linux /boot/vmlinuz-4.9.0-6-amd64 root=UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 ro quiet noresume
echo 'Chargement du disque mémoire initial…'
initrd /boot/initrd.img-4.9.0-6-amd64
}
menuentry 'Debian GNU/Linux, with Linux 4.9.0-6-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.9.0-6-amd64-recovery-f06b156c-05e5-43f9-90fe-7ac7e294e218' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6 f06b156c-05e5-43f9-90fe-7ac7e294e218
else
search --no-floppy --fs-uuid --set=root f06b156c-05e5-43f9-90fe-7ac7e294e218
fi
echo 'Chargement de Linux 4.9.0-6-amd64…'
linux /boot/vmlinuz-4.9.0-6-amd64 root=UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 ro single
echo 'Chargement du disque mémoire initial…'
initrd /boot/initrd.img-4.9.0-6-amd64
}
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_uefi-firmware ###
menuentry 'System setup' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
### END /etc/grub.d/30_uefi-firmware ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
La seconde contient “/boot” et “noresume” en plus.
Peux-tu redémarrer et, au menu de GRUB, appuyer sur la touche “e” pour vérifier ce qui est vraiment exécuté ?
Le paramètre noresume dans grub.cfg devrait provenir de la ligne GRUB_CMDLINE_LINUX ou GRUB_CMDLINE_LINUX_DEFAULT dans /etc/default/grub, et dans ce cas la recherche de resume aurait dû le trouver.
Oui. Comme dit dans mon premier post, j’avais modifié le /etc/default/grub en ajoutant un ‹ noresume ›
Mon grep ne contenait pas de « * » donc n’a pas trouvé ce noresume.
Je viens de l’effacer et de faire un update-grub et de rebooter mais le problème persiste.
D’après cette entrée, GRUB va chercher le noyau et l’initramfs à la racine de la partition système EFI, donc dans /boot/efi. Et je suppose qu’il va chercher grub.cfg dans /boot/efi/grub, ce qui pourrait résulter d’une installation de GRUB avec la partition EFI montée sur /boot ou en spécifiant --boot-directory=/boot/efi. Du coup tu peux modifier tout ce que tu veux dans /boot et /boot/grub, ça n’a aucun effet.
Ça te rappelle quelque chose ?
Pour remettre comme il faut, réinstaller GRUB en exécutant grub-install.
Pour la petite histoire, j’avais supprimé la partition où grub était installée. J’avais dû rebooter sur une clé usb avec systemrescuecd pour recréer une partition et réinstaller grub. J’ai tâtonné donc j’ai sûrement fait une erreur comme celle que tu décris.
petite question: J’ai deux images grub dans /boot. Je peux en supprimer une non? (vmlinuz-4.9.0-6-amd64)
Puis faire un update-grub?
vmlinuz-4.9.0-6-amd64 n’est pas une image de GRUB mais du noyau, d’une ancienne version. Pour la supprimer, il faut désinstaller le paquet linux-image-4.9.0-6-amd64 auquel elle appartient. Cela exécutera automatiquement update-grub pour mettre à jour le menu de GRUB.
Tu peux aussi faire du nettoyage dans /boot/efi (pas dans /boot !) en supprimant les fichiers comme vmlinuz-4.9.0-8-amd64 et initrd.img-4.9.0-8-amd64 et le répertoire grub qui doivent s’y trouver. /boot/efi devrait contenir seulement un répertoire “EFI”.