%20%EC%A3%BC%EC%96%B4%EC%A7%84%20%EB%B0%B1%EA%B7%B8%EB%9D%BC%EC%9A%B4%EB%93%9C%20%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4%EC%97%90%20%EB%8C%80%ED%95%B4%20%EC%97%B4%EB%A6%B0%20pty%EB%A5%BC%20%EC%96%BB%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
이 답변을 사용하여https://unix.stackexchange.com/a/283521/114939
로그인 없이 특정 pty를 열어 두는 프로세스를 찾을 수 있게 해주는( who
명령어로 표시할 수 없음) 그 반대의 질문을 하게 되었습니다.
AIX 시스템에서 특정 프로세스에 대해 열린 pty를 얻는 방법은 무엇입니까? (백그라운드에서 실행되고 터미널/pty 로그인에 "연결"되지 않은 경우)
답변1
AIX에는/proc
파일 시스템(약 5.1 이후)이 있으며 다음을 사용하여 pid에 대한 열린 파일 설명자를 나열할 수 있습니다.프로필:
$ 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
pty와 같은 개방형 장치의 경우 inode와 주/부 번호만 제공되지만 간단한 ls -l /dev/pts/
.
다음을 설치할 수도 있습니다.Linux 애플리케이션용 AIX 도구 상자그런 다음 lsof
명령을 사용하십시오.
답변2
XXX인 경우pid
file /proc/XXX/fd/* | grep /dev/pt
그러나 프로세스가 여러 역할(예: stdin stdout 및 stderr)에 대해 열려 있는 경우 pty당 여러 줄을 얻게 됩니다.
그러나 AIX가 마지막으로 사용한 이후로 많이 변경되지 않는 한 AIX와 Linux에는 도움이 되지 않을 것 같습니다.