Esta é uma condição de corrida divertida. Ao configurar sua sessão de tela, garfos de tela. O pai sai, o filho configura a sessão, executa o comando e assim por diante. Mas, no seu comando, depois que o pai sai, toda a sua cadeia ancestral é feita e sai. Ao longo do caminho, o terminal de controle é fechado, o que envia um SIGHUP
para o grupo de processos em primeiro plano: o único processo ali é o processo da tela filho. Como isso ainda não teve necessariamente tempo para configurar seu tratamento de sinal, o manipulador padrão para SIGHUP
é executado: o processo sai.
A criança provavelmente perderá sempre essa corrida, porque primeiro gasta tempo fazendo vários acessos ao sistema de arquivos para configurar o soquete de comunicação, todos os quais são pontos de interrupção nos quais a cascata de pais de saída pode ser executada.
A boa notícia é que, se você está tentando iniciar isso apenas para interativamente anexar à sessão com outros usuários, quase toda a linha de comando que você está usando é desnecessária (o comando "script" não adiciona nada - a questão você linka menciona "problemas" não específicos, mas a menos que você tenha um desses, não o cultive; você também não precisa do material "su -", nada que ele configura é necessário para o processo inicial da tela, e tudo que se importa precisa ser configurado pela tela de qualquer maneira).
sudo -u $OTHERUSER screen -c /path/to/screenrc -d -m -S testN ping google.com