在my RHEL box上,服务默认启动时为root
.如果我没记错的话,其他使用/etc/init.d
中init脚本的Linux发行版也是如此.
你认为让进程作为我 Select 的(静态)用户运行的最佳方式是什么?
我找到的唯一方法是使用以下方法:
su my_user -c 'daemon my_cmd &>/dev/null &'
但这看起来有点乱...
是否隐藏了一些魔力,提供了一种简单的机制,可以像其他非root用户一样自动启动服务?
EDIT:我应该说,我在这个例子中开始的过程要么是Python脚本,要么是Java程序.我不想在它们周围写一个原生包装,所以不幸的是,我不能像Black建议的那样调用setuid().