我使用屏幕,有时我不得不共享它。如何管理屏幕的活动连接?
我想监控连接和连接的用户,他们在哪里以及他们在做什么。我还想能够将他们踢出。
这可能吗?
谢谢。
答案1
太简单了!
按下Ctrl-A *
即可查看连接到您的屏幕会话的用户列表以及他们所在的屏幕。
该acldel
命令可用于删除其他用户对您的屏幕会话的权限 - 这也会将他踢出去。
答案2
tty
您可以通过查看 的输出来判断哪些屏幕进程链接到s lsof
:如果屏幕客户端进程连接到屏幕交互进程,则它们将共享 tty 设备。例如,使用:
cas hax$ lsof -n | grep screen | grep tty 屏幕 1979 cas 3r FIFO 14,2 0t0 7511093 /private/tmp/uscreens/S-cas/1979.ttyp3.calchas 屏幕 1979 cas 5r VREG 14,2 2271 3155 /private/etc/ttys 屏幕 2298 cas 0u VCHR 4,3 0t1443440 20004228 /dev/ttyp3 屏幕 2298 cas 1u VCHR 4,3 0t1443440 20004228 /dev/ttyp3 屏幕 2298 cas 2u VCHR 4,3 0t1443440 20004228 /dev/ttyp3 屏幕 2299 cas 3u VCHR 4,3 0t3992 20004228 /dev/ttyp3 屏幕 2299 cas 4r FIFO 14,2 0t0 7511449 /private/tmp/uscreens/S-cas/2299.ttyp3.calchas 屏幕 2299 cas 5r VREG 14,2 2271 3155 /private/etc/ttys
我们看到有一个交互屏幕进程 2298,它打开了 /dev/ttyp3。进程 2299 也打开了这个 tty,但进程 1979 没有访问任何 tty。因此,您可以从此输出推断出哪些子进程正在与哪些交互进程通信。