consolehelper
通常是 fedora 系列发行版的做法,使用 consolehelper,可以让经过授权(见 PAM)的普通用户以root权限执行程序。以 brasero (光驱刻录软件)为例:
- 把源程序改名为 brasero.normal , 创建一个链接 brasero 到源程序
- 创建 /etc/pam.d/brasero 文件
- 创建 /etc/security/console.apps/brasero 文件
[root@localhost ~]# ll /usr/bin/brasero* lrwxrwxrwx 1 root root 22 06-24 23:37 /usr/bin/brasero -> /usr/bin/consolehelper -rwxr-xr-x 1 root root 950656 06-24 23:36 /usr/bin/brasero.normal [root@localhost ~]# cat /etc/pam.d/brasero #%PAM-1.0 auth include config-util account include config-util session include config-util [root@localhost ~]# cat /etc/security/console.apps/brasero . config-util PROGRAM=/usr/bin/brasero.normal SESSION=true
