コマンドラインから一時停止/休止状態にするにはどうすればよいですか?


357

追加のソフトウェアをインストールせずに、コマンドラインを使用してラップトップを一時停止または休止状態にするにはどうすればよいですか?


2
Ubuntu 16.04については、この質問を参照してください:askubuntu.com/questions/777178/suspend-command-in-ubuntu-16-04とその答えsystemctl suspend
CJlano

回答:


312

従来、ubuntuはサスペンドおよび休止状態のかなり鈍い方法をサポートしていました。どちらも他のアプリとうまく統合できず、場合によっては一部のマシンでも動作しません。新しいメソッドはルートを必要とせず、電源イベントをリッスンするすべてのアプリケーションに通知します。

システム化された方法

Ubuntu 16.04以降では、systemctl呼び出しを使用する必要があります(Ubuntu 16.04の中断コマンドを参照)

systemctl suspend

そして

systemctl hibernate

新しい方法

dbusの使用に関するAdam Paetznickのこのページの回答を参照してください。理想的には~/bin/suspend、このアクションの使用を簡単にするショートカット/スクリプトを作成します。

sshを介して使用するには、Peter V.Mørchによって概説されているポリシーキットルールを変更する必要があります

古い方法

Ubuntu Forumによると、次のコマンドを使用できます。

pmi action suspend

そして

pmi action hibernate

これには、powermanagement-interfaceパッケージ(テストなし)をインストールする必要があります。

sudo apt-get install powermanagement-interface

また、コマンドsudo pm-suspendを見つけてsudo pm-hibernate、ネットブックで作業することもできました。


21
pm-suspendとpm-hibernateは私のために機能し、簡単です。sudoが必要ですが、それでも構いません。(前にpmiのアイデアを見つけましたが、サスペンドを使用するパッケージをインストールするのはよくありません...)
user1034

1
apt-get install powermanagement-interfacepmiを実行する必要があることに注意してください。
nealmcb

1
11.10ではpm- *のみが機能し、powermanagament-interfaceも追加されました
オメガフィル

1
私のubuntu 12.10では動作しません 後apt-get install powermanagement-interface
somethis

1
新しいメソッドは現在壊れています。unix.stackexchange.com/ questions / 153099 /…を
ijk

188

gnomeに優しい方法は、dbusを使用することです。

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

このコマンドには2つの利点がありますpm-suspend

  1. gnomeでそのオプションを選択している場合、画面は(再開時に)ロックされます。

  2. ルート権限は必要ないため、たとえばキーボードショートカットとして簡単に追加できます。

コメントで述べたように、Suspend最終行のを交換しHibernateてhibernateコマンドを作成します。

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

休止状態がスローされるとError org.freedesktop.UPower.GeneralError: not authorized、ユーザーは休止状態を許可されない場合があります。/etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla次のセクションが含まれるように編集または作成します:(ソース)

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

これはUbuntuGnome 14.04でテストされました

注:これは基本的にqbiの答えと同じですが、Ubuntuの新しいバージョンとhibernateを含むように更新されています。


15
あなたの答えは本当に最初でなければなりません。これは、非ルートのパッケージをインストールするgnomeの方法です。好む!
ターボ

11
Hibernate、最後の行を次のように置き換えることができますorg.freedesktop.UPower.Hibernate
Sheharyar

2
私の13.10では動作します。ただし、「セキュリティとプライバシー」で「サスペンドから復帰するときにパスワードを要求する」有効になっていても、画面は再開時にロックされません
アンドレアス・時間

3
私のために動作しませんでした(Gnome 3.12、Ubuntu 14.04)。bugs.launchpad.net/ubuntu/+source/gnome-power-manager/+bug/…によると、[UPower.Suspend]インターフェースは削除されたようです。
Gui Ambros

4
一時停止インターフェースはlogindに移動しました。askubuntu.com/questions/652978
アラム

58

英語

お気に入りのラジオ局を聴いて就寝したいためにコンピューターを1時間でサスペンドしたい場合は、ターミナルを開いて次のように入力します。

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

コンピューターは1時間でスリープ状態になります。目を覚ますと、開いている画像とすべてのものが保持されます。

数時間、数分、数秒、数日など、1h必要なものに置き換えることができます。hmsd

おやすみなさい!

フランス語

Si vous voulez juste que votre縦座標sem en en veille dans une heure parce que vous voulez vous endormir en ecoutant votre radiopréférée、ouvrez Terminal et tapez:

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

縦断と縦断はありません。Quan vous vousréveillerez、アプリケーションのメモリ管理とアプリケーションの管理

Vous pouvez remplacer 1hpar ce que vous voulez:hles heuresをm注ぎ、les minutesをs注ぎ、les secondをd注ぎ、lesジュールを注ぎます。

ボンヌイット!

スペイン語

Si quieres suspender tu computadora en una hora porque quieres ir a dormir escuchando tuestaciónde radio favorita、tan solo abre el terminal y escribe:

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

yのcomputadora sequedarádormida en 1 hora。Cuando despiertes、allíhabránquedado abiertas tusimágenesy todas tus cosas。

Puedes reemplazar 1hpor lo que desees:hpara horas、mpara minutos、spara segundos、dparadías。

¡ブエナスノーチェス!


それが私が探している私のユースケースです!アフィクPM- *スーパーユーザ権限なしで実行することができます
RUX

31

以下のためのUbuntu 12.04 LTSUbuntuの13.04

ハイバネーションを取得するには:

