Помогите с автозагрузкой на Linux
Подскажите как кто реализовывает автозагрузку серверов CS:Source...
Что ты имеешь ввиду, говоря про автозагрузку (автостарт при падении или при аварийной перезагрузке физического сервера aka дедик)?
Никто не заставляет тебя сюда смотреть!
Он имел ввидуSigaro писал(а):Что ты имеешь ввиду, говоря про автозагрузку (автостарт при падении или при аварийной перезагрузке физического сервера aka дедик)?
при аварийной перезагрузке физического сервера
создаешь файлик css.sh пихаешь туда
делаешь chmod a+x css.sh
пихаешь его в /etc/init.d/ (или rc.d если нет первого)
делаешь команду
update-rc.d css.sh defaults
радуешься жизни.
ну или пользуешься гуглом
Код: Выделить всё
#! /bin/bash
screen -dm -S css "cd папка с ксс; ./srcds_run -blablabla"
пихаешь его в /etc/init.d/ (или rc.d если нет первого)
делаешь команду
update-rc.d css.sh defaults
радуешься жизни.
ну или пользуешься гуглом
- cuttep
- Капитан
- Сообщения: 446
- Зарегистрирован: 26.06.2010
- Откуда: http://www.evoplay.ru
- Поблагодарили: 1 раз
- Контактная информация:
Krab1
после выполнения команды, пишет:
Добавлено спустя 4 минуты 36 секунд:
cuttep
мне нужна автозагрузка, а не перезагрузка...
хотя я думал чтобы автозагрузку через cron зделать но не знаю как написать чтобы сервера наново не запускались(чтобы оно проверяло ли сервер запущен если нет то запускало).
после выполнения команды, пишет:
Код: Выделить всё
update-rc.d: using dependency based boot sequencing
insserv: warning: script 'zm.sh' missing LSB tags and overrides
cuttep
мне нужна автозагрузка, а не перезагрузка...
хотя я думал чтобы автозагрузку через cron зделать но не знаю как написать чтобы сервера наново не запускались(чтобы оно проверяло ли сервер запущен если нет то запускало).
Ищите поиском
В частности я показывал тут скрипт авторана http://forum.csmania.ru/viewtopic.php?f=28&t=21555
Для устранения проблем с LSB (update-rc.d почти выпилен из debian squeeze, вместо него используется insserv) добавьте в скрипт примерно такую конструкцию:
В частности я показывал тут скрипт авторана http://forum.csmania.ru/viewtopic.php?f=28&t=21555
Для устранения проблем с LSB (update-rc.d почти выпилен из debian squeeze, вместо него используется insserv) добавьте в скрипт примерно такую конструкцию:
Кидаете получвишийся скрипт в /etc/init.d/, выставляете права, делаете insserv имя_скрипта.### BEGIN INIT INFO
# Provides: short_server_name
# Required-Start:
# Required-Stop:
# Should-Start: ifupdown
# Should-Stop: ifupdown
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: server_description
### END INIT INFO
jabber: [email protected]
jamaicada
спс, попробую такой вариант
может кто-тo реализует автозагрузку через cron(думаю так будет эффективнее автозагрузка + проверка)...???
спс, попробую такой вариант
может кто-тo реализует автозагрузку через cron(думаю так будет эффективнее автозагрузка + проверка)...???
-
- Полковник
- Сообщения: 6942
- Зарегистрирован: 03.06.2009
- Благодарил (а): 2390 раз
- Поблагодарили: 2807 раз
- Контактная информация:
Сохраняешь в sh:
В крон добавляешь задание по выполнению этого скрипта каждую минуту/час, как тебе нужно.
Только не забывай, что когда нужно остановить сервер, нужно скрипт переименовать, а то мало ли.
Код: Выделить всё
#!/bin/sh
#clear
if [[ `screen -ls |grep имя_скрина` ]]
then
echo
else
строка запуска сервера
fi
Только не забывай, что когда нужно остановить сервер, нужно скрипт переименовать, а то мало ли.
Renaissance
вот мой скрипт:
#!/bin/sh
#clear
if [[ `screen -ls |grep mix` ]]
then
echo
else
screen -A -m -d -S mix /root/mix/orangebox/srcds_tk
fi
при запуске выбивает такое:
start.sh: 8: [[: not found
сервер запускается но на скрин зайти нельзя
вот мой скрипт:
#!/bin/sh
#clear
if [[ `screen -ls |grep mix` ]]
then
echo
else
screen -A -m -d -S mix /root/mix/orangebox/srcds_tk
fi
при запуске выбивает такое:
start.sh: 8: [[: not found
сервер запускается но на скрин зайти нельзя
- NiGHt-LEshiY
- Полковник
- Сообщения: 10258
- Зарегистрирован: 13.06.2008
- Откуда: Россия
- Благодарил (а): 752 раза
- Поблагодарили: 2667 раз
- Контактная информация:
Шелл какой? В bash, насколько я помню, [[ - builtin command.[[: not found
Можно заменить на [ или поставить нормальный шелл.
Кодекс поведения участников сообщества — обязательно к прочтению.
Просьба присылать сообщения об ошибках в ЛС.
Просьба присылать сообщения об ошибках в ЛС.
-
- Полковник
- Сообщения: 6942
- Зарегистрирован: 03.06.2009
- Благодарил (а): 2390 раз
- Поблагодарили: 2807 раз
- Контактная информация:
вот сделал так:
#!/bin/bash
#clear
if [[ `screen -ls |grep mix` ]]
then
echo
else
screen -A -m -d -S mix /root/mix/orangebox/srcds_tk
fi
в кроне строка
*/1 * * * * cd /root/mix/orangebox && ./start.sh
вроде всё работает...
Всем спасибо за ответы
#!/bin/bash
#clear
if [[ `screen -ls |grep mix` ]]
then
echo
else
screen -A -m -d -S mix /root/mix/orangebox/srcds_tk
fi
в кроне строка
*/1 * * * * cd /root/mix/orangebox && ./start.sh
вроде всё работает...
Всем спасибо за ответы
Последний раз редактировалось rsg16 24.08.2011, 14:05, всего редактировалось 1 раз.
-
- Полковник
- Сообщения: 6942
- Зарегистрирован: 03.06.2009
- Благодарил (а): 2390 раз
- Поблагодарили: 2807 раз
- Контактная информация:
Потому что нужно:
Скрипт положи в домашнюю, и не надо никаких cd в кронтабе.
Код: Выделить всё
cd mix/orangebox/ && screen -AmdS mix ./srcds_tk
Код: Выделить всё
0-59 * * * * ~/имяскрипта.sh &> /dev/null
Чувствуется глубина познания вопроса. И назревает пара вопросов.
1. Стопить как сервер будете? Запуск сервера в скрине порождает 3 процесса довольно схожих визуально. Я не говорю про рестарт.
2. И сколько раз твердили миру... не запускать сетевые приложения от рута. Ну не надо этого делать.
3. Крон был придуман, блин, не для запуска серверов, а для переодичного выполнения чего либо. Для определения статуса сервера можно использовать monit.
1. Стопить как сервер будете? Запуск сервера в скрине порождает 3 процесса довольно схожих визуально. Я не говорю про рестарт.
2. И сколько раз твердили миру... не запускать сетевые приложения от рута. Ну не надо этого делать.
3. Крон был придуман, блин, не для запуска серверов, а для переодичного выполнения чего либо. Для определения статуса сервера можно использовать monit.
jabber: [email protected]