it-swarm-eu.dev

Wie kann ich über die Befehlszeile den Ruhezustand aktivieren / deaktivieren?

Wie kann ich meinen Laptop über die Befehlszeile anhalten oder in den Ruhezustand versetzen, ohne zusätzliche Software zu installieren?

354
user1034

Ubuntu unterstützte traditionell eine ziemlich stumpfe Methode für das Anhalten und den Ruhezustand. Beides lässt sich nicht gut in andere Apps integrieren und funktioniert auf einigen Computern manchmal nicht. Die neue Methode erfordert kein Root und benachrichtigt alle Anwendungen, die auf Stromereignisse warten.

Systemd-Methode

Ab Ubuntu 16.04 muss der Aufruf systemctl verwendet werden (Siehe Befehl unter Ubuntu 16.04 anhalten )

systemctl suspend

und

systemctl hibernate

Neue Methode

Siehe die Antwort hier auf dieser Seite von Adam Paetznick zur Verwendung von dbus . Idealerweise würden Sie eine Verknüpfung/ein Skript für ~/bin/suspend erstellen, das die Verwendung dieser Aktion vereinfacht.

Für die Verwendung über ssh sollten Sie Policykit-Regeln ändern, wie von Peter V. Mørch beschrieben

Alte Methode

Laut buntu Forum können Sie folgende Befehle verwenden:

pmi action suspend

und

pmi action hibernate

Dies setzt voraus, dass Sie das Paket powermanagement-interface installieren (nicht getestet).

Sudo apt-get install powermanagement-interface

Ich habe auch die Befehle Sudo pm-suspend und Sudo pm-hibernate gefunden, um an meinem Netbook zu arbeiten.

306
txwikinger

Die gnome-freundliche Methode ist die Verwendung von dbus.

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

Dieser Befehl hat gegenüber pm-suspend zwei Vorteile.

  1. Es wird Ihren Bildschirm (nach dem Fortsetzen) sperren, wenn Sie diese Option in gnome ausgewählt haben.

  2. Es ist kein Root-Privileg erforderlich, so dass es zum Beispiel einfach ist, es als Tastaturkürzel hinzuzufügen.

Wie in den Kommentaren erwähnt, wird durch Austauschen von Suspend in der letzten Zeile zu Hibernate ein Ruhezustand-Befehl erstellt:

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

Wenn der Ruhezustand Error org.freedesktop.UPower.GeneralError: not authorized auslöst, kann Ihr Benutzer möglicherweise nicht in den Ruhezustand wechseln. Bearbeiten oder erstellen Sie /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla, sodass der folgende Abschnitt enthalten ist: (source)

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

Dies wurde getestet auf buntuGnome 14.04 .

Hinweis: Dies entspricht im Wesentlichen der Antwort von qbi, wurde jedoch so aktualisiert, dass sie für neuere Versionen von Ubuntu sowie für den Ruhezustand geeignet ist.

187
Adam Paetznick

Englisch

Wenn Sie möchten, dass Ihr Computer in einer Stunde angehalten wird, weil Sie zu Bett gehen und Ihren Lieblingsradiosender hören möchten, öffnen Sie das Terminal und geben Sie Folgendes ein:

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

und Ihr Computer wird in 1 Stunde einschlafen. Wenn Sie aufwachen, hat es Ihre offenen Bilder und all Ihre Sachen behalten.

Sie können 1h durch das ersetzen, was Sie möchten: h für Stunden, m für Minuten, s für Sekunden, d für Tage.

Gute Nacht!

Français

Sie haben die Möglichkeit, Ihre Wahl zu treffen, wenn Sie einen Termin für eine Sendung mit Radioempfang oder eine Sendung mit folgenden Angaben haben:

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

et votre ordinateur s'endormira dans une heure. Sie können die Aura konservieren und mehr über Anwendungen erfahren.

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.

Gute Nacht!

Español

Sie können den Suspender für den Computer und die Porque-Quieres für die Radio-Favoriten-Funktion auswählen und wie folgt vorgehen:

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 desees: h para horas, m para minutos, s para segundos, d para días.

Gute Nacht!

57
greg

Für buntu 12.04 LTS und buntu 13.04

So erhalten Sie den Ruhezustand:

