追加のソフトウェアをインストールせずに、コマンドラインを使用してラップトップを一時停止または休止状態にするにはどうすればよいですか?
従来、ubuntuはサスペンドおよび休止状態のかなり鈍い方法をサポートしていました。どちらも他のアプリとうまく統合できず、場合によっては一部のマシンでも動作しません。新しいメソッドはルートを必要とせず、電源イベントをリッスンするすべてのアプリケーションに通知します。
Ubuntu 16.04以降、systemctl
呼び出しを使用する必要があります( buntu 16.04の中断コマンド を参照)
systemctl suspend
そして
systemctl hibernate
このページの回答を参照してください dbusの使用に関するAdam Paetznickから 。理想的には、このアクションを簡単に使用できる~/bin/suspend
ショートカット/スクリプトを作成します。
Ssh経由で使用するには、 Peter V.Mørchによって概説されているようにポリシーキットルールを変更します
buntu Forum によると、次のコマンドを使用できます。
pmi action suspend
そして
pmi action hibernate
これには、powermanagement-interfaceパッケージ(テストなし)をインストールする必要があります。
Sudo apt-get install powermanagement-interface
また、ネットブックで動作するコマンドSudo pm-suspend
およびSudo pm-hibernate
を見つけました。
Gnomeに優しい方法は、dbusを使用することです。
dbus-send --system --print-reply \
--dest="org.freedesktop.UPower" \
/org/freedesktop/UPower \
org.freedesktop.UPower.Suspend
このコマンドには、pm-suspend
よりも2つの利点があります。
Gnomeでそのオプションを選択している場合、画面は(再開時に)ロックされます。
ルート権限は必要ないため、たとえばキーボードショートカットとして簡単に追加できます。
コメントで述べたように、最後の行のSuspend
を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
を編集または作成して、次のセクションが含まれるようにします。 (source)
[Re-enable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
これは buntuGnome 14.04 でテストされました。
注:これは基本的にqbiの答えと同じですが、Ubuntuの新しいバージョンとhibernateを含むように機能するように更新されています。
お気に入りのラジオ局を聴いて就寝したいためにコンピューターを1時間でサスペンドする場合は、ターミナルを開いて次のように入力します。
Sudo bash -c "sleep 1h; pm-suspend"
コンピューターは1時間でスリープ状態になります。目を覚ますと、開いている画像とすべてのものが保持されます。
1h
を必要なものに置き換えることができます:h
時間数、m
分数、s
秒数、d
日数。
おやすみなさい!
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、ilのオーラの保存は、メモリヴォスのアプリケーション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。
ボンヌ!
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 1h
por lo que desees:h
para horas、m
para minutos、s
para segundos、d
paradías。
¡ブエナスノーチェス!
buntu 12.04 LTSおよびbuntu 13.04の場合
ハイバネーションを取得するには:
Sudo pm-hibernate
サスペンドを取得するには:
Sudo pm-suspend
これを行うには、ファイル/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経由:
これによると launchpadのエントリ 上記のインターフェースは削除されました。したがって、Ubuntuではもう機能しません。
コマンドライン(またはキーボードショートカット)からシステム(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
15.04 systemDは標準のinitシステムであるため、使用する新しいコマンドがあります。
systemctl suspend
Adam Paetznickのdbus-sendの答えは、明快さについて私が言ったように機能しませんでした。起動時に画面をロックするようにgnome-power-managerが設定されていても、マシンはロック解除されて起動しました。ウェイクアップ時に画面をロックしたいのですが、次のようになっていることがわかりました。
$ gnome-screensaver-command --lock && pmi action hibernate
これはgnomeの構成に依存しないと思いますが、テストしていません。
新しいインターフェイス
…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を必要としません。
リモートマシンを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] password for x: 192.168.1.4への接続が閉じられました。
/ sys/power/stateはUbuntu 13.10で動作します。 pmiはDbusエラーを返します。
私のように、まだ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ではなくハードディスクにサスペンドするには、コマンドの最後にある「サスペンド」を「ハイバネート」に置き換えます。
'-lock'オプションにハイフンを1つだけ入力し、スクリーンセーバーが実行されている場合にのみ、中断せずに画面をロックするだけで、xscreensaver-command -lock
が機能します。実際にはあまり便利なコマンドではありません。 i3lock
を使用する方が簡単ですが、qdbus
を使用する場合のように、仕事に戻るためのきちんとしたログインダイアログは表示されません。
16.04(Gnomeデスクトップを使用)で次のように動作します。
gnome-screensaver-command --lock && compsleep
また、Gnome設定パネルのキー「Shift-Super-X」を使用して、カスタムキーボードショートカットとしてインストールしました。