Мне нужно отслеживать изменения в папке и ее подпапках, и для этой цели я использую Watcher. На данный момент проблем нет. Тем не менее, я хочу, чтобы демон Watcher запускался при перезагрузке. Для статеров я попробовал следующее:
/etc/init.d
Здесь был создан следующий простой скрипт
#! /bin/bash
watcher.py start
с watcher.py, расположенный в папке /usr/local/bin. Затем я создал символическую ссылку из папки /etc/rc2.d ln -s /etc/init.d/watcher /etc/rc2.d/S99watcher и перезагрузился.
Проверка watcher.py status сообщила, что она не была запущена. Поэтому я изменил свой скрипт init.d следующим образом
#! /bin/bash
/usr/bin/python /usr/local/bin/watcher.py start
и перезагрузился. На этот раз watcher.py status правильно сообщил о том, что Watcher работает.
Непосредственная проблема может быть решена, но я до сих пор не понимаю, почему. Почему из приглашения интерактивной оболочки я могу просто набрать watcher.py start, чтобы демон Watcher был запущен во время загрузки, мне нужно явно указать Python на запуск этого скрипта?
Обычно я получаю свой shell & amp; скрипты запуска, работающие не отказываясь от каких-либо глубоких знаний о том, как это работает. Я надеюсь, что кто-то здесь сможет обеспечить более информированное понимание.