2017-05-26 46 views
1

我有一个shell脚本moveInvoice.sh,其中chmod 777权限为用户test1,所有其他脚本都在用户test2下。如何在不提示密码的情况下以不同的用户身份运行shell脚本

现在我需要从TEST2调用moveInvoice.sh我尝试以下

sudo -c 
sudo -u 

但这一切都给予许可被拒绝。有没有其他的方式使它与test2用户一起运行?

一次手动我能执行那么我就需要通过增加visudo命令一个NOPASSWD选项来把这个crontab中

+0

尝试使用linux acl – Rups

+0

我无法使用acl bcos它需要安装实用程序。由于它是办公室网络,我们没有任何root权限来安装。所以任何命令行命令都会有帮助。 – Sanvi

+0

为''setuid()'[Here's](https://stackoverflow.com/a/24919588/4162356)“脚本编写一个二进制包装器示例。 –

回答

1

您可以在Linux上建立一个用户可以不使用密码执行sudo。

以root身份运行sudo visudo,然后根据特权规范将您的用户添加为SOMEUSER ALL=(ALL) NOPASSWD: ALL

现在,SOMEUSER将能够运行没有密码的sudo命令。

相关问题