이 스크립트를 사용하여 저장소 슬랙웨어(asc, txt 등 생성)를 업데이트합니다.
http://slackware.org.uk/people/alien/tools/gen_repos_files.sh
내 예상 스크립트를 사용하여 "자동화"했습니다.
#!/bin/bash
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
완벽하게 작동하지만 rc.local 또는 crontab에서 실행할 경우 쉘에서 시작할 때만 작동합니다. 작동하지 않습니다. 두 번째 스크립트(gen_repos.sh)가 여전히 대기 중입니다. 왜?
답변1
해결책을 찾았습니다.
예를 들어
nohup /usr/local/bin/aggiornailrepo.sh&
rc.local에서
그리고 inotifywait에서 -o /dev/null을 잊지 마세요. 그렇지 않으면 쉘 없이는 작동하지 않습니다.