zy_sunshine 发表于 2010-3-26 13:00:44

consolehelper的问题在下一个版本应该首先考虑解决

consolehelper的问题在下一个版本应该首先考虑解决,
今天对gparted升级的时候看到gparted的提权也是用conslolehelper,
因为gparted不是一个console,所以用Gui模式获得的root权限
但是consolehelper的gui模式提权有未知错误
(前阵子的鼠标配置出现的未知错误也是这个问题,当然鼠标配置的py也是有模块import路径错误的问题)

下面是gparted的提权配置文件,其中GUI=no是我后来加上的

# /etc/security/console.apps
FALLBACK=false
USER=root
PROGRAM=/usr/sbin/gparted
SESSION=true
GUI=no

# /etc/pam.d
#%PAM-1.0
auth    sufficient      pam_rootok.so
auth    sufficient      pam_timestamp.so
auth    include         system-auth
session required      pam_permit.so
session optional      pam_xauth.so
session optional      pam_timestamp.so
account required      pam_permit.so

用console模式提权是正常的:
$ gparted
您在试图运行“gparted”。它要求您拥有超级用户的特权,
但是这需要更多信息才能做到。
鉴定为 "root"
密码:


这里有一个问题,如果consolehelper的提权模式是用的gui模式,会失败,
但是在.desktop文件中也就是在开始菜单中却可以正确出现提权GUI
,不知道这里是调用的什么程序来提权的。

sejishikong 发表于 2010-3-26 13:53:46

那个是kdesu,和consolehelper不一样的。consolehelper的问题实际上是pam的问题,可是pam的问题实在是不熟悉啊。

nihui 发表于 2010-3-27 20:11:55

顶上来。
polkit 好像也有点问题,KDE 4.4 的认证机制会提示 action 无效
[比如配置日期时间的时候]。

zy_sunshine 发表于 2010-3-27 22:56:20

系统中没有polkit的相关程序。如:
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.

在这个帖子中有提到,上面有apt相关包时出现的提示
http://www.linuxfans.org/bbs/thread-191119-1-2.html

zy_sunshine 发表于 2010-3-27 22:57:33

另外kdesu有没有具体的程序,我运行kdesu怎么没有这个程序呢?

nihui 发表于 2010-3-28 09:31:30

其实那个 magic 系统服务管理器就是靠 kdesu 弄的。
下面的就是 desktop 文件里的一行 hack:mrgreen:
uid=0 时,说明是 root,直接运行
否则执行 /opt/kde4/lib/kde4/libexec/kdesu magic_service_manager
缺点是原本一个纯 qt4 程序在运行时依赖了 kde 组件。。
Exec=test $UID -eq 0 || /opt/kde4/lib/kde4/libexec/kdesu magic_service_manager; test $UID -eq 0 && magic_service_manager

zy_sunshine 发表于 2010-3-28 10:49:43


Encoding=UTF-8
Name=gparted
GenericName=Disk Partitioning Tool
GenericName=磁盘分区工具
Comment=Application for partitioning a disk just like Partation Magic
Comment=一个类似 Partation Magic 的磁盘分区工具
Exec=gparted
Icon=gparted
Terminal=false
Type=Application
X-KDE-SubstituteUID=true
Categories=Application;System;GTK上面这个gparted也会出现kdesu提权

应该是这句话的作用X-KDE-SubstituteUID=true

zy_sunshine 发表于 2010-5-7 09:57:25

这个问题解决了吗?

用不用上bug?
页: [1]
查看完整版本: consolehelper的问题在下一个版本应该首先考虑解决