Page 3 of 3

Re: Автозапуск собственного скрипта после перезагрузки системы Debian 8.x

Posted: Thu Apr 28, 2016 10:18 am
by userV
А если так?

# Required-Start: $all
# Should-Start: $mysql
# Should-Stop:

что то не успевает запускаться.

вариант просто со sleep в начале точно должен работать.

или можно там же все переименовать. cp / mv

Re: Автозапуск собственного скрипта после перезагрузки системы Debian 8.x

Posted: Thu Apr 28, 2016 11:52 am
by NORMANN
При таком варианте
# Required-Start: $all
# Should-Start: $mysql
# Should-Stop:
в /etc/rc2.d, /etc/rc3.d, /etc/rc4.d, /etc/rc5.d
после

Code: Select all

sudo update-rc.d -f xbt remove
update-rc.d xbt defaults
имеем S06xbt вместо S03xbt

а если еще и
вариант просто со sleep в начале точно должен работать.
то все работает.
========================================================================
Для Debian 8.4 на виртуальной машине + Vesta + XBT Tracker остановился на таком варианте, который меня вполне устраивает
xbt скрипт в /etc/init.d/xbt имеет такой вид

Code: Select all

#!/bin/bash
### BEGIN INIT INFO
# Provides:          xbt
# Required-Start:    $all
# Required-Stop:
# Should-Start: $mysql
# Should-Stop: $mysql
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start xbt at boot time
### END INIT INFO

XBT_PATH="/home/xbt/Tracker"
case "$1" in
	start)
		echo "Start XBT Tracker"
		cd $XBT_PATH
		sleep 20s
		while [[ $(pidof xbt) == '' ]]
		do
		./xbt_tracker --conf_file xbt_tracker.conf
		sleep 5s
		done
		echo $?
;;
	stop)
		echo "Stop XBT Tracker"
		kill `cat /var/run/xbt_tracker.pid`
		echo $?
;;
	restart)
		kill `cat /var/run/xbt_tracker.pid`
		sleep 2
		cd $XBT_PATH
		./xbt_tracker --conf_file xbt_tracker.conf
;;
	*)
		echo "Usage: /etc/init.d/xbt {start|stop|restart}"
		exit 1
;;
esac
exit 0
добавлено

Code: Select all

#!/bin/bash
### BEGIN INIT INFO
# Provides:          xbt
# Required-Start:    $all
# Required-Stop:
# Should-Start: $mysql
# Should-Stop: $mysql
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start xbt at boot time
### END INIT INFO
и

Code: Select all

sleep 20s
		while [[ $(pidof xbt) == '' ]]
		do
		./xbt_tracker --conf_file xbt_tracker.conf
		sleep 5s
		done
Делаю его исполняемым

Code: Select all

chmod +x /etc/init.d/xbt
ставлю в в автозапуск

Code: Select all

update-rc.d xbt defaults
ошибок ни каких не выдает
делаю reboot
проверяю работу по адресу http://XX.XX.XX.XX:2710/st
автоматически запустился
Image

Делалось многократно reboot и poweroff, после перезагрузки или старта ОС автозапуск работает без сбоев. Думаю на этом можно и остановиться.
По крайней мере меня это вполне устраивает.

userV, спасибо за подсказки и правильное направление мысли.

Re: Автозапуск собственного скрипта после перезагрузки системы Debian 8.x

Posted: Thu Apr 28, 2016 12:18 pm
by userV
# Should-Stop: $mysql

При остановке или перезапуске xbt будет перезапускаться mysql лучше оставить пустым. А может и нет.
UPD Точно нет. При перезапуске системы просто отключатся перед службами. Можно ставить.

если pidof xbt срабатывает то первоначальное sleep 20 не нужно хотя плюс минус 20 сек может и не критично

Re: Автозапуск собственного скрипта после перезагрузки системы Debian 8.x

Posted: Thu Apr 28, 2016 12:24 pm
by NORMANN
В # Should-Stop: $mysql
$mysql у себя убрал
остальное все оставил, пусть лучше немного позже стартует, чем раньше и не срабатывает.