我有一个python脚本,我想从inittab启动,如下所示
s1:respawn:/home/a_user/app/script.py
我相信initab以root身份执行,因此a_user的环境不可用
脚本需要知道ini文件设置和日志文件存储的“a_user”主目录。我想避免在我的脚本中对这些路径进行硬编码。是否可以以a_user而不是root身份执行此脚本?如果可以,a_user HOME环境变量是否可用?
此致
答案 0 :(得分:1)
使用runuser
(或发行版的等效版本)以不同的用户身份运行它。 runuser
确实更改了$HOME
,但其他类似的命令可能没有。
答案 1 :(得分:1)
你可以将python二进制文件复制到python-suid, 向用户表示你想要运行脚本和chown u + s python-suid
然后在脚本#!/ usr / bin / python-suid
中