Eu não consigo reproduzir esse comportamento aqui - tudo o que eu faço é limpo - mas a atualização de utmp é feita por um programa auxiliar utempter
, em /usr/lib/utempter
, que é chamado pelo xterm, então se xterms são sendo morto morto por algum motivo (como a memória virtual sendo esgotada) pode ser que ele não tenha a chance de limpar.
Note também que uma vulnerabilidade de segurança foi corrigida no link
embora eu ache improvável que o usuário em questão esteja causando disfunções, explorando deliberadamente isso.
Veja se você pode reproduzir o comportamento iniciando o xterm em segundo plano e o matando sem ter a oportunidade de limpar o utmp:
$ who
$ xterm &
[1] 6229
$ who
$ kill -9 6229
$ who
E uma teoria do voodoo: percebo que xterm
tem um cenário para tornar o comportamento do utmp mais cuidadoso. Ele é normalmente ativado por padrão e desativado colocando
XTerm*ptyHandshake: false
em
~/.Xresources
ou em todo o sistema em
/etc/X11/Xresources/xterm
. É improvável que seja isso, mas apenas um pensamento.
Uma solução alternativa pode ser persuadir ou compelir os usuários a usar um emulador de terminal X diferente, como rxvt
, um substituto menor que responde às configurações existentes do xterm, não inclui os gráficos de desenho de linha Tektronix 4014 recurso de emulação e usa significativamente menos memória para executar.