Помогите, пожалуйста написать такой скрипт который выполняет консольную команду такого вида
python /home/proj/manage.py runserver
Сам скрипт будет располагаться на автозапуск те в /usr/local/etc/rc.d
те он должен выполнятся коммандой /usr/local/etc/rc.d/serv.sh start
Я пробовал так:
#!/bin/sh
python /home/proj/manage.py runserver
Но не получается - пишет Command not found.
[Решено] Запуск скрипта
если стартовому скрипту нужно обрабатывать параметры start/stop то берем любой скрипт из /usr/local/etc/rc.d и лепим по образу и подобию.
Evg,
а из терминала вы как сервре запускаете? и как останавливаете?
У меня в /usr/local/etc/rc.d кроме моего скрипта ничего нету...
Запускаю так
sh serv.sh
Останавливаю ctrl-c
Evg, читаем Запуск сервисов в handbook и здесь
Прочитал, делаю так:
#!/bin/sh
echo -n ' serv'
case "$1" in
start)
python /home/proj/manage.py runserver 92.63.106.237:80
;;
stop)
kill -9 `cat /var/run/serv.pid`
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
exit 64
;;
esac
exit 0
Но что-то тот же результат..
а если указать путь до python, узнать путь к команде можно так:
#whereis python
#!/bin/sh
echo -n ' serv'
case "$1" in
start)
/usr/local/bin/python /home/id2co/manage.py runserver 92.63.106.237:80
;;
stop)
kill -9 `cat /var/run/serv.pid`
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
exit 64
;;
esac
exit 0
тоже не идет..
права на запуск так же стоят? а что пишет то? ошибки есть какие?
chmod 755 serv.sh
ставлю
пишет при запуске
serv.sh: Command not found.
serv.sh: Command not found.
[console]
./serv.sh
[/console]
Вот так если запускать
./serv.sh start
сначала думает - потом выдает
servKilled
В итоге сервер не запускается..
Вообще если это сервер может его демоном как-то запускать нужно? а то он весь консоль блокирует пока ctrl-c не нажмешь..
или в фоновый режим отправлять
Ну а как сделать то?) Блин с такой простой фигней и столько гемора..
После нескольких перезагрузок все само стало работать))