Multiboot et hibernation

Bonjour,

J’ai un disque dur de 80Go avec trois partitions hébergeant :
1 Debian
1 Gentoo
1 openSuse
+18 Go de données + 2Go de swap.
Les trois Linux sont installés sur 20Go.

j’ai un problème qd j’essaie d’hiberner Debian m’écrit un message d’erreur que je n’arrive pas à lire (où peut ton le retrouver ?) et fait un arrêt. openSuse affiche l’écran de veille sans rentrer en hibernation. Par contre qd je lance depuis openSuse pm-hibernate ma machine (après avoir plusieurs fois éteint et rallumer l’écran, cependant) rentre en hibernation.

Auparavant j’avais sur cette même machine un Win Xp et un openSuse et l’hibernation se faisait sans problème.

Est ce que le problème ne viendrait pas du fait que j’ai plusieurs linux se partageant le même espace de swap ?

De plus suite à l’installation des ces trois systèmes j’ai plusieurs grub installés pour l’instant je n’ose pas toucher au grub de Debian car il me semble qu’il s’agit d’une autre version que le premier et je trouve ça pratique car cela me permet de ne pas trop charger le menu me permettant de choisir le système à booter. J’utilise le grub “Debian” juste pour le choix entre les modes de démarrages de Debian. Cependant je me demande si le fait d’avoir plusieurs Grub en cascade ne serait pas aussi à l’origine de mon problème…

Merci pour vos réponses

Salut,

Grub est en deux versions, ici, démarre ta Debian fait un #os-probercela va reconnaître les différents systèmes sur ton PC, suivit d’un #update-grubTu supprime les lanceurs qui ne sont plus nécessaire, donc inutile. (Debian c’est de la balle)
Ensuite le Swap commun, je ne sais vraiment pas…Mais je veux bien l’info :slightly_smiling:

Je ne pense pas que la swap commune soit en cause car elle ne fonctionne qu’avec un OS à la fois et à l’extinction, elle est libérée.

$ man pm-is-supported

[code]

NAME
pm-is-supported - Test whether suspend or hibernate is supported.[/code]
Paquet pm-utils
$ pm-is-supported [{–suspend | --hibernate | --suspend-hybrid}]
Tu essayes les trois
$ pm-is-supported --hibernate

retour : 0/1
0 , pas de nouvelles, bonne nouvelle, supporté
1, mauvaise nouvelle, pas supporté

Grub en cascade n’est pas le problème.
Partager la swap entre plusieurs distributions est possible à condition de faire coincider les hibernations et les réveils sur la même distribution. Ne pas intercaler hibernation en swap de debian et redémarrage de Suse.
Si tu hibernes la debian et démarres Suse, la Suse ne risque pas de pouvoir rétablir la session debian…
Pire, si tu tenais compte des messages d’erreur, tu serais incité à reformater la swap à coup de mkswap et à revisiter son UUUID sur les deux distributions.

Si tu mets debian en hibernation, tu le réveilles par debian avec un démarrage approprié (option “resume”). Si tu hibernes Suse , tu le réveilles par Suse.Si tu t’astreins à cette rigueur, il n’y aura pas de problème. Si cette discipline demandée t’est inconcevable, il vaudrait mieux attribuer une swap distincte à chaque distribution.

Ben bien sûr, j’avais oublié que la swap récoltait les données en cas d’hibernation :blush:

Salut,

Mais à l’hibernation c’est la swap qui stocke les informations nécessaires au redémarrage ?

J’ai renoncé à l’hibernation, j’ai horreur des trucs qui marchent une fois sur deux. J’utilise “adaptative readahead daemon” issu de notre forum :023

Tu peux aussi suspendre en RAM.
La suspension en RAM ne nécessite pas de longues écritures et se rétablit rapidement sans options spéciales (il suffit d’appuyer sur le bouton marche).
L’avantage de l’hibernation en swap est de permettre le stockage plus longtemps que la simple suspension en RAM et de ne pas consommer d’électricité.

