W /etc/rc.local
skrypcie mam jedno polecenie, które ma uruchomić demona aktualizacji Tiny Tiny RSS podczas uruchamiania, ale skrypt nie jest uruchamiany podczas uruchamiania. Czemu?
Cały plik /etc/rc.local:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/sbin/start-stop-daemon -b -c www-data:www-data -S -x /usr/bin/php /var/www/ttrss/update_daemon2.php -- -quiet
exit 0
/etc/rc.local
jest wykonywalny:
# ls -l /etc/rc.local
-rwxr-xr-x 1 root root 342 May 25 16:14 /etc/rc.local
/etc/init.d/rc.local
istnieje i jest wykonywalny:
# ls -l /etc/init.d/rc.local
-rwxr-xr-x 1 root root 801 Jul 27 2012 /etc/init.d/rc.local
/etc/init.d/rc.local
ma być wykonywany podczas uruchamiania dla tego poziomu pracy:
# runlevel
N 2
# ls -l /etc/rc2.d/S99rc.local
lrwxrwxrwx 1 root root 18 Sep 22 2012 /etc/rc2.d/S99rc.local -> ../init.d/rc.local
Jeśli ręcznie wywołam plik /etc/rc.local z wiersza polecenia, ładuje się demon update_daemon ...
# /etc/rc.local
# ps ax | grep update_daemon2.php
2233 ? S 0:00 /usr/bin/php /media/sda5/www/news/update_daemon2.php -quiet
2234 ? S 0:00 /usr/bin/php /media/sda5/www/news/update_daemon2.php -quiet
... co muszę pamiętać za każdym razem, gdy mój serwer uruchamia się ponownie, dopóki problem nie zostanie rozwiązany.
Podobne pytania już istnieją, ale jak dotąd nie byłem w stanie zastosować informacji zawartych w moim konkretnym problemie.
Dlaczego komenda w rc.local nie jest wykonywana podczas uruchamiania?
requiretty
ustawieniem. Po zalogowaniu wykonuje się skrypt w TTY, ale podczas uruchamiania systemu nie ma go w TTY. Ten link może ci pomóc shell-tips.com/2014/09/08/… Dzięki.