Linux root用户怎么以制定的用户去执行某个程序。
suuser不行。因为我是写在/etc/rc.local里的/etc/rc.local:/home/user/xx.sh<--以user用户执行这个xx.sh。怎么搞?...
su user不行。因为我是写在/etc/rc.local里的
/etc/rc.local:
/home/user/xx.sh <-- 以user用户执行这个xx.sh。
怎么搞? 展开
/etc/rc.local:
/home/user/xx.sh <-- 以user用户执行这个xx.sh。
怎么搞? 展开
6个回答
展开全部
可以使用 sudo命令,以指定用户身份执行程序。
如: sudo -u weblogic /home/weblogic/sbin/starup.sh
以weblogic用户身份,启动服务器。
sudo命令的常见参数
选项 含义 作用
sudo -h Help 列出使用方法,退出。
sudo -V Version 显示版本信息,并退出。
sudo -l List 列出当前用户可以执行的命令。只有在sudoers里的用户才能使用该选项。
sudo -u username#uid User 以指定用户的身份执行命令。后面的用户是除root以外的,可以是用户名,也可以是#uid。
sudo -k Kill 清除“入场卷”上的时间,下次再使用sudo时要再输入密码。
sudo -K Sure kill 与-k类似,但是它还要撕毁“入场卷”,也就是删除时间戳文件。
sudo -b command Background 在后台执行指定的命令。
sudo -p prompt command Prompt 可以更改询问密码的提示语,其中%u会代换为使用者帐号名称,%h会显示主机名称。非常人性化的设计。
如: sudo -u weblogic /home/weblogic/sbin/starup.sh
以weblogic用户身份,启动服务器。
sudo命令的常见参数
选项 含义 作用
sudo -h Help 列出使用方法,退出。
sudo -V Version 显示版本信息,并退出。
sudo -l List 列出当前用户可以执行的命令。只有在sudoers里的用户才能使用该选项。
sudo -u username#uid User 以指定用户的身份执行命令。后面的用户是除root以外的,可以是用户名,也可以是#uid。
sudo -k Kill 清除“入场卷”上的时间,下次再使用sudo时要再输入密码。
sudo -K Sure kill 与-k类似,但是它还要撕毁“入场卷”,也就是删除时间戳文件。
sudo -b command Background 在后台执行指定的命令。
sudo -p prompt command Prompt 可以更改询问密码的提示语,其中%u会代换为使用者帐号名称,%h会显示主机名称。非常人性化的设计。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
据我观察,你可能需要用 runuser这个命令
格式
runuser -c /home/user/xx.sh user
格式
runuser -c /home/user/xx.sh user
更多追问追答
追问
可以带其他参数么?
比如:
runuser -c /home/user/xx.sh p1 p2 p3 user
追答
可以的。
不过格式是
unuser -c /home/user/xx.sh user p1 p2 p3
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/home/user/xx.sh对这个用户设定权限,
ACL (访问控制)
ACL可以为某一个文件单独设置该文件具体的某用户或组的权限
-m 修改文件都acl
-x 取消文件或组的权限
Setfacl --m u:用户名:权限<文件名>//设置某个用户的访问权限
Setfacl --m g:组 名:权限<文件名>//设置某个组的访问权限
Setfacl --x u:用户名:权限<文件名>//取消某个用户的访问权限
Setfacl --x g:组 名:权限<文件名>//取消
这样:
setfacl -m u:user:777 /home/user/xx.sh
这个权限应该能够执行了。
ACL (访问控制)
ACL可以为某一个文件单独设置该文件具体的某用户或组的权限
-m 修改文件都acl
-x 取消文件或组的权限
Setfacl --m u:用户名:权限<文件名>//设置某个用户的访问权限
Setfacl --m g:组 名:权限<文件名>//设置某个组的访问权限
Setfacl --x u:用户名:权限<文件名>//取消某个用户的访问权限
Setfacl --x g:组 名:权限<文件名>//取消
这样:
setfacl -m u:user:777 /home/user/xx.sh
这个权限应该能够执行了。
更多追问追答
追问
不行。
root用户执行xx.sh。ps -ef。查询的xx.sh的所属user必须是指定的user
追答
不清楚了,我新手,可以试下改属主,属主在设定权限呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先建立一个用户,亲 usradd username(好像是这样的,捂脸)。。password yourpasword。。这样就新加了一个用户。。然后su username 就进入了你新建的用户了。。
追问
su user不行。因为我是写在/etc/rc.local里的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询