![종료하기 전에 스크립트를 실행하면 작동하지 않는 것 같습니다.](https://linux55.com/image/21914/%EC%A2%85%EB%A3%8C%ED%95%98%EA%B8%B0%20%EC%A0%84%EC%97%90%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%8B%A4%ED%96%89%ED%95%98%EB%A9%B4%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EB%8A%94%20%EA%B2%83%20%EA%B0%99%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
나는 작은 스크립트를 만들어서 backup_files.sh
다음 위치에 넣었습니다 /etc/init.d
.
#/bin/sh
logfile=/media/verbatim/log
date >> $logfile
rsync -av /home/philipp/Documents /media/verbatim/ >> $logfile
컴퓨터가 다시 시작되거나 종료될 때 이 스크립트가 실행되기를 원하므로 다음을 수행했습니다.
sudo ln -s /etc/init.d/backup_files.sh /etc/rc0.d/backup_files.sh
sudo ln -s /etc/init.d/backup_files.sh /etc/rc6.d/backup_files.sh
또한 스크립트를 실행 가능하게 만들었습니다.
sudo chmod +x /etc/init.d/backup_files.sh
나는 "수동으로" 스크립트를 시도했는데 훌륭하게 작동했습니다. 그러나 컴퓨터를 종료하거나 다시 시작하면 분명히 실행되지 않습니다.
내가 뭘 잘못하고 있는지 아는 사람이 있나요?
참고: 저는 Xubuntu 11.10을 사용하고 있습니다.
답변1
마침내 나는 그들에게 특정 파일 이름을 제공해야 한다는 것을 알아냈습니다.
sudo ln -s /etc/init.d/backup_files.sh /etc/rc0.d/K10backup_files.sh
sudo ln -s /etc/init.d/backup_files.sh /etc/rc6.d/K10backup_files.sh
/etc/rc0.d 및 /etc/rc6.d의 스크립트는 각각 종료 및 다시 시작 시 실행됩니다. 이름이 대문자로 시작하는 스크립트는 k
매개변수로 실행되고, stop
이름이 대문자로 시작하는 스크립트는 S
매개변수로 실행됩니다 start
. 또한 파일 실행은 사전순으로 수행됩니다.
이러한 런레벨의 파일 이름은 다음과 같습니다.
[K | S] + nn + [string]
nn -> 두 자리
문자열 ->~ 해야 하다가 되다소문자끈
Linux 런레벨에 대한 자세한 내용은 다음을 참조하세요.여기