|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
PetroNotC Sharpмне минимальный конфиг нужен. Google is your friend: https://gist.github.com/ryankurte/4f00605ced06613b3b1354d08d25ec5f Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 13:47 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev демона отличает то, что его "родителем" становится процесс init, который и приглядывает за демоном, и хоронит его, если тот склеил ласты и перешёл в состояние "зомби". Такие детали и многое другое берет на себя systemd. В коде ничего такого специально делать не нужно. Остается просто написать функционал самого демона. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 13:51 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Спс. Класс. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:08 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
systemd, как и SysV-init позволяет demon-инизировать любое приложение. P.S. Нет, конечно, полезно уметь обрабатывать разные сигналы, но их и простому приложению полезно уметь обрабатывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:08 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Anatoly Moskovsky, Вот счас и проверю. Нужен fork метод или нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:08 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Anatoly Moskovsky, если проводить параллели с Windows, то линуховый процесс init, это wininit.exe, а линуховый systemd это services.exe. По умолчанию systemd не призывает демона, а запускает службу (Type=simple) со всеми вытекающими (systemd is a parent process). Чтобы призвать демона, в systemd.unit надо прописать Type=forking (init is a parent process) и код запуска должен делать fork(). ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:09 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Basil A. Sidorov systemd, как и SysV-init позволяет demon-инизировать любое приложение. P.S. Нет, конечно, полезно уметь обрабатывать разные сигналы, но их и простому приложению полезно уметь обрабатывать. Там QtService вроде пропала в новых версиях. Вот и смотрю, как сделать консольное Любое без всякого кода в main ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:11 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Anatoly Moskovsky, Вот счас и проверю. Нужен fork метод или нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:12 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Там QtService вроде пропала в новых версиях. Вот и смотрю, как сделать консольное Любое без всякого кода в main ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:13 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_devСлужбе не нужен fork(), он нужен демону. Он и демону не нужен, но надо же как-то отвязываться от запускающей консоли... Флаг forked в systemd вовсе не то, что ты о нём думаешь. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:20 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov rdb_devСлужбе не нужен fork(), он нужен демону. Dimitry Sibiryakov но надо же как-то отвязываться от запускающей консоли... Код: plaintext 1. 2. 3.
Dimitry Sibiryakov Флаг forked в systemd вовсе не то, что ты о нём думаешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:34 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_devТолько так можно породить дочерний процесс из самого себя и сделать его сиротой, чтобы передать на обслуживание процессу init. Да, но как раз это-то и есть необходимый, но побочный эффект отвязки от консоли. Чисто чтобы при запуске не приходилось указывать запяточку в конце команды и не оказаться внезапно пристреленным при выходе пользователя. И нет, закрытие хэндлов тут никак не помогает. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:41 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev Anatoly Moskovsky, если проводить параллели с Windows ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:44 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev Демону нужен! ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:46 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev Type=forking заставляет systemd порождать дочерний процесс себя самого ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:48 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Да, но как раз это-то и есть необходимый, но побочный эффект отвязки от консоли. Чисто чтобы при запуске не приходилось указывать запяточку в конце команды и не оказаться внезапно пристреленным при выходе пользователя. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:51 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Basil A. Sidorov rdb_dev Type=forking заставляет systemd порождать дочерний процесс себя самого ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:55 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Basil A. Sidorov rdb_dev Демону нужен! ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 14:58 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev По умолчанию systemd запускает службы, а демонами становятся только сироты, попцы которым подтирает процесс init и для управления такими процессами, процессу systemd необходимо указать pid-файл. Огорчу я тебя до невозможности Код: plaintext 1. 2. 3. 4.
В обоих случаях никакой PID-файл для systemd не нужен. Он даже "вреден". ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 15:01 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev Сервисы, это и есть обычные приложения, и демоны тоже - обычные приложения Что кардинально отличается от винды, где сервис - специальный класс приложений, работающих "по специальным правилам". ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 15:06 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, в данном случае для fbguard pid-файл не нужен, так как предполагается, что демон fbguard берёт на себя роль демона systemd, чтобы контролировать падения службы fb_smp_server и перезапускать её, что естественно подразумевает не меньшую стабильность работы fbguard в сравнении с systemd, поэтому последнему не указывается pid-файл fbguard и systemd благополучно забывает об fbguard по принципу "выстрелил и забыл", а при Type=simple в запуске fb_smp_server pid-файл не нужен, потому что родительский процесс (systemd) и так знает идентификатор процесса СЛУЖБЫ (не демона) fb_smp_server, так как является его родителем. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 15:10 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev PetroNotC Sharp Там QtService вроде пропала в новых версиях. Вот и смотрю, как сделать консольное Любое без всякого кода в main ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 15:13 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev PetroNotC Sharp Anatoly Moskovsky, Вот счас и проверю. Нужен fork метод или нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 15:15 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
rdb_dev, Вот это помоги осмыслить. Демоны нового стиля Современные сервисы для Linux должны быть реализованы как демоны нового стиля. Это упрощает наблюдение и управление во время выполнения и упрощает их выполнение. Для разработки демона нового стиля ни один из шагов инициализации рекомендуется для демонов SysV. Инициализация нового стиля такие системы, как systemd, делают их все избыточными. Более того, поскольку некоторые из этих шагов мешают мониторингу процесса, ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 15:18 |
|
Как по новому пишется демон? systemd вместо init.d? fork() не нужен?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp rdb_dev Службе не нужен fork(), он нужен демону. PetroNotC Sharp Может слово сервис добавим? Контекст топика только линукс Сделай обычное приложение, пни его как сервис и не насилуй моск! ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2020, 15:20 |
|
|
start [/forum/topic.php?fid=57&msg=40005751&tid=2017314]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
141ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
others: | 231ms |
total: | 487ms |
0 / 0 |