use*_*171 139 linux bash sudo su sudoers
我有必须以user2身份运行的script.sh.但是,此脚本只能在我的应用程序中的user1下运行.
我想要运行以下命令:
su user2 -C script.sh
Run Code Online (Sandbox Code Playgroud)
但能够无密码运行.
我也希望这是非常严格的,因为在user1中只能在user2下运行script.sh而不是其他任何东西.
我试过用sudoers文件做这件事,经过几个小时的尝试后就无休止地混淆了.
如果有人可以提供一个如何实现这一点的明确示例(而不是像使用sudoers那样的通用),那将非常感激.
小智 191
试试跑步:
su -c "Your command right here" -s /bin/sh username
Run Code Online (Sandbox Code Playgroud)
这将以用户名的形式运行命令,因为您具有作为该用户的sudo权限.
pyr*_*ope 117
打电话visudo
并添加:
user1 ALL=(user2) NOPASSWD: /home/user2/bin/test.sh
Run Code Online (Sandbox Code Playgroud)
该命令路径必须是绝对的!然后sudo -u user2 /home/user2/bin/test.sh
从user1
shell 调用.完成.
归档时间: |
|
查看次数: |
265381 次 |
最近记录: |