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
如何找到Screen服务器进程?
谢谢。
答案1
每个 Screen 会话都是它自己的“服务器”;这些是“SCREEN”进程,当您从会话中分离时,它们会继续运行。 “客户端”是一个“屏幕”进程,它连接到相应的会话并允许您与其交互;这些是短暂的(相对而言),并且只有在它们附加到会话时才会持续。
您可以查看当前用户的所有正在运行的会话
screen -ls
这将显示所有可用会话的进程标识符、tty 和主机。
ps -fC screen
将显示所有正在运行的screen
进程,包括会话和客户端。
答案2
sudo screen -list
你可以找到屏幕进程ID