查看文章
 
[原创]Fedora8下的gksu——consolehelper
2007年12月22日 20:30
        你可能已经注意到了,在我们以普通用户登录运行一些系统程序时,系统会弹出对话框让你输入root用户的密码,比如:Yumex就会这样做。在UBUNTU下可以用gksu+命令来实现,但是Fedora8没有这个软件。我去GKSU的官网看过,他们也没有提供for Fedora8的包。(只有For fedora4的,但是那个安好了也用不了)。还有KDE的桌面环境可以用KDESU,这个我没试过。
        但是gksu并不是GNOME的一部分,并不是官方所支持的。可能有些安全隐患吧……所以Fedora8下没有gksu。
那我们在访问系统程序时,确实能看到弹出对话框来让我们输入root密码,Fedora是怎么实现的呢?
        Fedora下有个叫consolehelper的东东就是用来做这个事的。
        你可以用man命令来查看下用法,不过我感觉那个MAN里说的不是太详细,所以在一堆googling之后,准备写一点关于这个consolehelper用法的东西,废话不说了,进入正题!

目标:制作root权限的nautilus,通过图标点击,然后弹出对话框,提示用户输入密码,确认后获得root权限的nautilus。Setp1.创建一个consolehelper的软链接:
        ln -s /usr/bin/consolehelper /usr/local/bin/root_nautilus
Setp2.进入/etc/pam.d/,新建一个叫root_nautilus的文件
        vi /etc/pam.d/root_nautilus
        在文件内放入以下内容:
         #%PAM-1.0
         auth          include         config-util
         account     include         config-util
         session      include         config-util
Setp3.进入/etc/security/console.apps/下,建立文件root_nautilus
        vi /etc/security/console.apps/root_nautilus
        并输入以下内容:
        USER=root
        PROGRAM=/usr/bin/nautilus #这个就是你要以root权限运行的程序名
        SESSION=true
Setp4.vi /usr/share/applications/root_nautilus.desktop
        然后输入:
        [Desktop Entry]
        Encoding=UTF-8
        Name=Root File Manager
        GenericName=Nautilus
        Categories=Application;System;X-Red-Hat-Base
        Comment=Launches Nautilus As Root
        Icon=password.png
        Exec=/usr/local/bin/root_nautilus --browser
        Type=Application
        Terminal=false
Setp5.在应用程序里的系统工具里就可以找到你建立的快捷方式了。运行它看看效果吧!

PS:你也可以在桌面建立快捷方式,内容就填root_nautilus --browser。
        有个需要特别注意的地方是,应用程序的参数应该加在快捷方式里,而不是加在/etc/security/console.apps/root_nautilus里。网上我找的所有文章都说是加在/etc/security/console.apps/root_nautilus里,可能是由于版本变化的原因吧。其实这样的改进更优秀,因为你不必再为不同的参数配置不同的文件,你只需要建不同的快捷方式就行了!

类别:Linux||添加到搜藏 |分享到i贴吧|浏览(558)|评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
     

   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu