В Linux и других системах Unix консоль работает как отдельный процесс. Когда вы закрываете оболочку, она отправляет сигнал SIGHUP текущему активному процессу или процессам, которые не выполняются в фоновом режиме. Если программист не справляется с этим, процесс просто завершается. Тот же сигнал отправляется, если вы закрываете сеанс SSH с терминалом и активным процессом.