コマンドラインまたは端末でコンピュータをシャットダウンするには、root権限が必要です。
amy@amy:~$ shutdown now
shutdown: Need to be root
そして
amy@amy:~$ halt
halt: Need to be root
ただし、GUI(終了ボタンやハードウェア終了ボタンなど)を使用して終了すると、パスワードの入力を求められません。グラフィカルインターフェイスを閉じるとはどういう意味ですか?パスワードやルートアクセスが不要なのはなぜですか?
私はUbuntu 11.04 Nattyを使用しています。
答え1
ハードウェア電源ボタンはACPIイベントacpid
(ACPIデーモン)をトリガーし、その場合はシステムをシャットダウンして応答します。ただし、必要な操作を実行することができます。 ACPIデーモンはrootとして実行されるため、システムをシャットダウンする権限があります。デスクトップ環境(gdm
Gnomeなど)も通常rootとして実行されるため、同じように動作すると考えられます。システムをシャットダウンする権限はありませんが、システムをシャットダウンしgdm
たいと言えば、システムからシャットダウンできます。あなたに代わって
答え2
Michaelの回答では、ハードウェア電源スイッチを使用する際のシステム機能について正しく説明していますが、ほとんどのデスクトップ環境は実際にdbus
これを行うのではなく、この目的のために設計されています。たとえば、GNOMEは終了ボタンをクリックするときに使用します。このメッセージが送信されると、dbus
メッセージを送信するユーザーにシャットダウンを実行する権限があることを確認するためにいくつかのチェックが実行され、権限がある場合はシステムがシャットダウンされます。org.freedesktop.Hal.Device.SystemPowerManagement.Shutdown
dbus
を使用してこれをシミュレートできますdbus-send
。たとえば、shutdown を使用するには、dbus
次のように使用します。
dbus-send --system --dest=org.freedesktop.Hal /org/freedesktop/Hal/devices/computer org.freedesktop.Hal.Device.SystemPowerManagement.Shutdown