sudo pm-hibernate

サスペンドを取得するには:

sudo pm-suspend

「sudo pm-suspend」がミント13メイトで動作しない:(
rsjethani

うん、そのパッケージはインストールされなかったと思う。これらのパッケージをシナプスで探します。
rɑːdʒɑ

2
この方法の欠点は、GUIを使用している場合、pm-suspendがセッションをブロックしないことです。これは安全ではない可能性があります。
ラウルサリナスモンテアグド

1
ubuntu 15.10でも動作します。
Searene

1
14.04 ltsで動作します
Vitaly Zdanevich

22

ファイル/sys/power/stateを使用してこれを行うことができます。最初に、サポートされている状態を確認します。

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

またはdbus経由:

#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

ランチパッドのこのエントリによると、上記のインターフェースは削除されました。したがって、Ubuntuではもう機能しません。


最初のアイデアは「bash:echo:write error:Invalid argument」です。Dbusのアイデアは次の出力を示します。存在しません」
-user1034

/sys/power/state-thingに小さな説明を追加しました。さらに、dbusメソッドはUbuntuから削除されたため、機能しなくなりました。
qbi

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

3
これはうまく機能します。sudoを使用するときにこのメソッドに問題がある場合、「pipe to file」、別名「>」は現在のシェルで実行されているため、エコーを実行している間はスーパーユーザー権限を取得しません。あなたは使用する必要がありますsudo -i最初、またはパイプがするsudo teeので好き:echo mem | sudo tee /sys/power/state
RandomInsano

12

コマンドライン(またはキーボードショートカット)からシステム(14.04)をシャットダウンするには、次を使用します。

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

私は、利用可能なインターフェイスをリストできるgdbusをいじってみて、これを見つけました。

バスで利用可能なサービスを一覧表示するには:

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

メソッドを見つけるには:

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

12

以来15.04 systemdには、使用する新しいコマンドがあるので、標準のinitシステムは、次のとおりです。

systemctl suspend

Xubuntu 15.04を使用しています。このコマンドsystemctl suspendはコンピューターを一時停止しますが、[設定]-> [電源管理]-> [セキュリティ]で[システムがスリープ状態になるときに画面をロックする]チェックボックスをオンにしても、画面はロックされません。誰にも理由はありますか?
テームLeisti

Xubuntu 16.04にアップグレードしました。このコマンドsystemctl suspendはコンピューターを一時停止します。また、[設定]-> [電源管理]-> [セキュリティ]の[システムがスリープ状態になるときに画面をロックする]チェックボックスがオンになっている場合にのみ、画面がロックされます。
テームLeisti

8

Adam Paetznickのdbus-sendの答えは、明快さについて私が言ったように機能しませんでした。起動時に画面をロックするようにgnome-power-managerが設定されていても、マシンはロック解除されて起動しました。ウェイクアップ時に画面をロックしたいのですが、次のようになっていることがわかりました。

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

これはgnomeの構成に依存しないと思いますが、テストしていません。


いいね またはxscreensaver-command --lock場合によっては。
フィゾーム

3

新しいインターフェース

…15.10 Wilyで動作し、おそらくUtopicとVividで動作します。

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

pm-suspendコマンドとは異なり、これはsudoを必要としません。


Debian / Gnomeを搭載したXPS 13 9350の蓋を閉じると、サスペンド/休止状態の問題が発生しました。このコマンド(および休止状態に相当するもの)を実行すると、正常にサスペンド(および休止状態)になり、ふたを閉じたり開いたりすることが期待どおりになりました!
ビクターシュレーダー

1

リモートマシンをssh経由でスタンバイ状態にする方法は次のとおりです。

ssh -t 192.168.1.4 'sudo nohup&> / dev / null bash -c "(sleep 1; echo -n mem> / sys / power / state)&"'
x@192.168.1.4のパスワード: 
[sudo] xのパスワード: 
192.168.1.4への接続が閉じられました。

/ sys / power / stateはUbuntu 13.10で動作します。pmiはDbusエラーを返します。


0

個人的に、私はpmiメソッドを試してきました。ただし、これを試してみると、エラーメッセージが表示されましたError org.freedesktop.DBus.Error.Spawn.ChildExited: Launch helper exited with unknown return code 1。ただし、このバグレポートの3番目のコメントには回避策があり、それは私にとってはうまくいったようです(Ubuntu 13.03を使用しています)。


これは理論的には質問に回答するかもしれませんが、回答の重要な部分をここに含め、参照用のリンクを提供することが望ましいでしょう
fossfreedomの

0

私のように、まだKDE / Ubuntu 14.04システムで作業している人のためのアップデート。使用をロックしqdbus、使用を一時停止するdbus。完全なコマンド:

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

休止状態、つまりRAMではなくハードディスクにサスペンドするには、コマンドの最後にある「サスペンド」を「ハイバネート」に置き換えます。

xscreensaver-command -lock'-lock'オプションに1つのハイフンのみを入力し、スクリーンセーバーが実行されている場合のみ、中断せずに画面をロックするだけで機能します。実際にはあまり便利なコマンドではありません。を使用する方i3lockが簡単ですが、を使用する場合のように、作業に戻るためのきちんとしたログインダイアログが表示されませんqdbus


0

16.04(Gnomeデスクトップを使用)で次のように機能します。

gnome-screensaver-command --lock && compsleep

また、Gnome設定パネルのキー「Shift-Super-X」を使用して、カスタムキーボードショートカットとしてインストールしました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.