Gave up waiting for suspend/resume device

Bonjour,

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.

Si quelqu’un a une idée…

Inutile. Debian ne renseigne pas le swap d’hibernation dans la ligne de commande du noyau mais dans l’initramfs.

Est-ce que tu as reconstruit l’initramfs ensuite avec update-initramfs -u ?

Ridicule.

Bonjour Pascal,

Pour info je ne me suis pas encore lancé dans les modifications dont on a parlé pour mon serveur perso ici.

Oui cela a été fait.
Voilà différents ouput:

  • /etc/initramfs-tools/conf.d/resume:
resume=UUID=de3cfc4b-bf50-4fd0-83e4-95b21193e0b6
  • /etc/fstab:
#		<file system>                  <mount point>   <type>        <options>        			<dump>   <pass>

# /dev/sda1 /boot/efi
UUID=F037-1EC0  			  	/boot/efi       vfat       umask=0077      	 		  0        1

# /dev/sda6 - racine
UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 	/               ext4       errors=remount-ro 	 		  0        1
 
# /dev/sda2 swap
UUID=de3cfc4b-bf50-4fd0-83e4-95b21193e0b6	none            swap            sw             	 		  0        0
#

# Freebox
//192.168.1.254/Disque\040dur/ 		  	/media/freebox  cifs 	netdev,rw,iocharset=utf8,uid=1000,gid=users,credentials=/home/laurent/freebox.credentials,sec=ntlm,file_mode=0777,dir_mode=0777 0 0
  • Sauvegarde avec cfdisk:
label: gpt
label-id: 1CED6F9A-510A-4329-B2D6-ACBFA7ED511E
device: /dev/sda
unit: sectors
first-lba: 34
last-lba: 500118158

/dev/sda1 : start=        2048, size=      532480, type=21686148-6449-6E6F-744E-656564454649, uuid=C7298386-60D0-44F6-9152-1AE85F549E9E
/dev/sda2 : start=   489631744, size=    10485760, type=0657FD6D-A4AB-43C4-84E5-0933C84B4F4F, uuid=66B694D9-0B71-4E50-9A4B-B9CB611F5130
/dev/sda6 : start=      534528, size=   489097216, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=A78BEB43-4FBE-492F-A7AD-9D0094FB39D9
  • lsblk:
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 238,5G  0 disk 
├─sda1   8:1    0   260M  0 part /boot/efi
├─sda2   8:2    0     5G  0 part [SWAP]
└─sda6   8:6    0 233,2G  0 part /
  • blkid:
/dev/sda1: SEC_TYPE="msdos" UUID="F037-1EC0" TYPE="vfat" PARTUUID="c7298386-60d0-44f6-9152-1ae85f549e9e"
/dev/sda2: UUID="de3cfc4b-bf50-4fd0-83e4-95b21193e0b6" TYPE="swap" PARTUUID="66b694d9-0b71-4e50-9a4b-b9cb611f5130"
/dev/sda6: UUID="f06b156c-05e5-43f9-90fe-7ac7e294e218" TYPE="ext4" PARTUUID="a78beb43-4fbe-492f-a7ad-9d0094fb39d9"

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 ?

output de update-initramfs -u:

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.

Voici le contenu (donc non):

BOOT_IMAGE=/vmlinuz-4.9.0-8-amd64 root=UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 ro quiet

J’ai recherché avec vim ("/") et non

Oui dans /etc/initramfs-tools/conf.d/resume en cherchant avec

grep -Rinw etc/initramfs-tools  -e 'resume'

Son contenu pointe vers le bon UUID du swap:

resume=UUID=de3cfc4b-bf50-4fd0-83e4-95b21193e0b6

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 ###

Curieux, la ligne de commande dans /proc/cmdline

/vmlinuz-4.9.0-8-amd64 root=UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 ro quiet

est légèrement différente de celle dans grub.cfg

/boot/vmlinuz-4.9.0-8-amd64 root=UUID=f06b156c-05e5-43f9-90fe-7ac7e294e218 ro quiet noresume

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.

Y’a pas indiqué le /boot donc c’est le /proc/cmdline mais en faisant un ls sur la racine:

lrwxrwxrwx   1 root    root      26 oct.  28 06:24 vmlinuz -> boot/vmlinuz-4.9.0-8-amd64
lrwxrwxrwx   1 root    root      26 mars  27  2018 vmlinuz.old -> boot/vmlinuz-4.9.0-6-amd64

Pourrais-tu poster le contenu entier de l’entrée de menu, en raccourcissant les UUID aux premiers caractères ?

Uhm… alors j’ai pas réussi à comprendre le copier-coller donc… euh… voilà :sweat_smile:
(clic droit puis “afficher l’image” pour voir en plus grand)

20190227_162216

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.

Bravo, énorme et merci !

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”.