Отвязать прогу от терминала

migel

Есть прога запущенная на сервере с помощью ssh-клиента и выводящая пооток STDOUT в окно.
Можно ли сделать так что бы при закрытии терминала прога продожала работать?
(Именно не перезапуская прогу, если запускать заново, то я умею, а хочется сохранить уже насчитанное)

Chupa

пускай её через screen

vertyal17

Сделай демона

sergey_m

^Z
bg
^D

gsharov

Вот так вот не всегда работает почему то Точнее не для всех прог. Некоторые начинают слать чето куда то и виснут нафиг. Я все же предпочитаю screen %) ну или nohup накрайняк.

durka82

Переделать прогу, чтобы она могла продолжать счет.

sergey_m

Да, для прог которые хотят терминал, приходится использовать screen. Но если она уже запущена, то ничего ты не поделаешь.

Ivan8209

>Но если она уже запущена, то ничего ты не поделаешь.
А отсоединить никак невозможно?
Или присоединить к какому-то pty?
---
...Я работаю антинаучным аферистом...

evgen5555

У юнексойдов много всяких фишек для этого придумано, например, nohup(1)

sergey_m

А отсоединить никак невозможно?
Или присоединить к какому-то pty?
С помощью kernel debugger я думаю можно.

Ivan8209

А более доступными средствами?
Вроде, должно быть возможно сделать перенаправление, куда надо,
а pty можно организовать и параллельным процессом.
---
...Я работаю антинаучным аферистом...

sergey_m

По-моему возможность смены pty у работающего процесса нарушает идеологию управления процессами в UNIX.

Ivan8209

А какая там идеология?
Почему идеология не мешает восстанавливать удалённый, но всё ещё открытый файл?
Какая ещё есть идеология в UNIX?
---
...Я работаю антинаучным аферистом...

sergey_m

> А какая там идеология?
Есть процессы, которые объединяются в группы, которые объединяются в сессии (сеансы). Можешь почитать "Design and Implementation of FreeBSD", скорее всего в "Design and Implementation of 4.4BSD" написано тоже самое в этом месте.
> Почему идеология не мешает восстанавливать удалённый, но всё ещё открытый файл?
Потому что на нём счётчик ссылок больше нуля.
> Какая ещё есть идеология в UNIX?
Я сейчас не подготовлен к лекции, извини.

migel

всем спасибо!
прогу в итоге убил, и заюзал screen =)

ppplva

Я приаттачился к процессу в gdb, через fopen, dup2 отправил stdout в файл, заигнорил пару сигналов. После логаута процесс живет, радостно печатает в файл.
Какие идеологические принципы при этом были нарушены ? В каких-то условиях способ может не сработать ?
Оставить комментарий
Имя или ник:
Комментарий: