X11vnc 服务正在运行但客户端找不到服务器

X11vnc 服务正在运行但客户端找不到服务器

我想设置一个无头服务器并从笔记本电脑(Windows)连接到它。它运行的是 Kubuntu 15.04,我按照以下说明安装了 X11vnc:

VNC/服务器 - 让 x11vnc 在任何环境中通过 systemd 自动启动(Vivid+)

重新启动后,该服务已启用并处于活动状态(我想?),但我无法使用 UltraVNC 从笔记本电脑连接。

只有当我跑步时

x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/USERNAME/.vnc/passwd -rfbport 5900 -shared

在终端中,我可以使用 UltraVNC 连接到服务器。

我不想每次访问服务器时都发出此命令。我希望能够在重启后连接到服务器,而无需在服务器上执行任何操作。

知道哪里出了问题吗?

答案1

听起来你没有将 x11vnc 配置为系统服务,这样系统启动时它就会自动启动。我刚刚做了和你一样的事情,而且成功了。执行以下命令,应该可以解决你的问题。

步骤1:设置一个特定于您的用户名的密码,您将使用该密码从远程系统登录 x11vnc。

x11vnc -storepasswd

输入密码并将文件存储到:/home/USERNAME/.vnc/passwd 注意:确保用您的实际用户名替换 USERNAME。

第2步:配置“x11vnc.service”文件,以便系统启动时自动启动 vnc。您可以使用任何文本编辑器,但需要 sudo 权限才能编辑该文件。我在这里的示例中使用了 nano。

sudo nano /lib/systemd/system/x11vnc.service

将以下行复制并粘贴到 nano 中。

[Unit]
Description=Start x11vnc at startup.
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/USERNAME/.vnc/passwd -rfbport 5900 -shared

[Install]
WantedBy=multi-user.target

按“Ctrl-X”退出并保存文件,然后输入“Y”并按“Enter”。再次确保将 USERNAME 替换为您的实际用户名。

步骤3:重新加载服务,以便您的计算机了解您刚刚在上面第 2 步中配置的 x11vnc 服务。并启用 x11vnc 服务。

sudo systemctl daemon-reload
sudo systemctl enable x11vnc.service

步骤4:启动 x11vnc 服务。

sudo systemctl start x11vnc

步骤5:庆祝! :-)

结论

按照这些步骤应该启动 x11vnc 并配置您的系统,以便系统和服务管理器 systemd 在每次计算机启动时自动启动 x11vnc。

参考文献:我得出这个答案来自Ubuntu 的 VNC/服务器文档。具体来说,我参考了标题为“x11vnc”和“在任何环境中让 x11vnc 通过 systemd 自动启动(Vivid+)”的部分。我参考的第二部分涉及 Ubuntu Vivid Vervet 15.04。如果您运行的是不同版本的 Debian Linux 发行版,则需要参考 Ubuntu 的 VNC/Server 页面中的正确部分。

答案2

补充 MikeyE 的帖子。我有效地遵循了上述相同的步骤,但它仍然不起作用。它需要添加两个内容。

  1. 如果以 root 身份运行,x11vnc 将无法工作。systemctl如果您未设置用户/组,则会发生这种情况。在字段下[Service]添加以下内容:

    User=<USERNAME>
    Group=<USERNAME>
    

    执行此操作并重新启动x11vnc将会产生一个新的错误(已通过我在#2 中描述的方法修复。

  2. 执行上述操作后会显示一个新错误。现在您需要一个 -display(或通过 进行设置)。在启动服务之前,EXPORT查看这是否是您的问题,如 MikeyE 所述。输入命令“ ”后,然后。它现在对我有用。EXPORT DISPLAY=:0EXPORT DISPLAY=:0sudo systemctl restart x11vnc

    您将需要一种永久的方式来设置 DISPLAY,因为上面描述的 EXPORT 方法在重新启动时会丢失。对 MikeyE 的帖子进行的上述修改使我能够登录到我的 Ubuntu 安装。

相关内容