Запуск скрипта перед выключением, похоже, не работает

Запуск скрипта перед выключением, похоже, не работает

Я создал небольшой скрипт 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 можно узнать здесьздесь

Связанный контент