我在 Centos 6.5 虚拟机上有一个相当标准的设置。我已将 VNC 会话配置为在启动时启动CentOS 的维基
VNCSERVERS="1:root 2:moe 3:curly"
VNCSERVERARGS[1]="-geometry 640x480"
VNCSERVERARGS[2]="-geometry 640x480"
VNCSERVERARGS[3]="-geometry 800x600"
就我而言,我配置了会话 1 到 12,其中 2 到 12 是本地用户,会话 1 属于 root。
我的所有会话都按预期在启动时创建,如果我运行“ps -ef | grep Xvnc”,我可以验证它
[moe@stooges ~]$ ps -ef|grep Xvnc
root 26037 1 0 Aug19 ? 00:00:14 /usr/bin/Xvnc :1 -desktop stooges.domain.com:1 (root) -auth /root/.Xauthority -geometry 1024x768 -rfbwait 30000 -rfbauth /root/.vnc/passwd -rfbport 5901 -fp catalogue:/etc/X11/fontpath.d -pn
moe 26126 1 0 Aug19 ? 00:00:00 /usr/bin/Xvnc :2 -desktop stooges.domain.com:2 (moe) -auth /export/home/moe/.Xauthority -geometry 1680x1050 -rfbwait 30000 -rfbauth /export/home/moe/.vnc/passwd -rfbport 5902 -fp catalogue:/etc/X11/fontpath.d -pn
(... and so on for all 12 sessions...)
我能够连接到所有这些,并使用“vncserver -kill :PORT# 以 root 身份杀死它们
当我将此结果与“vncserver -list”的输出进行比较时,我感到困惑
[moe@stooges ~]$ vncserver -list
TigerVNC server sessions:
X DISPLAY # PROCESS ID
:1 22091
:2 1929
:12 30719
如果我以 root 或任何其他用户身份运行“vncserver”,则该新会话最终会在“ps -ef | grep Xvnc”和“vncserver -list”的结果中表示
我缺少的 vncserver 服务、启动时创建的 Xvnc 进程、通过用户执行“vncserver”创建的 Xvnc 会话之间的关系/行为是什么?
答案1
这确实不是什么大秘密,vncserver -list
为您的用户列出了会话。
枚举所有用户的会话的方法实际上是做你正在做的事情:ps -ef | grep vnc