GNU/Linux >> Belajar Linux >  >> Ubuntu

Mengapa Kita Perlu Root Di Terminal Untuk Shutdown Dan Restart?

Saat kami menginstal/menghapus/memperbarui paket atau membuat perubahan apa pun yang memerlukan hak administratif, kami akan dimintai sandi pengguna admin yang memiliki sudo hak istimewa – ini terjadi melalui GUI dan terminal.

Namun, jika kami mencoba mematikan dan memulai ulang melalui terminal, ia mengeluh bahwa kami harus root :

$ reboot
reboot: Need to be root

$ shutdown now
shutdown: Need to be root

Namun kami tidak pernah dimintai sandi saat melakukan tindakan ini melalui roda gigi di kanan atas.

Mengapa ada perbedaan ini?

Jawaban Terbaik

Shutdown pada roda gigi memeriksa apakah Anda diizinkan untuk mematikan mesin. Ini dilakukan melalui PolicyKit. Dalam kasus shutdown pernyataan ini dalam file /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy dicentang:

<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 memicu dbus-send memerintah. Dalam kasus shutdown akan menjadi:

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

Ada daemon yang berjalan di latar belakang dengan Root-Privileges yang menjalankan perintah shutdown untuk Anda.

Bila Anda ingin dapat mematikan mesin “cara lama” melalui baris perintah (shutdown, reboot, halt, ... ), maka Anda perlu menambahkan suid-Bit ke perintah tersebut. Namun perlu diketahui, semua orang di sistem Anda, yang memiliki akses ke shell, dapat mematikan mesin Anda.


Ubuntu
  1. Mengapa kebutuhan saya akan kontrol membuat saya beralih ke Linux

  2. Mengapa Anda perlu menghapus ifconfig untuk ip

  3. Ruang Cadangan Untuk Root Pada Sistem File – Mengapa?

  1. Mengapa Pengguna Root Membutuhkan Izin Sudo?

  2. Debian – Bagaimana Cara Shutdown Dan Restart Dirmngr?

  3. Bagaimana Menjalankan Terminal Sebagai Root?

  1. Hashing Kata Sandi Dan Mengapa Kami Membutuhkannya

  2. kata sandi root tidak berfungsi untuk su di terminal

  3. shell berbeda untuk pengguna root dan non-root