服务默认启动时以 root
开始在我的 RHEL 框。如果我没记错的话,其他使用 /etc/init.d
中的 init 脚本的 Linux 发行版也是如此。
您认为让这些进程作为我选择的(静态)用户运行的最佳方式是什么?
我想到的唯一方法是这样的:
su my_user -c 'daemon my_cmd &>/dev/null &'
但这看起来有点乱。
是否存在一些隐藏的魔力,提供一种简单的机制,以其他非 root 用户的身份自动启动服务?
编辑: 我应该说,我在这个实例中启动的进程要么是 Python 脚本,要么是 Java 程序。我不想在它们周围编写本地包装器,所以不幸的是,我不能像 黑色建议的那样调用 Setuid ()。