Domanda Come posso sospendere / ibernare dalla riga di comando?


Come posso sospendere o ibernare il mio laptop usando la riga di comando, senza installare software aggiuntivo?


310
2017-08-09 20:24


origine


Per Ubuntu 16.04, vedi questa domanda: askubuntu.com/questions/777178/suspend-command-in-ubuntu-16-04 e la sua risposta systemctl suspend - CJlano


risposte:


Tradizionalmente, Ubuntu supportava un metodo piuttosto brusco di sospensione e ibernazione. Nessuno dei due si integrerebbe bene con altre app e talvolta non funzionerebbe nemmeno su alcune macchine. Il nuovo metodo non richiede root e notifica tutte le applicazioni che ascoltano eventi power.

Metodo Systemd

A partire da Ubuntu 16.04, systemctl la chiamata deve essere utilizzata (Vedi Comando di sospensione in Ubuntu 16.04)

systemctl suspend

e

systemctl hibernate

Nuovo metodo

Vedi la risposta qui in questa pagina da Adam Paetznick per quanto riguarda l'uso di dbus. Idealmente dovresti creare un ~/bin/suspend scorciatoia / script che rende facile l'uso di questa azione.

Per l'uso su ssh, dovresti modificare le regole del policykit come delineato da Peter V. Mørch

Vecchio metodo

Secondo il Forum di Ubuntu puoi usare i seguenti comandi:

pmi action suspend

e

pmi action hibernate

Ciò richiede l'installazione del pacchetto interfaccia di powermanagement (non testato).

sudo apt-get install powermanagement-interface

Ho trovato anche i comandi sudo pm-suspend e sudo pm-hibernate lavorare sul mio netbook.


260
2017-08-09 20:32



