Comment puis-je suspendre/hiberner à partir de la ligne de commande ?

Comment suspendre ou mettre en hibernation mon ordinateur portable en utilisant la ligne de commande, sans installer de logiciel supplémentaire ?

Solution

Traditionnellement, ubuntu supportait une méthode assez grossière de suspension et d'hibernation. Ni l'une ni l'autre ne s'intégrait bien avec d'autres applications et parfois même ne fonctionnait pas sur certaines machines. La nouvelle méthode ne nécessite pas d'être rooté et notifie toutes les applications qui écoutent les événements d'alimentation.

Méthode Systemd

À partir d'Ubuntu 16.04, l'appel systemctl doit être utilisé (voir [Commande de suspension dans Ubuntu 16.04][1]).

systemctl suspend

et

systemctl hibernate

Nouvelle méthode

Voir la réponse ici sur cette page d'Adam Paetznick concernant l'utilisation de dbus. Idéalement, vous devriez créer un raccourci/script ~/bin/suspend qui facilite l'utilisation de cette action.

Pour une utilisation via ssh, vous devriez modifier les règles de policykit comme indiqué par Peter V. Mørch.

Ancienne méthode

Selon le [Forum Ubuntu][4], vous pouvez utiliser les commandes suivantes :

pmi action suspend

et

pmi action hibernate

Cela nécessite l'installation du paquetage powermanagement-interface (non testé).

sudo apt-get install powermanagement-interface

J'ai également trouvé les commandes sudo pm-suspend et sudo pm-hibernate pour fonctionner sur mon netbook.

[1] : https://askubuntu.com/questions/777178/suspend-command-in-ubuntu-16-04

[4] : http://ubuntuforums.org/showthread.php?t=813387

Commentaires (10)

Anglais

Si vous voulez que votre ordinateur soit suspendu dans une heure parce que vous voulez aller vous coucher en écoutant votre station de radio préférée, ouvrez le terminal et tapez :

sudo bash -c "sleep 1h; pm-suspend"

et votre ordinateur s'endormira dans une heure. Lorsque vous vous réveillerez, il aura conservé vos images ouvertes et toutes vos affaires.

Vous pouvez remplacer 1h par ce que vous voulez : h pour les heures, m pour les minutes, s pour les secondes, d pour les jours.

Bonne nuit !

Français

Si vous voulez juste que votre ordinateur se mette en veille dans une heure parce que vous voulez vous endormir en écoutant votre radio préférée, ouvrez Terminal et tapez :

sudo bash -c "sleep 1h; pm-suspend"

et votre ordinateur s'endormira dans une heure. Quand vous réveillerez, il aura conserv&#233 ; en mémoire vos applications ouvertes.

Vous pouvez remplacer 1h par ce que vous voulez : h pour les heures, m pour les minutes, s pour les secondes, d pour les jours.

Bonne nuit !

Español

Si tu veux suspendre ton ordinateur pendant une heure pour aller dormir en écoutant ta radio préférée, il suffit d'ouvrir le terminal et d'écrire :

sudo bash -c "sleep 1h; pm-suspend"

y tu computadora se quedar&#225 ; dormida en 1 hora. Cuando despiertes, all&#237 ; habrán quedado abiertas tus imágenes y todas tus cosas.

Puedes reemplazar 1h por lo que desees : h para horas, m para minutos, s para segundos, d para días.

¡Buenas noches !

Commentaires (1)

Vous pouvez utiliser le fichier /sys/power/state pour le faire. Trouvez d'abord quels sont les états supportés :

user@linux:_> cat /sys/power/state
standby mem disk

root@linux:~> echo -n mem > /sys/power/state  # suspend to ram
root@linux:~> echo -n disk > /sys/power/state  # suspend to disk

ou via dbus :

Suspendre

dbus-send --session --dest=org.gnome.PowerManager \
  --type=method_call --print-reply --reply-timeout=2000 \ 
  /org/gnome/PowerManager org.gnome.PowerManager.Suspend

#Hibernate
dbus-send --session --dest=org.gnome.PowerManager \
  --type=method_call --print-reply --reply-timeout=2000 \ 
  /org/gnome/PowerManager org.gnome.PowerManager.Hibernate

Selon cette [entrée dans launchpad][1], l'interface ci-dessus a été supprimée. Elle ne fonctionnerait donc plus dans Ubuntu.

[1] : https://bugs.launchpad.net/ubuntu/+source/gnome-power-manager/+bug/554899

Commentaires (4)