【发布时间】:2020-02-17 20:52:44
【问题描述】:
我正在为我编写的一个小程序创建一个安装脚本,它需要以 root 身份运行才能将可执行文件复制到 /usr/bin/,尽管有一部分脚本必须作为非根用户。
我知道在脚本中使用 sudo 是不好的做法,但这是我能想到的唯一方法,无需分隔文件或询问用户名。肯定还有别的办法。
如果我知道以 sudo 身份运行脚本的用户名,我可以使用
sudo -u username command
在非根部分的脚本中,但是在运行脚本时如何在不询问用户名的情况下获取用户名?
【问题讨论】:
-
你应该可以使用$SUDO_USER,所以你可以
sudo -u $SUDO_USER command -
谢谢,这就是我想要的。我知道它会像那样简单,只是不知道它或如何搜索它
标签: bash shell root privileges