GNU Screen에는 서버-클라이언트 아키텍처 모델이 있습니까?
각 Screen 세션은 Screen 클라이언트 프로세스인가요?
Screen 서버 프로세스는 찾을 수 없고 해당 세션 프로세스인 클라이언트 프로세스만 찾을 수 있는 이유는 무엇입니까? (스크린 서버와 클라이언트 프로세스 모두 screen
이름에 대문자와 소문자까지 하위 문자열을 갖고 싶습니다 )
$ sudo netstat -a | grep -i screen
[sudo] password for t:
unix 2 [ ACC ] STREAM LISTENING 2807736 /run/screen/S-testme/3341.testme
unix 2 [ ACC ] STREAM LISTENING 2809282 /run/screen/S-testme/3875.tm
unix 2 [ ACC ] STREAM LISTENING 4533106 /run/screen/S-t/27525.test
$ ps aux | grep -i [s]creen
testme 3341 0.0 0.0 45416 2428 ? Ss Nov30 0:00 SCREEN -S testme
testme 3875 0.0 0.0 38860 2380 ? Ss Nov30 0:00 SCREEN -S tm
t 27525 0.0 0.0 45828 3740 ? Ss 07:22 0:00 SCREEN -S test
스크린 서버 프로세스를 찾는 방법은 무엇입니까?
감사해요.
답변1
각 Screen 세션은 자체 "서버"입니다. 이는 세션에서 분리되어도 계속 실행되는 "SCREEN" 프로세스입니다. "클라이언트"는 해당 세션에 연결하고 상호 작용할 수 있게 해주는 "화면" 프로세스입니다. 이러한 프로세스는 수명이 짧고(상대적으로 말하면) 세션에 연결되어 있는 동안에만 지속됩니다.
현재 사용자가 실행 중인 모든 세션을 볼 수 있습니다.
screen -ls
그러면 사용 가능한 모든 세션의 프로세스 식별자, tty 및 호스트가 표시됩니다.
ps -fC screen
세션 및 클라이언트를 포함하여 실행 중인 모든 screen
프로세스가 표시됩니다.
답변2
sudo screen -list
화면 프로세스 ID를 찾을 수 있습니다