[linux] управление демонами?

Dasar

Какая служба под linux-ом управляет демонами?
под windows-ом есть service manager, который позволяет (из gui-я, командной строки и кода):
 настроить условия запуска service-ов,
 настроить условия перезапуска при падении,
 вручную остановить/запустить/поставить на паузу,
 и т.д.
что-то такое хочется и под linux-ом
ps
Конкретно, интересует lighttpd - я его уронил, а он сам оказывается не перезапускается.
Как запустить его обратно я разобрался, но хочется понять как это делать правильно для произвольного демона.
pps
больше интересует ubuntu-а и производные (если это имеет значение)

okis

В убунту тоже есть утилита, называется service
А она в свою очередь вызывает скрипты из /etc/init.d, емнип
Это для ручного перезапуска

Dasar

это которая System settings -> Managment service?
и которая хочет, чтобы был установлен Landscape клиент для ее работы?
т.е. это похоже морда, а не сама служба - раз, по умолчанию, требуемые для ее работы компоненты не стоят.
ps
меня устроит, если это будет не gui. Меня больше интересует: что лежит в основе? И какие самые кошерные способы по управлению демонами?

okis

Что в гуи я не знаю
Я имею в виду команду шелла service
Для запуска нужно сделать что-то вроде sudo service lighttpd start

Dasar

оно! спасибо.
ps
есть штатный способ для настройки автоматического перезапуска при сбое?

Dasar

как upstart дружится с демонами?
и по ссылке и в документации (при очень беглом прочтении) в основном просто про запуск процессов.

okis

Там же вроде написано, что upstart и есть для демонов, не для обычных пользовательских процессов

Dasar

что upstart и есть для демонов, не для обычных пользовательских процессов
по ссылке в примере запускается gnome-calculator
у меня не стыкуется следующее:
1. при старте системы для демона через init.d и так уже настроен запуск. В upstart-е запуск настраивается заново. Как одно будет дружить с другим?
2. демона желательно перезапускать через команду service <daemon> start. В upstart-е в примерах просто пишется respawn
ps
Демоном я называю то, что лежит в /etc/init.d Это корректное употребление термина?
И считаю, что через команду service управляются те процессы, что указаны в /etc/init.d. Это я правильно понял?

okis

так, я посмотрел про upstart, user jobs там можно
то, что лежит в init.d, называется system v services, это и есть стандартный способ управления службами, upstart - уже какой-то убунтовский инструмент
http://unix.stackexchange.com/questions/73310/auto-restart-a...
если не пользоваться им то вот такой костыль предлагают, цикл устроить

spitfire

если не пользоваться им
То есть monit и daemontools.

Dasar

если не пользоваться им то вот такой костыль предлагают, цикл устроить
ок. спасибо.

Anturag

pps
больше интересует ubuntu-а и производные (если это имеет значение)
Да, это имеет значение. Если Ubuntu, то нужно писать задачу для upstart, то, что тебе нужно, называется respawn — http://upstart.ubuntu.com/cookbook/#respawn

serega1604

>1. при старте системы для демона через init.d и так уже настроен запуск. В upstart-е запуск настраивается заново. Как одно будет дружить с другим?
когда пишут настройку для апстарта в init.d оставляют заглушку, конвертирующую вызов скрипта в вызов апстартовских утилит
>2. демона желательно перезапускать через команду service <daemon> start. В upstart-е в примерах просто пишется respawn
не понял, что тебе не понятно :)
>Демоном я называю то, что лежит в /etc/init.d Это корректное употребление термина?
некорректное, конфиги апстарта лежат в /etc/init (вроде) и не обязаны лежать в /etc/init.d/
>И считаю, что через команду service управляются те процессы, что указаны в /etc/init.d. Это я правильно понял?
надо мануал убунтовский смотреть, может быть они что-то поменяли, но по-умолчанию да, так и есть.

Serab

Демоном я называю то, что лежит в /etc/init.d Это корректное употребление термина?
демон — это любой процесс, который работает в фоне и родителем которого является init (причем чтобы стать ребенком инита, не обязательно, чтобы он непосредственно тебя запустил). В init.d просто обычно перечисляются системные демоны, которые надо автоматически поднимать при запуске системы.

Ivan8209

> демон --- это любой процесс, который работает в фоне
> и родителем которого является init

$ ps -axo pid,ppid,command | grep xterm | head -n 5
1538 1 xterm
1610 1 xterm
1965 1 xterm
2264 1 xterm
2709 1 xterm

---
...Я работаю антинаучным аферистом...

Serab

я знаю, что бывает всякое. Но усложнять тут ни к чему.
Но насколько xterm можно назвать "работающим в фоне", я не знаю, например :) Тут надо точнее определять это понятие. А так-то и из init бывают исключения. Но зачем это все?

Ivan8209

> Но зачем это все?
Затем, что надо давать правильное определение.
В частности, надо говорить про управляющий терминал и новую сессию,
а не про "фоновый процесс."
---
"Vyroba umelych lidi, slecno, je tovarni tajemstvi."

Alena_08_11

Щас в новостях на лорике ещё какой то epoch проскочил ...

istran

sudo service lighttpd start
ЕМНИП, можно просто sudo start lighttpd

Dasar

ЕМНИП, можно просто sudo start lighttpd

Comp:~$ sudo start lighttpd
start: Unknown job: lighttpd

serega1604

start - утилита upstart-а, она не понимает скрипты из init.d, только настройки из /etc/init/

istran

Да, похоже "start <smthng>" работает только для upstart демонов с конфигами в /etc/init
Оставить комментарий
Имя или ник:
Комментарий: