É um comportamento documentado, de man bash
:
Se a opção de shell huponexit foi definida com shopt, o bash envia um SIGHUP para todos os jobs quando um shell login interativo é encerrado.
As palavras importantes são "interativo" e "login".
Quando você abre um terminal com Ctrl + Alt + T , você está iniciando um interativo , < instância strong> non-login do shell, portanto huponexit
não funcionará como esperado.
Por outro lado, ao abrir um TTY com, e. Ctrl + Alt + F1 , você está iniciando uma sessão interativa , login de bash
, então huponexit
funcionará nesse caso.
Em uma nota diferente, quando você pressiona o botão X
no terminal para fechá-lo, o driver de terminal no kernel envia SIGHUP
para o shell, que por sua vez envia SIGHUP
para todos os seus trabalhos, mais tecnicamente todos os grupos de processos de primeiro plano e plano de fundo da sessão.