启动/重新启动 PC 时无法自动启动 x11vnc(Lubuntu 20.04 LTS)

启动/重新启动 PC 时无法自动启动 x11vnc(Lubuntu 20.04 LTS)

我安装了 x11vnc 并成功启动,但在启动/重启电脑时没有启动服务 VNC

nano /lib/systemd/system/x11vnc.service

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

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared

[Install]
WantedBy=multi-user.target
################################################
sudo systemctl enable x11vnc.service
sudo systemctl daemon-reload

答案1

我在家庭云的无头服务器上使用 Ubuntu 20.10 64 位。我同意,偶尔重启后 X11VNC 自动启动就像云端天堂(双关语)。

生成 systemd 服务守护进程应该可以解决您的 X11VNC 从启动时自动启动的问题,因为它与 Ubuntu 15.04 到 20.04 向后兼容。systemd 从 Ubuntu 15.04 开始就是服务守护进程。 在此处输入图片描述 *这是远程 Ubuntu 20.04 64 位 PC 上的 Remmina VPN/RDP 查看器窗口

您可以继续你的朋友凯斯宾感谢他撰写的关于在启动时自动化 X11VNC 的非常出色的指南。

但请允许我在这里解释一下 Caspian 的帖子:

Ubuntu 15.04 – 配置您的系统以便在启动时运行 x11vnc。

你好世界,

如果您关注我们,您可能还记得我们已经写了一篇关于此主题的文章(请参阅 Ubuntu 14.10 – 配置您的系统以使 x11vnc 在启动时运行)。由于 Ubuntu 15.04 使用 systemd,因此上一篇文章中的说明不再适用。我们的一些读者在升级到 Ubuntu 15.04 后遇到了问题。x11VNC 不再在启动时运行。

这篇文章将提供在使用 systemd 时在 ubuntu 15.04 启动时运行 x11vnc 所需的信息。

我们的目标

读完这篇文章后,你应该能够通过 vnc 连接到你的 Ubuntu 机器,即使重新启动,即使没有用户登录机器。此配置应通过你正在使用的 vnc 查看器客户端显示登录屏幕。

我们没有在这里发明任何东西。此处提供的所有信息均基于此位置提供的信息: https://help.ubuntu.com/community/VNC/Servers#Have_x11vnc_start_automatically_via_systemd_in_any_environment_.28Vivid.2B-.29

安装 x11vnc 服务器

在这篇文章中,我们决定使用 x11vnc 服务器包来提供 vnc 功能。安装过程非常简单。登录到您的 ubuntu 15.04 计算机,打开终端控制台并发出以下命令:

$ sudo apt-get 安装 x11vnc

为了获得最低限度的安全性,我们将通过密码保护 VNC 连接。密码将存储在文件中。要创建此文件,您需要发出以下命令:

$ sudo x11vnc –storepasswd /etc/x11vnc.pass

系统会要求您输入密码。输入密码并确认您的选择,然后您就可以开始了。

创建服务单元文件

到目前为止,我们刚刚发出了与 x11vnc 包相关的标准命令。我们需要为我们的 x11vnc 服务创建服务单元文件。为此,我们将发出以下命令:

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

该文件应包含以下几行

[Unit] Description=启动时启动 x11vnc。 After=multi-user.target [Service] Type=simple ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared [Install] WantedBy=multi-user.target 保存文件

配置 Systemd

现在是时候发出命令让 systemd 了解更改并使服务在启动时运行。在命令提示符中,您将发出以下命令:

$ sudo systemctl daemon-reload $ sudo systemctl enable x11vnc.service 重新启动系统,不要登录。我们将检查这是否有效…..

测试解决方案

要检查您是否确实可以与您的 Ubuntu 机器执行 vnc 连接,您将尝试在无人连接且机器重新启动后使用您最喜欢的 vncviewer(我们使用 TigerVnc)连接到它。

在 vncviewer 中,您将提供要连接的计算机的 IP 地址或主机名以及要使用的端口。在我们的示例中,使用的端口是 5900。如果您设置了密码来保护您的 vnc 连接,系统也会提示您输入密码。

如果一切正常,你应该会看到 vncviewer 中显示的 Ubutun 登录页面

最后说明

瞧!我们已成功更新有关如何在启动时运行 x11vnc 的说明。如您所见,由于 Ubuntu 15.04 使用 Systemd 解决方案,我们需要创建服务单元文件 (x11vnc.service),使用 systemctl 注册它们,这样就大功告成了。

请归功于 Caspian!!:D

相关内容