[BASH] Старт/Стоп/Перезапуск и пр. |
Здравствуйте, гость ( Вход | Регистрация )
[BASH] Старт/Стоп/Перезапуск и пр. |
1.8.2011, 13:42
Сообщение
#1
|
|
Освоившийся участник Группа: Пользователи Сообщений: 216 Регистрация: 23.10.2008 Из: Саратов Пользователь №: 865 Спасибо сказали: 60 раз |
Предлагаю скрипт запуска, остановки и перезапуска rushub'a:
Не забудьте изменить параметры скрипта: директории и пути. Просмотр кода bash Код #!/bin/sh ### BEGIN INIT INFO # Provides: rushub # Required-Start: $network # Required-Stop: $network # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Enable service provided by rushub. ### END INIT INFO PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin NAME="RusHub" PATH_DAEMON="/home/shadowx/rushub_bin" DAEMON="$PATH_DAEMON/$NAME" PATH_DAEMON_CFG="$PATH_DAEMON/RusHub.xml" PIDF="$PATH_DAEMON/rushub.pid" ARGS="-c $PATH_DAEMON_CFG" USER="shadowx" start() { echo -n "Запуск $NAME: " start-stop-daemon --start --chuid $USER --make-pidfile "$PIDF" --pidfile "$PIDF" --name $NAME --background --startas $DAEMON -- $ARGS echo "готово." } stop() { echo -n "Остановка $NAME: " start-stop-daemon --chuid $USER --stop --pidfile "$PIDF" --name $NAME --retry=TERM/5/KILL/10 rm "$PIDF" echo "готово." } restart() { stop sleep 2 start } if [ ! -x "$DAEMON" ] then echo "отсутствует файл для запуска $DAEMON" exit 0 fi case "$1" in start) start ;; stop) stop ;; restart) restart ;; status) if [ -f "$PIDF" ]; then PID=$(cat $PIDF) if [ `ps auwx|grep $NAME|grep $PID|grep -v -c grep` = 1 ] then echo "процесс $NAME работает [pid: $PID]." exit 0 fi echo "процесс $NAME не запущен." exit 3 fi echo "процесс $NAME не запущен." exit 3 ;; *) echo "Использование {start|status|stop|restart}" exit 1 ;; esac exit 0 |
|
|
1.8.2011, 20:15
Сообщение
#2
|
|
Продвинутый участник Группа: Пользователи Сообщений: 189 Регистрация: 20.4.2009 Пользователь №: 3 121 Спасибо сказали: 12 раз |
Случаем не со Skeleta делали ?
Усе ровно отлично, гуд, так держать ! |
|
|
1.8.2011, 20:26
Сообщение
#3
|
|
Освоившийся участник Группа: Пользователи Сообщений: 216 Регистрация: 23.10.2008 Из: Саратов Пользователь №: 865 Спасибо сказали: 60 раз |
в интернете почитал про баш с примерами и пр. и навело на мысль а почему бы и нет ? .... вот пользуйтесь ..
|
|
|
1.8.2011, 20:45
Сообщение
#4
|
|
Продвинутый участник Группа: Пользователи Сообщений: 189 Регистрация: 20.4.2009 Пользователь №: 3 121 Спасибо сказали: 12 раз |
Не Могу понять чуток !
Скрипт от Рута или от пользователя будет запускаться ? |
|
|
1.8.2011, 20:53
Сообщение
#5
|
|
Освоившийся участник Группа: Пользователи Сообщений: 216 Регистрация: 23.10.2008 Из: Саратов Пользователь №: 865 Спасибо сказали: 60 раз |
|
|
|
1.8.2011, 20:57
Сообщение
#6
|
|
Продвинутый участник Группа: Пользователи Сообщений: 189 Регистрация: 20.4.2009 Пользователь №: 3 121 Спасибо сказали: 12 раз |
назови скрипт rushub и положи в директорию: Код /etc/init.d/ и да от рута ..... это плоха что от рута ! Береги систему ! su USER -c "ПУТЬ/ПУТЬ/RusHub -d" Используй такие строки ! Заменяя USER = на своего юзера системы при котором будет производится запуск ! ну путь это и так понятно ! |
|
|
1.8.2011, 20:57
Сообщение
#7
|
|
Освоившийся участник Группа: Пользователи Сообщений: 216 Регистрация: 23.10.2008 Из: Саратов Пользователь №: 865 Спасибо сказали: 60 раз |
запуск скрипта у меня не от рута ...извини напутал ..с тренировки пришел ...
у меня хаб вертится на отдельном юзвере )) |
|
|
1.8.2011, 21:44
Сообщение
#8
|
|
Местная ТехПоддержка Группа: Администраторы Сообщений: 1 875 Регистрация: 18.7.2008 Из: Моск. Обл, г. королев, район Болшево Пользователь №: 221 Спасибо сказали: 220 раз |
Перенесено в техвопросы
|
|
|
2.8.2011, 2:04
Сообщение
#9
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
а ulimit -n забыто тоже? Ведь таки получается, запускаем хаб на онлайн < 1020
|
|
|
2.8.2011, 23:53
Сообщение
#10
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
Если кого мучает паранойа: "аааАА, упадёт хаб чо делать" - шлите репорты о падениях, а с моментом "авто"-перезапуска хаба есть вариант:
Код #!/bin/sh RESTART="service rushub start" PGREP="/usr/bin/pgrep" SERVICENAME="RusHub" $PGREP ${SERVICENAME} if [ $? -ne 0 ] then $RESTART fi Осталось только запихнуть задачу в крон и переодически дёргать скрипт. Но это уж сами. ;) Да, 777 не нужно!!!! chmod +x Кстати, любителям информативностей и т.п, можно перед $RESTART добавить echo "\n$(date) dcserver rushub was restarted" | mail -s rushub vasya_pupkin@yandex.ru |
|
|
3.8.2011, 13:02
Сообщение
#11
|
|
Продвинутый участник Группа: Пользователи Сообщений: 189 Регистрация: 20.4.2009 Пользователь №: 3 121 Спасибо сказали: 12 раз |
хыхы, у меня на УТФ-8 через пути Кракозяблы в данном скрипте !
К скрипту проверки ! А если так ! Код #!/bin/sh PROCESS_COUNT=$(ps -fu root | grep RusHub | grep -v grep | wc -l) case $PROCESS_COUNT in 0) /path/to/RusHub -d ;; 1) #OK, программа уже выполняется ;; *) #OK, запущено несколько экземпляров программы ;; esac и к нему Крон ! Код */1 * * * * /path/to/RusHub/checkrushub.sh >/dev/null 2>&1 Через каждый 1 час будет проверять, есть ли процесс или нет, если нет то включит ! |
|
|
4.8.2011, 23:30
Сообщение
#12
|
|
Освоившийся участник Группа: Пользователи Сообщений: 216 Регистрация: 23.10.2008 Из: Саратов Пользователь №: 865 Спасибо сказали: 60 раз |
кто возьмется за финальный вид скрипта ?) после всего того что обсудили и сделали?)
или мы все коварные думается мне было бы замечательно этот скрипт в исходники русхаба ..в папочку дебиан поместить ... |
|
|
4.8.2011, 23:35
Сообщение
#13
|
|
Местная ТехПоддержка Группа: Администраторы Сообщений: 1 875 Регистрация: 18.7.2008 Из: Моск. Обл, г. королев, район Болшево Пользователь №: 221 Спасибо сказали: 220 раз |
ручки прочь от исходников. В них и так все, что нужно. И это не проблема разработчика, писать инит-скрипты. Их должен писать сборщик.
|
|
|
4.8.2011, 23:36
Сообщение
#14
|
|
Освоившийся участник Группа: Пользователи Сообщений: 216 Регистрация: 23.10.2008 Из: Саратов Пользователь №: 865 Спасибо сказали: 60 раз |
|
|
|
4.8.2011, 23:44
Сообщение
#15
|
|
Местная ТехПоддержка Группа: Администраторы Сообщений: 1 875 Регистрация: 18.7.2008 Из: Моск. Обл, г. королев, район Болшево Пользователь №: 221 Спасибо сказали: 220 раз |
Цитата ну так мы же за развитие русхаба в массах =) Ну так собирай пакеты, а не суй мусор в сурцы |
|
|
5.8.2011, 13:41
Сообщение
#16
|
|
Продвинутый участник Группа: Пользователи Сообщений: 113 Регистрация: 20.1.2009 Из: г. Москва САО Пользователь №: 1 889 Спасибо сказали: 37 раз |
а ulimit -n забыто тоже? Ведь таки получается, запускаем хаб на онлайн < 1020 И правильно сделано, кстати. Лимиты надо настраивать в /etc/security/limits.conf Почему это оказалось в init? Да вот |
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последнее сообщение | |
---|---|---|---|---|---|
Как вызвать bash скрипт из Lua | 14 | Iskandark | 17 205 | 3.3.2015, 12:42 Посл. сообщение: Iskandark | |
ptokax install source BASH Script Скрипт позволяет компилировать из исходников PtokaX и производить пред |
6 | DEN 007 | 11 961 | 3.5.2013, 7:24 Посл. сообщение: Sinsei | |
Перезапуск по таймеру | 3 | ShadoWx | 6 900 | 23.2.2012, 14:57 Посл. сообщение: SKIFI | |
[BASH] Старт/Стоп/Перезапуск и пр. | 0 | ShadoWx | 0 | 1.8.2011, 21:44 Посл. сообщение: mariner | |
Перезапуск скрипта раз в минуту | 7 | lankmv | 10 932 | 13.11.2010, 3:11 Посл. сообщение: DEN 007 | |
Скрипт Стоп трепет | 3 | Lesh™ | 6 676 | 17.10.2009, 8:26 Посл. сообщение: Alexey | |
Стоп Хаб | 6 | morn | 7 817 | 13.4.2009, 18:53 Посл. сообщение: morn | |
Цитирование Bash.org.ru срочно нужен скрипт! |
0 | vibe | 4 133 | 13.4.2009, 11:07 Посл. сообщение: vibe | |
Перезапуск Скриптов сриптик) |
2 | Ice | 6 033 | 23.11.2008, 12:09 Посл. сообщение: Nickolya | |
Переделка Скрипта " Цитаты С Bash.org " На Api1 | 6 | Undertaker | 10 061 | 31.10.2008, 7:35 Посл. сообщение: Nickolya |
|
Сейчас: 23.11.2024, 0:34 |