以root用户身份运行bash脚本后,如何让脚本自动强制我的用户退出root?

时间:2014-06-26 20:05:18

标签: linux bash shell root

我有一个必须由root用户运行的bash脚本,但是,我希望该脚本强制用户自动退出root。我知道你通过在命令行中输入'exit'来退出root,但是将它放入bash脚本只会退出脚本。感谢帮助!

3 个答案:

答案 0 :(得分:0)

您可以尝试使用William提供的建议

$sudo ./your.sh

答案 1 :(得分:0)

您还可以在脚本开头使用sudo -v来询问sudo密码。 最后sudo -k清除缓存。

答案 2 :(得分:0)

只需将这样的内容粘贴到脚本的开头:

if [ "$(whoami)" == root ]; then
   echo "ERROR: root cannot run this script"
   exit 1
fi

这将强制您只能以普通用户身份运行脚本,并且当脚本退出时,您将再次成为常规用户。然后在脚本中的每个命令前放置一个sudo,该命令需要root权限。使用缓存sudo凭证时,脚本用户只需输入一次他/她的密码。

相关问题