Форум — Admin Возможно ли послать команду процессу который висит в фоне? 0 0 Возможно ли послать команду процессу который висит в фоне? Строка запуска такая: ./run >/dev/null 2>&1 & Ссылка
по теме: нужно перезапустить процесс не убивая его. al1as (01.10.09 05:42:26 UTC) автор топика Показать ответ Ссылка
Ответ на: комментарий от al1as 01.10.09 05:42:26 UTC >по теме: нужно перезапустить процесс не убивая его. что это значит? перезапустить процесс не убивая его не возможно. Nao ★★★★★ (01.10.09 06:03:05 UTC) Показать ответ Ссылка
Ответ на: комментарий от Nao 01.10.09 06:03:05 UTC а вывести его из фона на время нельзя? fg bg jobs man bash? И что значит - перезапустить не убивая? gserg ★★ (01.10.09 06:22:20 UTC) Показать ответ Ссылка
Для этого у run должен быть обработчик сигналов, который, допустим, по определённому сигналу перечитает конфигурацию или т.п. UVV ★★★★★ (01.10.09 06:24:17 UTC) Показать ответ Ссылка
echo $! > /tmp/process.pid ... kill -HUP `cat /tmp/process.pid` а ещё смотри man pkill true_admin ★★★★★ (01.10.09 06:27:39 UTC) Показать ответ Ссылка
Ответ на: комментарий от true_admin 01.10.09 06:27:39 UTC И да, когда твоя прога выйдёт, пусть потрёть pid-файл. А то этот пид может другой процесс занять и тогда будет веселуха. true_admin ★★★★★ (01.10.09 06:28:29 UTC) Ссылка
В некоторых дистрибутивах есть команда start-stop-daemon, она может упростить вышесказанные манипуляции с остановкой и запуском демона Nao ★★★★★ (01.10.09 06:36:24 UTC) Ссылка
Ответ на: комментарий от UVV 01.10.09 06:24:17 UTC а каким образом это сделать? al1as (01.10.09 06:40:29 UTC) автор топика Показать ответ Ссылка
Ответ на: комментарий от gserg 01.10.09 06:22:20 UTC думаю если загоняешь процесс в /dev/null вытянуть его оттуда уже нереально. al1as (01.10.09 06:41:41 UTC) автор топика Ссылка
кстати, когда-то натыкался на скрипт который запускает процесс в цикле, и при падание \ убийстве процесса он возраждается заного. есть идеи как это реализовать? al1as (01.10.09 06:44:58 UTC) автор топика Показать ответ Ссылка
Ответ на: комментарий от al1as 01.10.09 06:44:58 UTC respawn in /etc/inittab sdio ★★★★★ (01.10.09 06:49:55 UTC) Ссылка
Ответ на: комментарий от al1as 01.10.09 06:40:29 UTC > а каким образом это сделать? Программа самописная? UVV ★★★★★ (01.10.09 07:03:00 UTC) Показать ответ Ссылка
Ответ на: комментарий от UVV 01.10.09 07:03:00 UTC самописные только костыли на bash. они запускают бинарник. al1as (01.10.09 07:23:08 UTC) автор топика Показать ответ Ссылка
Ответ на: комментарий от al1as 01.10.09 07:23:08 UTC Я про бинарник и спрашивал. В бинарнике должен быть предусмотрен параметр перезапуска. UVV ★★★★★ (01.10.09 07:48:40 UTC) Показать ответы Ссылка
Ответ на: комментарий от UVV 01.10.09 07:48:40 UTC fork + waitpid + бесконечный цикл for((;;)); do ./run; done hello_world (01.10.09 08:06:09 UTC) Ссылка
Ответ на: комментарий от UVV 01.10.09 07:48:40 UTC а да setsid hello_world (01.10.09 08:08:39 UTC) Ссылка