红联Linux门户
Linux帮助

fedora下使用polkit-1给普通用户以管理员权限

发布时间:2010-08-09 21:22:32来源:红联作者:alick
[i=s] 本帖最后由 alick 于 2010-8-9 21:26 编辑 [/i]

fedora12中已经使用polkit-1(实际版本号是0.95),提供系统范围的授权机制。
参见http://fedoraproject.org/wiki/Features/PolicyKitOne
这个新东西目前没有图形界面下的配置方法,使用不是很方便~
下面以本人经历---给普通用户无需root密码挂载本地磁盘的权限为例说明:
可以通过命令[code]pkaction --action-id org.freedesktop.devicekit.disks.filesystem-mount-system-internal --verbose[/code]你可能会问org.freedesktop.devicekit.disks.filesystem-mount-system-internal这个名字
(配置里称为action-id)是怎么事先知道的。看下图[attach]31745[/attach]
默认情况下,要挂载
本地的磁盘分区,会弹出如图的对话框,提示输入root密码。点开“详细”,
下面的“动作”一项就给出了这一动作的名字(action-id)。
下面是默认情况下该命令的输出:[code]pkaction --action-id org.freedesktop.devicekit.disks.filesystem-mount-system-internal --verbose
org.freedesktop.devicekit.disks.filesystem-mount-system-internal:
description: Mount a system-internal device
message: Authentication is required to mount the device
vendor: The DeviceKit Project
vendor_url: http://hal.freedesktop.org/docs/DeviceKit/
icon: drive-removable-media
implicit any: no
implicit inactive: no
implicit active: auth_admin_keep[/code]可以看到最后一行,意思是在活跃的会话中,需要验证为管理员,并且
保持这个获得的权限,(直到点击通知区域里的那个钥匙,放弃授权)。
要让普通用户不必输入密码,直接可以挂载磁盘分区,需要将
auth_admin_keep用yes替换。
默认的polkit权限设置在/usr/share/polkit-1/actions/目录下,
挂载本地磁盘的配置在org.freedesktop.devicekit.disks.policy这个文件中

和下面的
之间。
首先取得root权限,然后编辑org.freedesktop.devicekit.disks.policy
这个文件中相应的那一行。(事先备份一下原来的配置文件是好习惯)
下面是我使用vim修改的截图(这是xml文档,我把原来的那行配置注释掉了)
[attach]31746[/attach]
之后保存,再挂载磁盘,就不会有那个提示框了,而是直接挂载上了。
参考:man polkit等
文章评论

共有 1 条评论

  1. Repeat 于 2010-08-10 08:25:04发表:

    强烈学习