%20en%20AIX.png)
Usando esta respuestahttps://unix.stackexchange.com/a/283521/114939
que nos permiten encontrar procesos que mantienen abierto un pty determinado sin iniciar sesión ( who
el comando no puede mostrarlos), me hizo preguntar lo contrario.
¿Cómo obtener los pty abiertos para un proceso determinado en sistemas AIX? (para aquellos iniciados en segundo plano y no "adjuntos" a un inicio de sesión de terminal/pty).
Respuesta1
AIX tiene un /proc
sistema de archivos (¿desde aproximadamente 5.1?) y puede enumerar los descriptores de archivos abiertos para un pid conperfiles:
$ procfiles -n 15502
15502 : /home/guest/test
Current rlimit: 2000 file descriptors
0: S_IFCHR mode:0622 dev:10,4 ino:2584 uid:100 gid:100 rdev:28,1
O_RDONLY
1: S_IFCHR mode:0622 dev:10,4 ino:2584 uid:100 gid:100 rdev:28,1
O_RDONLY
2: S_IFCHR mode:0622 dev:10,4 ino:2584 uid:100 gid:100 rdev:28,1
O_RDONLY
3: S_IFREG mode:0644 dev:10,7 ino:26 uid:100 gid:100 rdev:0,0
O_RDONLY size:0 name:/tmp/foo
Para dispositivos abiertos como pty, solo se proporcionan el inodo y los números mayor/menor, pero debería poder relacionarlos fácilmente con los que se muestran mediante un simple archivo ls -l /dev/pts/
.
También puedes instalar elCaja de herramientas AIX para aplicaciones Linuxy luego use el lsof
comando.
Respuesta2
Si XXX es elpid
file /proc/XXX/fd/* | grep /dev/pt
Pero obtendrás varias líneas por pty si el proceso lo tiene abierto para múltiples roles (como stdin stdout y stderr)
Pero supongo que esto no ayudará para AIX vs Linux, a menos que AIX haya cambiado mucho desde la última vez que lo usé