与直接用户执行相比,Sudo 执行 shell 脚本的行为不同

与直接用户执行相比,Sudo 执行 shell 脚本的行为不同

runDaemon.ksh我的客户有一个必须以 user 身份执行的脚本app-admin。该脚本将创建与端口 3001 的 IP 的套接字连接。

我被要求自动化这个脚本但使用其他用户automation。他们已经授予我的用户 sudo 权限并runDaemon.ksh按照app-admin他们的/etc/sudoers.

当我尝试使用automation此命令执行我的脚本时sudo -u app-admin ./runDaemon.ksh,守护进程启动了,但它从未创建到端口 3001 的目标 IP 的套接字连接。这很奇怪,我要求客户直接登录,执行脚本,并正常运行。

如何使我的授予用户sudo具有与真实用户相同的行为?

答案1

-isudo 中的参数允许以与真实用户执行它相同的行为运行脚本。

sudo -i -u app-admin ./runDaemon.ksh

相关内容