如何让 xvnc 在退出时不终止会话

如何让 xvnc 在退出时不终止会话

我正在通过 xvnc/xinetd/gdm 实现对服务器的远程桌面访问。

我希望许多用户使用 vnc 连接到该服务器(从而提供 gdm 登录屏幕),并且希望如果 xvnc 会话关闭,它将“xlock”该会话,以便下次用户连接时它将恢复他的会话。

尝试了几种参数调整,但不幸的是,每次关闭 vnc 查看器时,X 会话也会被破坏。

如能得到帮助/线索我将非常感激。

答案1

我认为您不能那样做。当用户断开连接时,inetd 会终止为该连接生成的服务器。

尝试使用 NX/FreeNX,它可以实现断开会话持久性。据称它还可以将用户连接到桌面上已运行的实例,但我从未尝试过。

答案2

如果您通过 xinetd 使用 Xvnc,将 xinetd 的“wait”参数更改为“Yes”,则 GDM 会话将在 vnc 会话之间保持持久性。但是,它不会自动锁定 GDM 会话。

这是我使用的 xinetd 条目:

service vnc1024
{
disable = no
socket_type = stream
protocol = tcp
wait = yes
user = nobody
server = /usr/bin/Xvnc4
server_args = -inetd :1 -desktop lulu-loginvnc-1024 -query localhost -geometry 1024x768 -once -depth 16 -fp /usr/share/fonts/X11/misc -SecurityTypes=none -Di sconnectClients=0 -NeverShared
}

确保您也在 /etc/services 中添加一个条目:

# Local services
vnc1024  5920/tcp

答案3

谢谢回复,

我已经在遵循 NX 方式...似乎正是我想要的,哦,顺便说一句,如果你有兴趣,谷歌刚刚发布了一个免费版本的 freenx,称为“nextx”(http://code.google.com/p/neatx/)仍处于早期阶段,但已测试 svn 并且运行良好(直到现在)。

相关内容