如何将特定用户的电子邮件传递给脚本以及使用特定用户的登录名运行该脚本。
我在/etc/postfix/master.cf文件中有这个:
my_transport unix - n n - 50 pipe
flags=R user=deploy argv=/srv/www/myscript
我的脚本将$PATH
和whoami
打印到文件中,这就是我得到的
PATH=/usr/bin:/bin
whoami = deploy
如果我运行sudo su - deploy
并运行echo "PATH=$PATH"
和echo "whoami = $(whoami)"
我就会
PATH=/home/deploy/.rbenv/shims:/home/deploy/.rbenv/bin:/home/deploy/.rbenv/shims:/home/deploy/.rbenv/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
whoami = deploy
如何将postfix运行myscript作为部署用户,但使用它的真实路径,而不是短路径。
谢谢!
答案 0 :(得分:1)
我用一个新脚本做了一个肮脏的黑客,我用来调用我的旧脚本
PATH=/home/deploy/.rbenv/bin:/home/deploy/.rbenv/shims:$PATH
source "$1"
exit $?
中的更多信息
希望这对其他人有用:D