Sudo pm-hibernate

Suspend erhalten:

Sudo pm-suspend
31
rɑːdʒɑ

Sie können dazu die Datei /sys/power/state verwenden. Finden Sie zuerst heraus, welche Zustände unterstützt werden:

[email protected]:_> cat /sys/power/state
standby mem disk

[email protected]:~> echo -n mem > /sys/power/state  # suspend to ram
[email protected]:~> echo -n disk > /sys/power/state  # suspend to disk

oder über dbus:

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

Dementsprechend wurde Eintrag im Launchpad die obige Oberfläche entfernt. In Ubuntu würde es also nicht mehr funktionieren.

22
qbi

Um ein System (14.04) über die Befehlszeile (oder die Tastenkombination) herunterzufahren, verwenden Sie:

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

Ich habe das durch Herumspielen mit gdbus herausgefunden, das die verfügbaren Schnittstellen auflisten kann:

So listen Sie die im Bus verfügbaren Dienste auf:

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

So finden Sie die Methoden:

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

da 15.04 systemD das Standard-Init-System ist, muss ein neuer Befehl verwendet werden:

systemctl suspend
12
k1l

Adam Paetznicks dbus-send-Antwort funktionierte nicht so, wie ich es mir bei lucid vorgestellt hatte. Die Maschine ist entsperrt aufgewacht, obwohl der Gnome-Power-Manager so eingestellt ist, dass der Bildschirm beim Aufwecken gesperrt wird. Ich möchte, dass der Bildschirm beim Aufwecken gesperrt wird, und habe festgestellt, dass dies folgendermaßen funktioniert:

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

Ich stelle mir vor, das hängt nicht von der Gnomenkonfiguration ab, aber ich habe das nicht getestet.

8

Neue Schnittstelle

… Was in 15.10 Wily und möglicherweise Utopic and Vivid funktioniert.

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

Dies erfordert im Gegensatz zum Befehl pm-suspend kein Sudo.

3
Gringo Suave

So versetzen Sie einen Remote-Computer über ssh in den Standby-Modus:

 ssh -t 192.168.1.4 'Sudo Nohup &>/dev/null bash -c "(schlaf 1; echo -n mem>/sys/power/state) &"' 
 x @ 192.168.1.4s Passwort: 
 [Sudo] Passwort für x: 
 Verbindung zu 192.168.1.4 geschlossen. 

/ sys/power/state funktioniert in Ubuntu 13.10. pmi gibt einen Dbus-Fehler aus.

1
user229115

Update für alle, die wie ich noch mit KDE/Ubuntu 14.04 arbeiten. Verwenden Sie zum Sperren qdbus und zum Anhalten dbus. Voller Befehl:

qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock && dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend

Um in den Ruhezustand zu wechseln, d. H. Auf die Festplatte anstatt auf den Arbeitsspeicher zu wechseln, ersetzen Sie 'Suspend' am Ende des Befehls durch 'Hibernate'.

Um den Bildschirm nur zu sperren, ohne ihn anzuhalten, funktioniert xscreensaver-command -lock, WENN Sie nur 1 Bindestrich für die Option '-lock' eingeben und nur, wenn der Bildschirmschoner ausgeführt wird. Eigentlich kein sehr nützlicher Befehl. Die Verwendung von i3lock ist einfacher, aber dann erhalten Sie nicht wie bei Verwendung von qdbus einen ordentlichen Anmeldedialog, um wieder arbeiten zu können.

0
LinuxRev

Folgendes funktioniert für mich am 16.04 (mit Gnome Desktop):

gnome-screensaver-command --lock && compsleep

Ich habe es auch als benutzerdefiniertes Tastenkürzel über das Gnome-Einstellungsfeld als Tasten "Shift-Super-X" installiert.

0
christopherbalz

Persönlich habe ich mit der PMI-Methode experimentiert. Als ich dies jedoch versuchte, erhielt ich eine Fehlermeldung: Error org.freedesktop.DBus.Error.Spawn.ChildExited: Launch helper exited with unknown return code 1. Es gibt jedoch eine Problemumgehung in . Kommentar von dieser Fehlerbericht , die anscheinend für mich funktioniert hat (ich verwende Ubuntu 13.03).

0
TSJNachos117