我正在尝试设置一个 Ubuntu 10.10 机器,以便任何人都可以连接到端口 5900 并受到 gdm 登录管理器的欢迎。为此,我在 /etc/services 中添加了一个 vnc 条目,并使用以下 xinetd 配置文件启动 Xvnc4:
service vnc
{
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -geometry 1000x700 -depth 24 -broadcast -inetd -once -securitytypes None
}
这种方法可行...我可以启动多个会话,全部到端口 5900,然后我得到一个 X 屏幕。问题是我只得到一个空白的灰色 X 屏幕,没有启动任何应用程序。
我知道当您从命令行运行 vncserver 时,它会在您的 ~/.vnc/ 目录中查找您的密码和 xstartup 文件,我想我要做的是将“gnome-session”放入 xstart 文件中。但是,哪个 xstartup 文件呢?运行用户是“nobody”,他显然没有 ~/.vnc/ 目录。我尝试了 /root/.vnc/xstartup 文件和 ~scott/.vnc/xstartup 文件,但看起来它们甚至没有被读取。
我更改了 xinetd vnc 服务,以便它可以“跟踪”Xvnc4。我查看了所有“打开”的行,但不知道它试图为 xstart 读取什么文件。
有人能帮忙吗?我只想要一个向用户显示 gdm 登录屏幕的终端服务器。
答案1
好吧,我刚刚为你写了一个很好的方法论,教你如何使用默认设置来实现这一点,结果却发现https://wiki.ubuntu.com/MaverickMeerkat/ReleaseNotes当考虑打开 XDMCP(你必须按照你想要的方式去做)时,它说:
Ubuntu 10.10 不支持用于远程图形登录的 XDMCP 协议。需要 XDMCP 支持的用户需要安装其他显示管理器(如 wdm 或 xdm)才能使用此功能。
因此,这会破坏您良好的图形登录。您必须用gdm
其他东西替换,例如xdm
或者kdm
或者wdm
。这样您就可以启用 XDMCP,并且 Xnest 的 -broadcast 标志将能够找到 X 服务器。
答案2
我最终放弃了,从系统快照开始,安装了 xrdp 和 vnc4server。开箱即用。非常令人沮丧。11.04 出来后我会再次尝试 VNC。