443 votos

¿Cómo puedo suspender/hibernar desde la línea de comandos?

¿Cómo puedo suspender o hibernar mi portátil utilizando la línea de comandos, sin instalar software adicional?

4 votos

Para Ubuntu 16.04, vea esta pregunta: askubuntu.com/questions/777178/suspender-comando-en-ubuntu-16-04 y su respuesta systemctl suspend

426voto

Joel Spolsky Puntos 22686

Tradicionalmente ubuntu soportaba un método bastante contundente de suspensión e hibernación. Ninguno de los dos se integraba bien con otras aplicaciones y a veces ni siquiera funcionaba en algunas máquinas. Este nuevo método no requiere root y notifica a todas las aplicaciones que escuchan eventos de energía.

Método Systemd

A partir de Ubuntu 16.04, systemctl debe ser utilizado (Ver Comando de suspensión en Ubuntu 16.04 )

systemctl suspend

y

systemctl hibernate

Nuevo método (obsoleto)

Obsoleto alrededor de Ubuntu 16.04; utilice systemctl en su lugar, como en el caso anterior.

Vea la respuesta aquí en esta página de Adam Paetznick sobre el uso de dbus . Lo ideal sería crear un ~/bin/suspend atajo/script que facilita el uso de esta acción.

Para su uso a través de ssh, debe modificar las reglas de policykit según Peter V. Mørch

Método antiguo

Según el Foro de Ubuntu puede utilizar los siguientes comandos:

pmi action suspend

y

pmi action hibernate

Para ello es necesario instalar el paquete powermanagement-interface (no probado).

sudo apt-get install powermanagement-interface

También he encontrado los comandos sudo pm-suspend y sudo pm-hibernate para trabajar en mi netbook.

26 votos

Pm-suspender y pm-hibernar me funciona y es fácil. Requiere sudo pero está bien. (Encontré la idea de pmi antes pero instalar un paquete para usar suspender es bien malo...)

0 votos

Se ha añadido sudo a la descripción

1 votos

Tenga en cuenta que tiene que apt-get install powermanagement-interface para ejecutar pmi.

192voto

Adam Paetznick Puntos 1839

La forma más amigable para gnome es usar dbus.

dbus-send --system --print-reply \
    --dest="org.freedesktop.UPower" \
    /org/freedesktop/UPower \
    org.freedesktop.UPower.Suspend

Este comando tiene dos ventajas sobre pm-suspend .

  1. Bloqueará tu pantalla (al reanudar) si tienes esa opción seleccionada en gnome.

  2. No requiere privilegios de root, por lo que es fácil añadirlo como atajo de teclado, por ejemplo.

Como se mencionó en los comentarios intercambiando el Suspend en la última línea a Hibernate crea un comando de hibernación:

dbus-send --system --print-reply \
    --dest="org.freedesktop.UPower" \
    /org/freedesktop/UPower \
    org.freedesktop.UPower.Hibernate

Si la hibernación arroja Error org.freedesktop.UPower.GeneralError: not authorized es posible que su usuario no pueda hibernar. Editar o crear /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla por lo que contiene la siguiente sección: (fuente)

[Re-enable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

Esto se probó en UbuntuGnome 14.04 .

Nota: Esto es básicamente lo mismo que la respuesta de qbi, pero actualizado para que funcione con las versiones más nuevas de Ubuntu, además de incluir hibernación.

17 votos

Su respuesta debería ser la primera. Es la forma de hacer gnome no root sin paquetes a instalar. ¡Como!

1 votos

¡Esa es la respuesta correcta! :D

1 votos

AFAIK hay otra ventaja: permite que otro programa detecte que se ha suspendido/reanudado y actúe en consecuencia (por ejemplo un IM para reanudar una conexión de red a un servidor).

63voto

Xn0vv3r Puntos 7778

Inglés

Si quieres que tu ordenador se suspenda en una hora porque quieres irte a la cama escuchando tu emisora de radio favorita, abre el terminal y escribe:

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

y tu ordenador se dormirá en 1 hora. Cuando se despierte, habrá conservado sus imágenes abiertas y todas sus cosas.

Puede sustituir 1h por lo que quieres: h durante horas, m por minutos, s por segundos, d durante días.

¡Buenas noches!

Français

Si sólo quieres que tu ordenador se duerma en una hora porque quieres quedarte dormido escuchando tu radio favorita, abre Terminal y escribe :

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

y tu ordenador se pondrá a dormir en una hora. Cuando te despiertes, habrá mantenido tus aplicaciones abiertas en la memoria.

Puedes reemplazarla 1h por lo que usted desea: h para las horas, m para los minutos, s para los segundos, d para los días.

¡Bonne nuit!

English

Si quieres suspender tu computadora en una hora porque quieres ir a dormir escuchando tu estación de radio favorita, tan solo abre el terminal y escribe:

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

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

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

¡Buenas noches!

0 votos

¡Ese es mi caso de uso que estoy buscando! AFIK pm-* se puede ejecutar sin permisos de superusuario

0 votos

Evidentemente, esta solución necesita la pm-utils suite: apt-get install -y pm-utils :-)

35voto

Zian Choy Puntos 1510

Para conseguir la Hibernación:

sudo pm-hibernate

Para obtener Suspender:

sudo pm-suspend

0 votos

"sudo pm-suspender" no funciona en mint 13 compañero :(

0 votos

Sí, creo que ese paquete no se instaló. Busca esos paquetes en synaptic.

0 votos

El paquete está instalado, creo que 'mate-power-manager' está interfiriendo con él.

25voto

John Kaster Puntos 145

Puede utilizar el archivo /sys/power/state para hacerlo. En primer lugar, averigüe qué estados son compatibles:

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

o a través de dbus:

# Suspender dbus-send --session --dest=org.gnome.PowerManager \N -type=method_call --print-reply --reply-timeout=2000 --type=method_call --print-reply --reply-timeout=2000 \N -sesión --destino=org.gnome.PowerManager /org/gnome/PowerManager org.gnome.PowerManager.Suspender #Hibernate dbus-send --session --dest=org.gnome.PowerManager --type=method_call --print-reply --reply-timeout=2000 \N -sesión --destino=org.gnome.PowerManager /org/gnome/PowerManager org.gnome.PowerManager.Hibernate

Según esto entrada en launchpad la interfaz anterior fue eliminada. Así que ya no funcionaría en Ubuntu.

0 votos

La primera idea me da: "bash: echo: write error: Invalid argument" La idea de Dbus da la salida: "Error org.freedesktop.DBus.Error.UnknownMethod: El método "Suspender" con la firma "" en la interfaz "org.gnome.PowerManager" no existe"

0 votos

He añadido una pequeña explicación a la /sys/power/state -cosa. Además el método dbus fue eliminado de Ubuntu por lo que ya no funcionará.

0 votos

$ sudo echo -n mem > /sys/power/state - bash: /sys/power/state: Permission denied

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X