GNU/Linux >> Linux の 問題 >  >> Ubuntu

シャットダウンと再起動のためにターミナルにルートする必要があるのはなぜですか?

パッケージのインストール/削除/更新、または管理者権限を必要とする変更を行うと、sudoを持つ管理者ユーザーのパスワードの入力を求められます。 特権–これはGUIと端末の両方を介して行われます。

ただし、ターミナルを介してシャットダウンして再起動しようとすると、rootである必要があると文句を言います。 :

$ reboot
reboot: Need to be root

$ shutdown now
shutdown: Need to be root

ただし、右上の歯車を介してこれらのアクションを実行するときに、パスワードの入力を求められることはありません。

なぜこの不一致があるのですか?

ベストアンサー

歯車のシャットダウンは、マシンのシャットダウンが許可されているかどうかを確認します。これはPolicyKitを介して行われます。ファイル/usr/share/polkit-1/actions/org.freedesktop.consolekit.policy内のこのステートメントをシャットダウンする場合 チェックされています:

<action id="org.freedesktop.consolekit.system.stop">
  <description>Stop the system</description>
  <message>System policy prevents stopping the system</message>
  <defaults>
    <allow_inactive>no</allow_inactive>
    <allow_active>yes</allow_active>
  </defaults>
</action>

PolicyKitはdbus-sendをトリガーします 指図。シャットダウンの場合は次のようになります:

dbus-send --system --print-reply --dest=org.freedesktop.Hal /org/freedesktop/Hal/devices/computer org.freedesktop.Hal.Device.SystemPowerManagement.Shutdown

root-Privilegesを使用してバックグラウンドで実行されているデーモンがあり、shutdownコマンドを呼び出します。

コマンドラインを介して「古い方法」でマシンをシャットダウンできるようにしたい場合(shutdown, reboot, halt, ... )、次に、これらのコマンドにsuid-Bitを追加する必要があります。ただし、シェルにアクセスできるシステム上のすべてのユーザーがマシンをシャットダウンする可能性があることに注意してください。


Ubuntu
  1. Guakeのインストールと使用–Debian10用のドロップダウンターミナルエミュレータ

  2. ファイルシステムのルート用に予約されたスペース–なぜですか?

  3. ルートユーザーがSudo権限を必要とするのはなぜですか?

  1. パスワードハッシュとその必要性

  2. ルートだけがマウントできます、なぜですか?

  3. 18.04:なぜXorgとXwaylandの両方なのですか?

  1. 制御が必要なためにLinuxに切り替えた理由

  2. ipのifconfigを削除する必要がある理由

  3. Tput:$ termの値がなく、-tが指定されていませんか?