Difference between revisions of "Allow users to shutdown (简体中文)"

From ArchWiki
Jump to: navigation, search
m
(Update translation status.)
(2 intermediate revisions by 2 users not shown)
Line 8: Line 8:
 
[[tr:Kullanıcının bilgisayarı kapatabilmesine izin verme]]
 
[[tr:Kullanıcının bilgisayarı kapatabilmesine izin verme]]
 
[[uk:Allow Users to Shutdown]]
 
[[uk:Allow Users to Shutdown]]
{{TranslationStatus (简体中文)|Allow_Users_to_Shutdown|2012-10-06|226946}}
+
{{TranslationStatus (简体中文)|Allow_Users_to_Shutdown|2012-11-21|235462}}
 +
 
 
== 使用 systemd-logind ==
 
== 使用 systemd-logind ==
  
如果你正在使用 [[systemd]],非远程会话中的用户可以使用有关电源的命令。要保持这些权限,你的会话只需要保持在登录时相同的 tty 中。使用显示管理器时这个功能是现成的,而如果没有显示管理器,{{ic|startx -- vt$(fgconsole)}} 能使它有效。
+
如果你正在使用Arch的默认 [[systemd]],非远程会话中的用户可以使用电源相关的命令只要安装了 {{pkg|polkit}} 并且 [[xinitrc#Preserving the session|会话不中断]]。关机命令:
 +
# systemctl poweroff
  
 
按下待机、关机和休眠按钮和盖下显示屏的事件也由 logind 处理(参见 {{ic|man logind.conf}})。
 
按下待机、关机和休眠按钮和盖下显示屏的事件也由 logind 处理(参见 {{ic|man logind.conf}})。
Line 30: Line 32:
 
  alias poweroff="sudo poweroff"
 
  alias poweroff="sudo poweroff"
 
  alias halt="sudo halt"
 
  alias halt="sudo halt"
 
== 使用 ConsoleKit ==
 
参见 [[ConsoleKit#使用dbus进行电源操作]] 中的使用指导。
 
  
 
=== 使用dbus进行电源操作 ===
 
=== 使用dbus进行电源操作 ===
 +
 
查看[[ConsoleKit]]获取使用说明。你也可以使用dbus进行电源操作:
 
查看[[ConsoleKit]]获取使用说明。你也可以使用dbus进行电源操作:
 
*关机:
 
*关机:

Revision as of 09:08, 21 November 2012

翻译状态: 本文是英文页面 Allow_Users_to_Shutdown翻译,最后翻译时间:2012-11-21,点击这里可以查看翻译后英文页面的改动。

使用 systemd-logind

如果你正在使用Arch的默认 systemd,非远程会话中的用户可以使用电源相关的命令只要安装了 polkit 并且 会话不中断。关机命令:

# systemctl poweroff

按下待机、关机和休眠按钮和盖下显示屏的事件也由 logind 处理(参见 man logind.conf)。

使用 sudo

首先安装 sudo:

# pacman -S sudo

然后,在 root 用户下用 visudo 命令添加以下到 /etc/sudoers 文件的末端。替换其中的 user 为你的用户名, hostname 为你的主机名。

user hostname =NOPASSWD: /sbin/shutdown -h now,/sbin/halt,/sbin/poweroff,/sbin/reboot

现在你的用户可以用 sudo shutdown -h now 命令关机, sudo reboot 命令重启了。用户也可以使用 poweroffhalt 关闭系统。如果你不想被提示输入密码,使用NOPASSWD:标记。

为了方便起见,你也可用给用户的 ~/.bashrc 加入以下别名 (或加入 /etc/bash.bashrc 使全系统生效):

alias reboot="sudo reboot"
alias poweroff="sudo poweroff"
alias halt="sudo halt"

使用dbus进行电源操作

查看ConsoleKit获取使用说明。你也可以使用dbus进行电源操作:

  • 关机:
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
  • 重启:
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
  • 挂起:
dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend
  • 休眠 (挂起到硬盘):
dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Hibernate

方法生效的前提是用户具有调用PolicyKit关机的权限。默认情况下用户组“wheel”具有此权限。可以编辑/etc/polkit-1/localauthority.conf.d/50-localauthority.conf来改变权限用户组。

注意: 使用dbus挂起和休眠需要安装upower

使用 acpid

使用acpid可以允许任何人通过电源按钮物理关机。