回答:
従来、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
、ネットブックで作業することもできました。
apt-get install powermanagement-interface
pmiを実行する必要があることに注意してください。
apt-get install powermanagement-interface
gnomeに優しい方法は、dbusを使用することです。
dbus-send --system --print-reply \
--dest="org.freedesktop.UPower" \
/org/freedesktop/UPower \
org.freedesktop.UPower.Suspend
このコマンドには2つの利点がありますpm-suspend
。
gnomeでそのオプションを選択している場合、画面は(再開時に)ロックされます。
ルート権限は必要ないため、たとえばキーボードショートカットとして簡単に追加できます。
コメントで述べたように、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を含むように更新されています。
Hibernate
、最後の行を次のように置き換えることができますorg.freedesktop.UPower.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、アプリケーションのメモリ管理とアプリケーションの管理
Vous pouvez remplacer 1h
par ce que vous voulez:h
les 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 1h
por lo que desees:h
para horas、m
para minutos、s
para segundos、d
paradías。
¡ブエナスノーチェス!
以下のためのUbuntu 12.04 LTS とUbuntuの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経由:
ランチパッドのこのエントリによると、上記のインターフェースは削除されました。したがって、Ubuntuではもう機能しません。
/sys/power/state
-thingに小さな説明を追加しました。さらに、dbusメソッドはUbuntuから削除されたため、機能しなくなりました。
$ sudo echo -n mem > /sys/power/state
-bash: /sys/power/state: Permission denied
sudo -i
最初、またはパイプがするsudo tee
ので好き:echo mem | sudo tee /sys/power/state
コマンドライン(またはキーボードショートカット)からシステム(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
systemctl suspend
はコンピューターを一時停止しますが、[設定]-> [電源管理]-> [セキュリティ]で[システムがスリープ状態になるときに画面をロックする]チェックボックスをオンにしても、画面はロックされません。誰にも理由はありますか?
systemctl suspend
はコンピューターを一時停止します。また、[設定]-> [電源管理]-> [セキュリティ]の[システムがスリープ状態になるときに画面をロックする]チェックボックスがオンになっている場合にのみ、画面がロックされます。
Adam Paetznickのdbus-sendの答えは、明快さについて私が言ったように機能しませんでした。起動時に画面をロックするようにgnome-power-managerが設定されていても、マシンはロック解除されて起動しました。ウェイクアップ時に画面をロックしたいのですが、次のようになっていることがわかりました。
$ gnome-screensaver-command --lock && pmi action hibernate
これはgnomeの構成に依存しないと思いますが、テストしていません。
xscreensaver-command --lock
場合によっては。
新しいインターフェース
…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] xのパスワード: 192.168.1.4への接続が閉じられました。
/ sys / power / stateはUbuntu 13.10で動作します。pmiはDbusエラーを返します。
個人的に、私はpmiメソッドを試してきました。ただし、これを試してみると、エラーメッセージが表示されましたError org.freedesktop.DBus.Error.Spawn.ChildExited: Launch helper exited with unknown return code 1
。ただし、このバグレポートの3番目のコメントには回避策があり、それは私にとってはうまくいったようです(Ubuntu 13.03を使用しています)。
私のように、まだ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
。
16.04(Gnomeデスクトップを使用)で次のように機能します。
gnome-screensaver-command --lock && compsleep
また、Gnome設定パネルのキー「Shift-Super-X」を使用して、カスタムキーボードショートカットとしてインストールしました。
systemctl suspend