Это мое понимание об использовании &, disownи nohup:
<command>: Запускает процесс в текущем Терминале ,bashнапример, на переднем плане (т.е. процесс указан в качествеbashзадания на переднем плане иstdin,stdoutиstderrпо - прежнему связаны с терминалом ); не застрахован от зависаний ;<command> &: Запускает процесс в текущем Терминале ,bashнапример, в фоновом режиме (т.е. процесс указан в качествеbashфонового задания иstdin,stdoutиstderrпо - прежнему связаны с терминалом ); не застрахован от зависаний ;<command> & disown: Запускает процесс в текущем Терминале ,bashнапример, в фоновом режиме , но процесс отсоединяются отbashсписка «s рабочих мест» (т.е. процесс не указан в качествеbashпереднего плана / фона работы иstdin,stdoutиstderrпо - прежнему привязаны к терминалу ); невосприимчив к зависаниям ;nohup <command> & disown: Запускает процесс в текущем Терминале ,bashнапример, в фоновом режиме , но процесс отсоединяются отbashсписка «s рабочих мест» (т.е. процесс не указан в качествеbashпереднего плана / фона работы иstdin,stdoutиstderrкоторые не все еще привязаны к терминалу ) ; невосприимчив к зависаниям ;
Так, помимо nohup <command> & disownблокирования stdinи перенаправления stdoutи stderrна nohup.outпо умолчанию, то мне кажется , что это можно считать полностью эквивалентны <command> & disown.
Все ли это правильно? Любое заблуждение?
bashэкземпляра не приведет к остановке процесса