amy*_*sin 35 shutdown root gui
当我尝试从命令行或终端关闭计算机时,我必须具有 root 权限:
amy@amy:~$ shutdown now
shutdown: Need to be root
Run Code Online (Sandbox Code Playgroud)
和
amy@amy:~$ halt
halt: Need to be root
Run Code Online (Sandbox Code Playgroud)
但是当使用图形用户界面(即关机按钮或硬件关机按钮)关机时,我不需要输入密码。图形界面的关闭是什么,为什么它不需要密码或 root 权限?
我正在使用 Ubuntu 11.04 Natty。
Mic*_*zek 33
硬件电源按钮触发 ACPI 事件acpid(ACPI 守护程序)注意到并做出反应;在这种情况下,通过关闭系统,尽管您可以让它为所欲为。ACPI 守护程序以 root 身份运行,因此它有权关闭系统。桌面环境(例如gdmGnome)通常也以 root 身份运行,所以我怀疑它们的工作方式相同——您无权关闭系统,但您可以告诉gdm您希望它关闭并且它可以在代表你
Chr*_*own 11
Michael 的回答正确地讨论了使用硬件电源开关时的系统功能,但大多数桌面环境实际上dbus用于此目的而不是自己做。例如,GNOME在单击关闭按钮时使用dbus's org.freedesktop.Hal.Device.SystemPowerManagement.Shutdown。dbus发送此消息时,会进行一些检查以确定发送消息的用户是否有权执行关闭操作,如果是,则关闭系统。
您可以使用dbus-send. 例如,要使用 关闭系统dbus,请使用以下内容:
dbus-send --system --dest=org.freedesktop.Hal /org/freedesktop/Hal/devices/computer org.freedesktop.Hal.Device.SystemPowerManagement.Shutdown
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3548 次 |
| 最近记录: |