我使用的是 Ubuntu 11.10,lightdm。看来我的 XDMCP 服务设置正确,但它无法连接。
我有以下内容/etc/lightdm/lightdm.conf
:
[XDMCPServer]
enabled=true
要重新启动 lightdm,请发出以下命令:
sudo restart lightdm
这将生成以下日志文件/var/log/lightdm/lightdm.log
:
[+0.01s] DEBUG: Launching X Server
[+0.01s] DEBUG: Launching process 6947: /usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
[+0.01s] DEBUG: Waiting for ready signal from X server :0
[+0.01s] DEBUG: Starting XDMCP server on UDP/IP port 177
[+0.02s] DEBUG: Acquired bus name org.freedesktop.DisplayManager
[+0.02s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat0
[+0.17s] DEBUG: Got signal 10 from process 6947
没有错误。
到目前为止一切顺利..看起来 XDMCP 服务已经启动了。
但是,虽然看上去启动正常,没有任何错误,但连接失败。问题可能与 TCP 端口 6000 上没有监听任何内容有关?
netstat -l 显示以下内容:
udp 0 0 *:xdmcp *:*
udp 0 0 *:34000 *:*
udp 0 0 *:mdns *:*
udp6 0 0 [::]:xdmcp [::]:*
它显示 xdmcp 177 端口正在监听,但是 netstat 中没有显示 tcp 端口 6000 正在监听:
netstat -l | grep 6000
不返回任何内容。
XDMCP 不是应该监听 6000 端口吗?
客户端尝试连接超时。
有趣的是,它之前是可以工作的,我们想不出任何会影响 XDMCP 的配置更改。故障排除似乎指向 6000 端口未监听,但我们从未验证过该端口在之前工作时是否被使用过。
答案1
您还需要
[SeatDefaults]
xserver-allow-tcp=true
答案2
我在 PC 192.168.1.6 上尝试了您的确切配置,然后转到另一台 IP 为 192.168.1.7 的 PC 并运行
Xephyr -query 192.168.1.6 :1
Lightdm 欢迎界面显示出来,我以用户身份登录会话awesome
,然后在第一台电脑上找到
$ sudo netstat -atunp
...
tcp 0 0 192.168.1.6:40264 192.168.1.7:6001 ESTABLISHED 16555/dbus-launch
tcp 0 0 192.168.1.6:40265 192.168.1.7:6001 ESTABLISHED 16512/awesome
tcp 0 0 192.168.1.6:40263 192.168.1.7:6001 ESTABLISHED 16555/dbus-launch
tcp 64 0 192.168.1.6:40252 192.168.1.7:6001 ESTABLISHED 16232/lightdm
...