我正在做一个新的工作,我需要作为另一个用户运行一个可执行文件。没有什么像su所提供的那样奇特,也没有伴随而来的混乱的SELinux上下文。一个快速的互联网搜索推荐runuser而不是su来完成这项任务,但是在Ubuntu13.10上找不到runuser。
我是否应该在Ubuntu上使用su --它是否足够聪明以避免完全授权?结果作业是可移植到其他发行版,还是会遇到SELinux问题?
最终,在一个暴发户工作中改变用户的最佳方式是什么?
显然,暴发户>= 1.4支持setuid和setgid,但它们是有限的,因为它们影响到所有的工作-*/post-*脚本,而不仅仅是主脚本/exec。如果有一种方法正确地将单个命令拖到另一个用户那里,那还是很好的。我已经考虑过使用stop-start-daemon,但它与暴发户重叠太多,可能会导致expect行为怪异。
发布于 2013-11-23 16:09:24
关于这个问题有一个错误报告。
建议的工作围绕这个限制创建一个单独的作业来处理前/后条件,同时作为根用户运行。您需要正确设置启动/停止条件:模拟pre的作业必须在当前为您的作业定义的条件上开始( main-job . post ),您当前的任务必须在作业启动前运行,模拟后的作业(post.post)必须在主程序停止时开始。
https://askubuntu.com/questions/381040
复制相似问题