我可以限制我的服务以root用户身份运行吗?

问题描述 投票:-2回答:1

我正在以用户身份运行我的服务(已获得正确的权限并添加到适当的组),但是如果需要,我也可以以root用户身份运行它。如何禁用整个系统而不是单个应用程序?

linux root systemd user-permissions
1个回答
2
投票

假定它以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,则为根。因此,只需打印一条消息并退出

© www.soinside.com 2019 - 2024. All rights reserved.