linux下权限问题,如何让无root管理员权限的用户执行需root权限执行的脚本文件

例如我有一个脚本文件,这个脚本文件里的命令能否执行成功取决于是否是具有root权限。
而现在我需要让这个sh脚本文件供普通用户执行(不是管理员用户),那么应当如何做?
当然其中不能让普通用户提权为root权限,什么使用sudo命令以及输入密码之类的。
希望有能者回答。
注意:不是如何提升普通用户的权限!而且是普通用户(不是可以网上的所谓的可以使用sudo的普通用户
似乎什么时候听说过chmod 4755可以使得任何人执行这个文件时有与文件所有者相当的权利。但是好像shell脚本文件行不通。但又有人说只要用c写一个封装程序,封装程序调用shell脚本。然后在设置这个封装程序为suid。那么什么是封装程序,怎么封装?如何调用shell脚本。
这样吧,以调用封装程序mount /dev/sda5 /media/d下为例帮帮我。详细地举举例子。

没看懂你的需求,如果你要c语言里调用shell命令,那么你可以包含这个头文件#include <stdlib.h>
然后调用这个命令:int system(const char *string);就可以了。例如system("pwd")就是调用shell命令pwd。但是你要使这个文件可以被其他用户执行,没必要那么烦啊。只要“chmod o+x 脚本名”就ok啦。实在不行你先把这个文件的拥有者改成你需要执行的用户,命令为“chown 你的用户名 脚本名”,然后再执行“chmod u+x 脚本名”就ok了。楼主给分吧
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-07-10
你的要求: 这个脚本文件里的命令能否执行成功取决于是否是具有root权限。
普通用户如果不用sudo提权,那么你这个脚本最后是无法运行成功的.

而且你没有搞清楚sudo提权的意思,它并不会提升普通用户帐号的权限,只是临时会将该用户执行命令的进程以超级用户的权限运行。
第2个回答  2013-07-10
给普通用户执行权限就行,命令如下:
chmod 755 脚本名
这样的话普通用户就拥有运行脚本的权限了,而且不具有修改和删除该脚本的权限
第3个回答  2013-07-10
chmod o+x 你的脚本

抱歉我这个答案不正确,请勿采纳。
相似回答