Я стал очень приученным к руководящим сервисным стартапам на использовании платформ Redhat/RHEL chkconfig
хотя это, кажется, не путь Debian/Ubuntu - Как я обновляю runlevel информацию для системных служб на Ubuntu?
В конечном счете ища эквиваленты:
chkconfig --add <service>
chkconfig --level 345 <service> on
chkconfig --del <service>
Эквивалентом chkconfig
является update-rc.d
Эквивалентами, которые вы ищете, являются
update-rc.d <service> defaults
update-rc.d <service> start 20 3 4 5
update-rc.d -f <service> remove
. См. на этой полезной странице для получения дополнительной информации или обратитесь к человеку. обновление-rc.d
Лучшая альтернатива IMHO - это sysv-rc-conf. Для установки достаточно запустить команду:
sudo apt-get install sysv-rc-conf
После установки запустите команду:
sudo sysv-rc-conf
Вы можете проверить или снять галочку варианты запуска службы на любом уровне выполнения и могут даже останавливать или запускать службы с этой консоли. Это незаменимый инструмент для включения или отключения приложений на постоянной основе для загрузки вашей Ubuntu. Если вам нужно быстрое изменение, вы можете использовать интерфейс CLI:
Например, чтобы остановить ssh на уровнях 3 и 5 выполнение:
sysv-rc-conf-off level 35 ssh
Atd для запуска на уровнях запуска 2,3,4 и 5:
sysv-rc-conf on atd
Если вы хотите узнать больше:
man sysv-rc-conf
В настоящее время нет стабильного выпуска для работы со сценариями Upstart. Джейкоб Педдикорд написал jobservice (backend daemon) и jobs-admin (GTK + GUI, который говорит с ним) для своего проекта Google Summer of Code. Пакеты Lucid содержатся в в его PPA . Они также существуют во Вселенной в Maverick. Для jobservice пока нет интерфейса командной строки, только jobs-admin.
Попробуйте:
apt-get install chkconfig
Это работает, по крайней мере, в Ubuntu 12.04.
Позволяет обходу от НУЛЯ до Цели - как сделать это с шаг за шагом.
Шаг 1: позволяет записи привет мир
cat >> /var/tmp/python/server.py <<\EOF
#/usr/bin/python
import time
while True:
print "hello> YES Bello"
time.sleep(30)
EOF
Шаг 2: позволяет подают нашу привет мировую заявку server.py автоматизированный
cat >> /var/tmp/myserver.sh <<\EOF
#!/bin/sh
script='/var/tmp/python/server.py'
export DISPLAY=:0.0 && /usr/bin/python $script &
EOF
chmod +x /var/tmp/myserver.sh
cat >> /etc/init.d/myserver <<\EOF
#! /bin/sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin
DAEMON=/var/tmp/myserver.sh
PIDFILE=/var/run/myserver.pid
test -x $DAEMON || exit 0
. /lib/lsb/init-functions
case "$1" in
start)
log_daemon_msg "Starting feedparser"
start_daemon -p $PIDFILE $DAEMON
log_end_msg $?
;;
stop)
log_daemon_msg "Stopping feedparser"
killproc -p $PIDFILE $DAEMON
PID=`ps x |grep server.py | head -1 | awk '{print $1}'`
kill -9 $PID
log_end_msg $?
;;
force-reload|restart)
$0 stop
$0 start
;;
status)
status_of_proc -p $PIDFILE $DAEMON atd && exit 0 || exit $?
;;
*)
echo "Usage: /etc/init.d/atd {start|stop|restart|force-reload|status}"
exit 1
;;
esac
exit 0
EOF
chmod +x /etc/init.d/myserver
chmod -R 777 /etc/init.d/myserver
Шаг 3:
$ update-rc.d myserver defaults
update-rc.d: warning: /etc/init.d/myserver missing LSB information
update-rc.d: see <http://wiki.debian.org/LSBInitScripts>
Adding system startup for /etc/init.d/myserver ...
/etc/rc0.d/K20myserver -> ../init.d/myserver
/etc/rc1.d/K20myserver -> ../init.d/myserver
/etc/rc6.d/K20myserver -> ../init.d/myserver
/etc/rc2.d/S20myserver -> ../init.d/myserver
/etc/rc3.d/S20myserver -> ../init.d/myserver
/etc/rc4.d/S20myserver -> ../init.d/myserver
/etc/rc5.d/S20myserver -> ../init.d/myserver
Надеюсь, что это помогло.