Por que alguns pts no AIX nunca são reutilizados?

2

Em um sistema AIX (AIX p740 1 7) em execução há vários meses, alguns pts não são mais reutilizados.

Isso foi notado usando o comando "who", com a seguinte expressão "awk", que é executada diariamente por semanas:

who | awk '{ printf "%s %s\n", $2, $1 }' | awk -F'/' '{ printf "%s\n", $2 }' | sort -n | awk 'BEGIN{port=$1} {if (port+0 != $1) {printf "--- FREE PTS: %s - %s\n", port, $1-1}; printf "pts/%s (%s)\n", $1, $2; port=$1+1 }'  

Uma saída típica sempre mostra os pts / 14 como livres, e todas as outras portas, como 0, 1, 2 e assim por diante, ficam livres à noite e são alocadas novamente no dia seguinte, exceto a porta 14. (Não consigo examinar mais portas que podem ter o mesmo comportamento de pts / 14, pois há cerca de 600 portas sendo usadas diariamente e a análise foi interrompida na porta 14).

pts/0 (foo)
pts/1 (foo)
pts/2 (foo)
pts/3 (foo)
pts/4 (user12)
pts/5 (bar)
pts/6 (user12)
pts/7 (foo)
pts/8 (user13)
pts/9 (foo)
pts/10 (foo)
pts/11 (foo)
pts/12 (bar)
pts/13 (foo)
--- FREE PTS: 14 - 14
pts/15 (foo)
pts/16 (foo)
pts/17 (user13)
pts/18 (user13)

Existem maneiras de obter a razão para isso? E "liberar" essa porta?

    
por Luciano 16.05.2016 / 19:43

1 resposta

2

who mostra apenas logins. Por exemplo, tmux / screen abre um pty, mas acho que não conta como um login. Eu acho que você pode encontrar o processo (pid) com fuser /dev/pts/14 .

(Eu usaria lsof no Linux, mas fuser deveria estar disponível em qualquer sistema posix).

    
por 16.05.2016 / 23:11