Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1007713
  • 博文数量: 177
  • 博客积分: 3629
  • 博客等级: 中校
  • 技术积分: 1839
  • 用 户 组: 普通用户
  • 注册时间: 2005-02-23 21:21
文章分类

全部博文(177)

文章存档

2021年(1)

2020年(5)

2019年(4)

2018年(7)

2017年(1)

2016年(4)

2014年(1)

2013年(8)

2012年(10)

2011年(50)

2009年(12)

2008年(10)

2006年(56)

2005年(8)

分类: LINUX

2008-12-13 14:09:37

原来policykit和sudo无关。不过完成同样的功能而已。
先看sudo:
--------------------------------------------------------------------------------------------------------------
su与sudo的用法

By 人生百味 发表于 2006-11-12 10:25:00
一、su
看帮助:#man su
1、后面加“-”,或者“-l”,再接用户名,将重新初始化用户环境,并切换到用户的家目录(后面不带用户名,则直接切换到root用户)
如果不带参数“-”或“-l”,执行下面的命令就会出错!(因为还是普通用户的环境)
$su
#fdisk -l
bash: fdisk: command not found

2、后面加“-c”,可切换到root用户来改变文件的权限,后面的执行内容要用双引号引起来。
$su -c "chmod u+s /bin/ls"   (给/bin/ls增加suid位)

二、sudo 
sudo 的作用,它允许经过同意的使用者以超级管理员的身份执行指定指令。sudo 的主要配置文件是/etc/sudoers,编辑文件时最好使用visudo,它会对语法进行简单的校验,并且防止多个程序同时编辑该文件。执行 visudo这个命令后,你在里面所作的更改,只要你不执行“保存并退出”这个操作,是不会更改/etc/sudoers这个文件的,t它只是修改的一个 临时文件“/etc/sudoers.tmp”,那怕你这个时候已经执行了写的指令  。
sudo 有4个字段
root  ALL(ALL)  ALL
第一个字段指明哪个用户可使用sudo,这里是root,也可以用组,语法为 %组名
第二个字段指明允许登录的主机(可以是主机名或主机的IP地址),这里ALL表示所有机器
第三个字段指明sudo运行的程序以哪个用户权限运行(可以使用用户别名),(ALL)指所有用户
第四个字段指明执行的命令(也可使用Cmnd alias),ALL指任何指令,以命令前加!表示禁止执行的命令

执行sudo指令后,在5分钟内若再次使用sudo不用输入当前用户的密码,为了安全可取消这个功能,使用参数“-k”
#sudo -k /sbin/fdisk

更多详见: 
-----------------------------------------------------------------------------------------




关于policykit一些资料:
------------------------------------------------------------------------------------------------------
来源:


这几天来每天都研究PolicyKit,终于把它的大致机制搞明白了。

PolicyKit主要是通过dbus来进行的,是在dbus服务的基础上增强了policykit的配置文件来实现的。因此理论上只要是dbus服务就可以使用PolicyKit。从而让用户具备更多的操作权。

调用dbus服务确实可以以普通用户的权限就完成root才能完成的操作。但是前提是,你以root权限正确地安装上这个dbus服务。
所以说,你不能执行sudo,也就不能做这样破坏的事情了。代码的话,只能看Ubuntu Tweak有关PolicyKit的部分了,除去帐户验证的部分,就是权限无限的dbus服务了。

我看的是Freedesktop上的资料,其他都是零零散散搜索来的。



官方:
policykit配置文件说明:


相关命令:
 polkit-action - List and modify registered PolicyKit actions
 polkit-auth - Manage authorizations, If invoked without any options, the authorizations of
       the calling process will be printed.
— Centralized policy management
— PolicyKit configuration
— Validate a PolicyKit policy file
— Validate a PolicyKit configuration file

如果嫌麻烦每次都要点unlock按纽,可以在授权里把admin auth通通改成yes就行了,这样unlock按纽变灰不能用但不影响程序功能。OK目的达到了。虽然GDM这个东东不能删(和policykit关系太密切了),但使用上方便了许多。






阅读(6092) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~