pm-suspend e pm-hibernate funzionano per me ed è facile. Richiede sudo ma va bene. (Ho trovato l'idea di pmi prima ma installare un pacchetto per usare suspend è pessimo ...) - user1034
Nota che devi apt-get install powermanagement-interface per eseguire pmi. - nealmcb
Alle 11.10 funziona solo pm- *, anche con l'interfaccia di powermanagament aggiunta - Omegafil
non funziona con la mia ubuntu 12.10. dopo apt-get install powermanagement-interface - somethis
nuovo metodo è ora rotto vedi unix.stackexchange.com/questions/153099/... - ijk


Il modo in cui gnome è usare dbus.

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

Ci sono due vantaggi su questo comando pm-suspend.

  1. Bloccherà lo schermo (al ripristino) se l'opzione selezionata in gnome è selezionata.

  2. Non richiede il privilegio di root, quindi è facile aggiungerlo come una scorciatoia da tastiera, per esempio.

Come menzionato nei commenti scambiando il Suspend nell'ultima riga a Hibernate crea un comando di ibernazione:

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

Se il letargo getta Error org.freedesktop.UPower.GeneralError: not authorized il tuo utente potrebbe non essere autorizzato a ibernare. Modifica o crea /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla quindi contiene la seguente sezione: (fonte)

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

Questo è stato testato UbuntuGnome 14.04.

Nota: questa è sostanzialmente la stessa risposta di qbi, ma aggiornata per funzionare per le versioni più recenti di Ubuntu e per includere l'ibernazione.


185
2018-05-03 20:40



La tua risposta dovrebbe essere davvero la prima. È un modo non gnome non-root-da-installare-installato per farlo. Piace! - turbo
A Hibernate, puoi semplicemente sostituire l'ultima riga con org.freedesktop.UPower.Hibernate - Sheharyar
sul mio 13.10 funziona. tuttavia, lo schermo è non bloccato su curriculum, anche se in "Sicurezza e privacy", "Richiedi la password al risveglio dalla sospensione" è attivato. - andreas-h
Non ha funzionato per me (Gnome 3.12, Ubuntu 14.04). Sembra che l'interfaccia [UPower.Suspend] sia stata rimossa, secondo bugs.launchpad.net/ubuntu/+source/gnome-power-manager/+bug/... - Gui Ambros
L'interfaccia di sospensione è stata spostata in logind; askubuntu.com/questions/652978 - Khurshid Alam


Inglese

Se si desidera sospendere il computer in un'ora perché si desidera andare a letto ascoltando la stazione radio preferita, aprire il terminale e digitare:

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

e il tuo computer si addormenterà in 1 ora. Quando ti sveglierai, avrà mantenuto le tue immagini aperte e tutte le tue cose.

Puoi sostituire 1h da quello che vuoi: h per ore, m per minuti, s per secondi, d per giorni.

Buona notte!

Français

Si vous voulez juste que votre ordinateur se mette in mostra in un certo senso la tua vita in tutto il mondo in radio e in tutto il mondo radio, 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é en mémoire vos applications ouvertes.

Vous pouvez remplacer 1h per questo motivo: h pour les heures, m pour les minutes, s pour les secondes, d pour les jours.

Buona notte!

Español

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

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

e tu computadora se quedará dormida in 1 ora. Cuando despiertes, tutti gli habrán quedado abiertas tus imágenes y todas tus cosas.

Puedes reemplazar 1h per lo più: h para horas, m para minutos, s para segundos, d para días.

Buona notte!


52
2018-01-18 08:31



Soluzione perfetta e semplice! - wakeup
Questo è il mio caso d'uso che sto cercando! AFIK pm- * può essere eseguito senza autorizzazioni di superutente - ruX
risposta migliore, semplice, elegante, nessuna installazione di pacchetti aggiuntivi - Louis


Per Ubuntu 12.04 LTS  e Ubuntu 13.04

Per ottenere l'ibernazione:

sudo pm-hibernate

Per ottenere la sospensione:

sudo pm-suspend

30
2017-09-14 13:45



"sudo pm-suspend" non funziona su mint 13 mate :( - rsjethani
Sì, penso che quel pacchetto non sia stato installato. cercare quei pacchetti in synaptic. - Ten-Coin
il pacchetto è installato, penso che 'mate-power-manager' stia interferendo con esso. - rsjethani
Lo svantaggio di questo metodo è che se si utilizza la GUI, pm-suspend NON bloccherà la sessione, che può essere insicura. - Raúl Salinas-Monteagudo
Funziona anche su Ubuntu 15.10. - Searene


Puoi usare il file /sys/power/state per fare questo. Per prima cosa scopri quali sono gli stati supportati:

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 via dbus:

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

Secondo questo voce nel launchpad l'interfaccia di cui sopra è stata rimossa. Quindi non funzionerebbe più su Ubuntu.


22
2017-08-09 20:35



La prima idea mi dà: "bash: echo: errore di scrittura: argomento non valido" Dbus idea fornisce output: "Errore org.freedesktop.DBus.Error.UnknownMethod: metodo" Sospendi "con firma" "sull'interfaccia" org.gnome.PowerManager " non esiste " - user1034
Ho aggiunto una piccola spiegazione al /sys/power/state-cosa. Inoltre il metodo dbus è stato rimosso da Ubuntu quindi non funzionerà più. - qbi
$ sudo echo -n mem > /sys/power/state - bash: /sys/power/state: Permission denied - Hubro
Funziona alla grande Per le persone che hanno problemi con questo metodo quando si usa sudo, la "pipe to file", alias ">" è in esecuzione nella shell corrente, quindi non ottiene i privilegi di super utente durante l'eco. Dovrai usare sudo -i prima o pipe to sudo tee così: echo mem | sudo tee /sys/power/state - RandomInsano


Per spegnere un sistema (14.04) dalla riga di comando (o una scorciatoia da tastiera) usa:

dbus-send --system --print-reply --dest="org.freedesktop.login1" /org/freedesktop/login1 org.freedesktop.login1.Manager.PowerOff boolean:true

Ho scoperto questo giocando con gdbus che può elencare le interfacce disponibili:

Per elencare i servizi disponibili sul bus:

dbus-send --system --dest=org.freedesktop.DBus --type=method_call --print-reply /org/freedesktop/DBus org.freedesktop.DBus.ListNames

Per trovare i metodi:

gdbus introspect --system --dest org.freedesktop.login1 --object-path /org/freedesktop/login1 --recurse

11
2017-08-07 15:08





La risposta di dbus-send di Adam Paetznick non ha funzionato come pretesa per me su lucido; la macchina si è svegliata sbloccata, anche se gnome-power-manager è impostato per bloccare lo schermo al risveglio. Voglio che lo schermo sia bloccato alla sveglia e ho scoperto che quanto segue:

$ gnome-screensaver-command --lock && pmi action hibernate

Immagino che questo non dipenda dalla configurazione di gnome, ma non l'ho provato.


8
2018-05-15 16:07



Bello. O xscreensaver-command --lock nel caso che fosse. - phyzome


da 15.04 systemD è il sistema init standard, quindi è necessario utilizzare un nuovo comando:

systemctl suspend

8
2017-11-27 13:36



Sto usando Xubuntu 15.04. Il comando systemctl suspend non sospende il computer, ma non causa il blocco dello schermo, anche se ho selezionato la casella di controllo "Blocca schermo quando il sistema sta andando a dormire" in Impostazioni -> Power Manager -> Sicurezza. Qualcuno ha qualche idea del perché? - Teemu Leisti
Ho aggiornato a Xubuntu 16.04. Il comando systemctl suspend sospende ancora il computer. Ora, fa sì che lo schermo sia bloccato, se e solo se la casella di controllo "Blocca schermo quando il sistema sta andando a dormire" in Impostazioni -> Power Manager -> Sicurezza è selezionata. - Teemu Leisti


Nuova interfaccia

... che funziona in 15.10 Wily, e forse Utopic e Vivid.

dbus-send --print-reply --system                         \
    --dest=org.freedesktop.login1                        \
    /org/freedesktop/login1                              \
    org.freedesktop.login1.Manager.Suspend boolean:true

Sicuramente questo non richiede sudo, a differenza del pm-suspend comando.


2
2017-11-18 18:09



Il mio XPS 13 9350 con Debian / Gnome era con problemi di sospensione / ibernazione quando si chiudeva il coperchio. Dopo aver eseguito questo comando (e l'equivalente per la sospensione), è andato a buon fine in sospensione (e ibernazione) e ora la chiusura e l'apertura del coperchio funzionano come previsto! - Victor Schröder