我创建了一个小脚本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 运行级别的更多信息,请参见这里