【发布时间】:2019-08-30 00:12:17
【问题描述】:
为了确保我的 bash 脚本以 root 身份运行,我使用:
if [ "$UID" -ne "0" ]; then
echo "You must root to run $0. Try following"
echo "sudo $0"
exit 9
fi
但是在脚本中,有一些我想用sudo -u $USER 运行的命令,但是,如果我以 root 身份运行整个脚本,它会以 sudo -u root 出现($USER 将是 root,而不是原始 USER )。
如何以 root 身份运行脚本,同时以默认登录用户身份运行脚本中的某些命令,这样我就不必输入密码或执行chmod 来更改权限?
【问题讨论】:
-
您写道“...我以 root 身份运行整个脚本,它的输出为
sudo -u $USER”。我想您想问“我以 root 身份运行整个脚本,它以sudo -u root的形式出现($USER将是 root,而不是原始用户)”。您可以编辑您的问题以明确说明吗? -
@WalterA 是的,我确实是这个意思。我已经编辑了我的问题。