setsid по умолчанию в Терминале

Итак, я только что обнаружил команду setsid, которая значительно упрощает запуск программ из Терминала. Я хотел бы знать, есть ли способ настроить программы для автоматического запуска в новом сеансе, потому что, честно говоря, я, вероятно, собираюсь подготовить setsid, прежде чем все, что я сейчас запускаю. Это плохая практика по какой-то причине?

2
задан 15 May 2012 в 22:18

1 ответ

Кроме создания псевдонимов для Ваших программ, не действительно возможно иметь setsid автоматически снабженный префиксом, прежде чем каждая команда вводится в терминале. Однако я нахожу, что очень полезно создать .inputrc в Вашей домашней папке и месте в нем (наблюдение заключения в кавычки):

Control-o: "setsid "

Можно теперь поразить Ctrl+o в терминале и затем ввести команду; это экономит много времени, если необходимо продолжать повторять его. Нет никакой ошибки в размещении кавычек: это позволяет Вам сразу вводить команду после того, как ярлык будет использоваться. Эта функциональность и намного больше обеспечивается ударом readline библиотека: посмотрите man bash или страницы справочника Ubuntu онлайн.

Со ссылкой на Ваш второй вопрос это не плохая практика для использования setsid много и просто зависит от Ваших конкретных потребностей. На самом деле это чрезвычайно полезно, потому что, как отмечено по kernel.org,

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

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

Существуют также другие подобные, но различные способы отсоединить программу от терминала такой как nohup или disown. (Это должно быть сказано это setsid программа от util-linux пакет, в то время как disown встроенный удар.) Этот вопрос может быть очень интересным, как он касается таких связанных тем:

1
ответ дан 15 May 2012 в 22:18

Другие вопросы по тегам:

Похожие вопросы: