Я купил Raspberry Pi 3 пару недель назад и давно с ней играю. Я использую Raspbian Lite без головы, и я хочу сделать кое-что при загрузке. Ничего захватывающего, всего несколько команд, но я нахожу это очень трудным для выполнения. Я буду использовать упрощенный пример моего сценария, но это то, к чему я работал, и это то, что я не могу заставить работать. Вот что я сделал до сих пор:
Создал файл, /etc/init.d/sanity
#!/bin/sh # /etc/init.d/sanity # If you want a command to always run, put it here echo "sanity script is running" # Carry out specific functions when asked to by the system case "$1" in start) echo "START START START" echo "START START START" > /root/START.txt ;; stop) echo "STOP STOP STOP" echo "STOP STOP STOP" > /root/STOP.txt ;; *) echo "Usage: /etc/init.d/sanity " echo "FAIL FAIL FAIL" > /root/FAIL.txt exit 1 ;; esac exit 0 Затем изменили разрешения с помощью:
chmod 755 /etc/init.d/sanity Который, кажется, работает:
root@raspberrypi:/etc/init.d|⇒ ll total 304 ...blah blah blah... -rwxr-xr-x 1 root root 493 Aug 13 23:09 sanity ...blah blah blah... И, вручную запустить, кажется, работает:
root@raspberrypi:/etc/init.d|⇒ sh sanity start sanity script is running START START START root@raspberrypi:/etc/init.d|⇒ sh sanity stop sanity script is running STOP STOP STOP root@raspberrypi:/etc/init.d|⇒ sh sanity sanity script is running Usage: /etc/init.d/sanity root@raspberrypi:/etc/init.d|⇒ cat /root/STOP.txt STOP STOP STOP root@raspberrypi:/etc/init.d|⇒ cat /root/START.txt START START START root@raspberrypi:/etc/init.d|⇒ cat /root/FAIL.txt FAIL FAIL FAIL Выглядит хорошо. Теперь я настроил его запуск при загрузке, затем попытался запустить его как службу ... но ничего не происходит.
root@raspberrypi:/etc/init.d|⇒ update-rc.d sanity defaults insserv: warning: script 'K01sanity' missing LSB tags and overrides insserv: warning: script 'sanity' missing LSB tags and overrides root@raspberrypi:/etc/init.d|⇒ service sanity start root@raspberrypi:/etc/init.d|⇒ ls /root configurations root@raspberrypi:/etc/init.d|⇒ Итак, что я здесь делаю не так? Есть ли что-то особенное в Малиновом Писе, которое мне не хватает? Я точно знаю, что делал это раньше с Ubuntu и Debian, и у меня никогда не было таких проблем. Это сводит меня с ума.
Okay, you didn't really answer my question but after a lot of reading I eventually accomplished what I wanted. One thing I was completely unable to do was make a service unit dependent on two path units. Can you point me to any doc that deals specifically with path units and/or unit dependencies?