我正在以用户身份运行我的服务(已获得正确的权限并添加到适当的组),但是如果需要,我也可以以root用户身份运行它。如何禁用整个系统而不是单个应用程序?
假定它以bash编写。您可以执行以下操作:
if [[ $EUID -eq 0 ]]; then
echo "Cant run this as root" 1>&2
exit 1
fi
检测哪个用户正在运行脚本的另一种方法是
id -u
$UID
我当前在我的Mac Box中,并以root用户身份登录到终端,这是输出
~# id -u
0
~# echo $UID
0
~# echo $EUID
0
~#
~#
所以您基本上是说,如果我对用户ID的检查为0,则为根。因此,只需打印一条消息并退出