$ man pm-suspend

[code]
pm-suspend
During suspend most devices are shutdown, and system state is saved in RAM. The system still
requires power in this state. Most modern systems require 3 to 5 seconds to enter and leave
suspend, and most laptops can stay in suspend mode for 1 to 3 days before exhausting their
battery.

   pm-hibernate
       During hibernate the system is fully powered off, and system state is saved to disk. The system
       does not require power, and can stay in hibernate mode indefinitely. Most modern systems require
       15 to 45 seconds to enter and leave hibernate, and entering and leaving hibernate takes longer
       when you have more memory.

   pm-suspend-hybrid
       Hybrid-suspend is the process where the system does everything it needs to hibernate, but
       suspends instead of shutting down. This means that your computer can wake up quicker than for
       normal hibernation if you do not run out of power, and you can resume even if you run out of
       power. s2both(8) is an hybrid-suspend implementation.[/code]

Suspend : stocké en RAM, machine en veille qui continue à consommer de l’électricité.Rétablissement rapide. Stockage de l’état perdu à l’extinction.

hibernate : état stocké en swap, extinction de la machine. Demande écriture en swap et options de rétablissement.

hybrid : les deux précédents associés, état stocké et veille. Rétablissement plus rapide que l’hibernate (pas d’extinction).

Merci pour toutes vos réponses

En fait pour suse c’est l’hibernation qui semble prendre plus de temps avec la 12.1 et KDE4. en fait l’écran s’éteint plusieurs fois, le gestionnaire d’ouverture de session s’affiche (ce qui laisse croire une hibernation échouée)mais si on attend un peu la machine finit par hiberner. Bon… mais ce n’est pas le sujet du forum…

Pour Debian en fait les messages reçus au moment de l’hibernation concerne un problème de firmware avec Radeon600 :open_mouth: donc aucun rapport avec l’hibernation… Je ne sais pas trop ce que ça veut dire… j’ai une carte graphique ATI intégrée à la carte mère, je n’ai pas eu de problème sur les autres linux hormis le fait que je n’ai pu ou pas su installer les drivers propiétaires fglrx. Sur gentoo je crois que j’utilise Radeon700.

Sinon je viens de refaire l’essai en relançant bien Debian après avoir hiberner depuis Debian et ça fonctionne. Il me semblait que lors de mes essais précédents l’état pre-hibernation ne m’était pas restitué… Mes excuses pour cette fausse alerte, j’ai dû m’emmêler dans l’ordre des hibernetions-reboot.

Je trouve l’hibernation utile cependant, outre qu’elle permet une consommation minimale, j’ai remarqué que lors du reboot le système sollicicite moins les ressources de la machine. De plus elle permet de débrancher la machine pour la déplacer puisque tout est sur le disque dur.

Je vais regarder de quoi il retourne merci!

Oui debian est la seule distribution a proposer Grub2 par défaut, à ma connaissance. Je trouve que la version legacy est beaucoup plus facile à configurer. Mais en fait je ne sais pas comment configurer grub2 c’est peut-être pour ça… Je vais me pencher sur la doc

En effet je n’avais pas penser à ça au moment du partitionnement, il me reste 8Go (ancienne Suse 11.4) dont je ne sais que faire je crois que je vais créer un swap sur une partie de celle-ci, après tout on est pas à 2Go près et le confort apporté n’est pas négligeable…

Je ne connaissais pas cette mise en veille celle-ci n’est pas proposée ni sous Gnome ni sous KDE. on ne peut la lancer qu’en ligne de commande ?

Une dernière question : en supposant un système qui contient déjà un swap chargé au max (perso ça ne m’est jamais arrivé pour l’instant) que devienne les pages déjà swappées au moment de l’hibernation ?

Merci encore pour toutes vos réponses.

Je viens d’essayer de faire un swap pour chaque distribution le problème c’est qu’une fois que Suse a hiberner le grub n’est pas lancer au démarrage et le système reboot directement sur Suse…
Existe-t-il un moyen d’accéder au grub une fois l’hibernation faite ???

