Mise en place
Si la mise en veille sur ram (suspendre) ou sur disque (hiberner) ne fonctionne pas, il est possible d'utiliser une autre méthode utilisant le paquet uswsusp.
Pour essayer l'hibernation :
sudo s2disk
Pour la mise en veille sur ram :
sudo s2ram
Utiliser uswsusp par défault dans Ubuntu
1ère méthode
dpkg-divert permet de changer le chemin d'un fichier d'un paquet.
sudo dpkg-divert --rename --divert /usr/sbin/pmi-disabled /usr/sbin/pmi
2ème méthode
Télécharger ces 2 fichiers :
Puis lancer ces commandes dans le répertoire où ces fichiers ont été téléchargés :
sudo cp hal-system-* /usr/lib/hal/scripts/linux/ sudo chmod 755 /usr/lib/hal/scripts/linux/*
Remarque:
Pour Ubuntu, il y a une erreur dans le fichier. Le lien vers s2disk n'est pas complet. Dans "hal-system-power-hibernate-linux" et "hal-system-power-suspend-linux", voir le code ci-dessous, il faut remplacer "/sbin/s2disk" par "/usr/sbin/s2disk" sur les deux lignes.
else if [ -x "/sbin/s2disk" ] ; then # uswsusp tools installed /sbin/s2disk RET=$?
Problèmes connus
Si vous obtenez un message du type :
s2disk: Could not stat the resume device file. Reason: No such file or directory
1- Essayer cette commande :
sudo swapon -a
Puis réessayer sudo s2disk. Si ça retourne quelque chose comme
swapon: cannot stat /dev/disk/by-uuid/15ed6769-566c-4228-bb35-d9a0131dc42c: No such file or directory
Alors :
2- Vérifier qu'il y a bien une partition swap et que son UUID correspond bien à celui de fstab :
sudo blkid
pour avoir l'uuid de la partition swap, puis
sudo xdg-open /etc/fstab
pour modifier l'uuid correspondant Puis redémarrer l'ordinateur
3- Vérifier le fichier uswsusp.conf
sudo xdg-open /etc/uswsusp.conf
Vérifier les lignes suivantes, en adaptant /dev/sda2 en fonction de ce que vous a retourné blkid pour la partition swap :
snapshot device = /dev/snapshot resume device = /dev/sda2
4- Reconfigurer uswsusp :
sudo dpkg-reconfigure uswsusp