编译shell脚本所以可以使用suid

时间:2009-08-17 17:15:47

标签: ubuntu scripting compilation suid

我需要suid一个脚本,以便权限较少的用户可以执行它。因为你不能suid一个脚本,只能suid一个可执行文件,我想使用通用脚本编译器“shc”来创建一个可执行文件,然后设置该可执行文件的suid位。唯一的问题是,在ubuntu jaunty我找不到shc或当我做apt-get install shc时,它会回来找不到。有没有替代使用shc(除了编写我自己的C程序)或者它是否包含在我可以添加的repo中,以便apt-get可以找到它?

2 个答案:

答案 0 :(得分:1)

在脚本内部使用sudo执行任何管理命令。

如果您需要sudo工作而不需要密码,请查看编辑sudoers文件以指定脚本并给出类似的NOPASSWD选项。

USERNAME ALL =(root)NOPASSWD:/ usr / local / SCRIPT_NAME“”

答案 1 :(得分:1)

我有this same question over on serverfault - 您可以编辑sudoers文件以授予运行shell脚本的权限。