Solução encontrada, nohup.
Por exemplo
nohup /usr/local/bin/aggiornailrepo.sh&
Em rc.local
E não se esqueça de -o / dev / null em inotifywait caso contrário, não funcionará sem um shell
Eu uso este script para atualizar meu repositório slackware (gerar asc, txt, etc)
http://slackware.org.uk/people/alien/tools/gen_repos_files.sh
Eu o "automatizei" com meu script de expectativa
#!/bin/sh
set -e
funct()
{
#script update repo http
pass3="proot"
expect -c "
spawn /usr/local/bin/gen_repos_files.sh -l /tmp/changelog
expect \"Enter your GPG passphrase: \"
send \"$pass3\n\"
interact
"
find /srv/httpd/htdocs/repos/slackware-mg/ -type f |xargs chmod 644 -v
}
while inotifywait -qqre modify /http/srv/httpd/htdocs/repos/slackware-mg; do funct; done
Funciona perfeito, mas somente se eu iniciá-lo a partir de um shell, se eu executá-lo, de rc.local ou crontab..não funciona, o segundo script (gen_repos.sh) permanece adormecido. Por quê?