2016-03-08 16 views
1

如何將特定用戶的電子郵件發送給腳本,並將該腳本與特定用戶的登錄信息一起運行。如何使用用戶和路徑將postfix輸入管道化爲特定腳本?

我有這個在我的/etc/postfix/master.cf文件:

my_transport unix - n n - 50 pipe 
    flags=R user=deploy argv=/srv/www/myscript 

我的腳本打印$PATHwhoami到一個文件中,這就是我得到

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作爲部署用戶,但使用真實路徑而不是短路徑。

謝謝!

回答

1

我做了,我用它來打電話給我的舊腳本

PATH=/home/deploy/.rbenv/bin:/home/deploy/.rbenv/shims:$PATH 
source "$1" 
exit $? 

更多信息在this diff

希望新的腳本一個骯髒的黑客,這將是對別人有用:d

相關問題