on ne peut (me semble t-il) sortir d’hibernation que sur le dernier système hiberné ; c’est du moins comme celà que ça fonctionne sur mon multiboot.je n’ai qu’un swap.

Oui car lors de l’hibernation le système qui hiberne programme le grub pour qu’il redémarre sur directement sur lui. Mais cela doit être évitable il faut changer quelquechose dans le script d’hibernation mais je ne sais pas où il est…

Le problème est surtout sur suse puisque c’est le premier grub a être chargé pour Debian comme il est chargé par le deuxième grub si j’hiberne suse je ne peux revenir sur Debian.En revanche si j’arrête Suse je peux revenir sur debian mais la sortie de l’hibernation ne se fait pas même si il existe un deuxième swap… Debian ne se lance pas (curseur figé en haut à gauche de l’écran) on est obligé de relancer à la sauvage pour relancer Debian qui effectue un redémarrage normal.
Par contre tout se passe bien si on redémarre le même système après hibernation.

Conclusion: avoir deux swap ne permet pas d’hiberner deux systèmes à la fois…

[quote=“Debian-wiki”]Par défaut, grub2 dans debian n’ajoute pas l’option ‘resume=/dev/swap-partition’ option.
Mais, si vous voulez l’ajouter par défaut, vous pouvez modifier le fichier /etc/grub.d/10_linux :

Remplacez ceci

linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}
par cela

linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args} resume=`swapon -s | grep '/dev/sd.[0-9]' -o`
Cela ajoutera la première partition swap partition à toutes les entrées Linux. [/quote]

wiki.debian.org/fr/Grub#Dual_Boot

Je ne veux pas charger les partitions swap par défaut, en fait je veux :

[ol]éviter le redémarrage automatique sous Suse après une hibernation. Quand j’hiberne depuis cet OS le redémarrage shunte grub et charge directement suse[/ol]

[ol]pouvoir hiberner un linux en lancer un autre, revenir sur Debian et retrouver son état d’avant l’hibernation. Malheureusement même avec deux swap différent Debian plante dans son retour d’hibernation si un autre OS a été chargé entre temps. Par contre si je redémarre Debian sans être passé sur un autre linux tout se passe bien[/ol]

Comment est démarré debian ?
$ cat /proc/cmdline

Assure-toi que debian ne charge pas la swap des autres distributions, vérifie les références à la swap dans le fichier /etc/fstab et la référence des “resume” de debian.
(Idem sur Suse et Gentoo: assure-toi que Suse et Gentoo n’utilisent pas la swap de debian en vérifiant leurs /etc/fstab)

[code]dev@django-deb:~$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-2.6.32-5-amd64 root=UUID=5212699b-d9d8-404d-a9b7-a840948c625b ro quiet
dev@django-deb:~$ cat /etc/fstab

/etc/fstab: static file system information.

Use ‘blkid’ to print the universally unique identifier for a

device; this may be used with UUID= as a more robust way to name devices

that works even if disks are added and removed. See fstab(5).

proc /proc proc defaults 0 0

/ was on /dev/sda4 during installation

UUID=5212699b-d9d8-404d-a9b7-a840948c625b / ext4 errors=remount-ro 0 1

swap was on /dev/sda7 during installation

UUID=1d794cbc-b585-40be-b821-0e6e1a79df1f none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
[/code]

Gentoo et Suse utilise /dev/sda5 en swap pour l’instant je n’ai pas fait mes essais sur Gentoo. Gentoo est dans une configuration minimale sur fwvm je ne compte pas faire d’hibernation dessus pour l’instant.

Je viens d’essayer un reboot après avoir utiliser Gentoo Debian ne restaure pas ma session mais fait un redémarrage normal.

Par contre quand j’hiberne et redémarre tout de suite je retrouve bien Debian comme je l’avais laissé