Fernando Rodriguez <cyklon...@gmail.com> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > On 07/13/2016 07:10 AM, Alan McKinnon wrote: > > On 12/07/2016 03:47, jens w wrote: > >> .procmailrc > >> :0 c > >> * !^X-Loop: n...@example.com > >> | formail -X "From:" | $HOME/bin/script.sh > >> > >> procmail.log > >> procmail: Executing " formail -X "From:" | $HOME/bin/script.sh > >> > >> for incoming mail, a script is executed. logfile has the same > >> entry as it is in other users. but the script do nothing. > >> > >> How executing a command as a nologin user? > >> > > > > > > You can't, not the way you are doing it. > > You want to launch a shell script for the user, but the user's > > shell is /sbin/nologin. This exits immediately without launching > > the script. > > > > Give the user a real shell. > > > > Alan > > > > I've been following this thread and thinking the same thing but > wasn't sure.
I don't think so. To proof it, I created this user: nologinuser:x:1015:1016::/home/nologinuser:/sbin/nologin Then I created this script: #!/bin/sh # date >> /home/nologinuser/envars.txt echo $HOME >> /home/nologinuser/envars.txt echo $PATH >> /home/nologinuser/envars.txt echo "-----------------------" >> /home/nologinuser/envars.txt I stored it as /var/script-nologinuser/testscript.sh. I had to store it at this place because /home is mounted with the noexec option on my system. Then I created a cronjob for the nologinuser user: */2 * * * * /var/script-nologinuser/testscript.sh The result is the file /home/nologinuser/envars.txt with this content: Wed Jul 13 18:10:01 CEST 2016 /home/nologinuser /usr/bin:/bin ----------------------- Wed Jul 13 18:12:01 CEST 2016 /home/nologinuser /usr/bin:/bin ----------------------- The ownership and the rights for /home/nologinuser/, /var/script-nologinuser/ and /var/script-nologinuser/testscript.sh are nologinuser:nologinuser and 700. So it seems, that it is possible to execute scripts without setting a shell in /etc/passwd. I don't know why it doesn't work for jens w. -- Regards wabe