在 Linux Mint 上开启 VNC 远程桌面主要有两种主流方案。你需要根据自己的需求选择:
- 方案一(推荐新手/共享屏幕):使用
x11vnc。- 特点:连接到你当前正在使用的物理屏幕。你在那边操作,本地屏幕也会同步显示。适合远程协助或查看本机状态。
- 方案二(适合服务器/多用户):使用
TigerVNC。- 特点:创建一个全新的虚拟桌面。连接后是一个独立的会话,不会干扰本地物理屏幕(甚至本地可以黑屏),且支持多用户同时连接。
以下是详细的操作步骤:
方案一:使用 x11vnc(共享当前物理桌面)
这种方法最简单,适合只想远程控制这台电脑当前画面的用户。
1. 安装 x11vnc
打开终端,输入以下命令:
sudoaptupdatesudoaptinstallx11vnc-y2. 设置连接密码
你需要设置一个密码,以便远程连接时验证:
x11vnc-storepasswd输入两次密码后,系统会询问是否保存到默认位置,输入y确认。
3. 启动服务
在终端直接运行以下命令即可立即启动服务(端口默认为 5900):
x11vnc-display:0-auth/home/你的用户名/.Xauthority-forever-loop-noxdamage-repeat-rfbauth/root/.vnc/passwd-rfbport5900-shared注意:只要这个终端窗口不关闭,VNC 服务就会一直运行。
4. 设置开机自启(可选)
要让x11vnc在后台持续运行,不受终端关闭影响,最标准、最可靠的方法是将其配置为一个systemd 系统服务。这样它就能像 SSH 服务一样,在后台默默运行,并支持开机自启。
创建一个 systemd 服务
这个操作会创建一个系统级的服务,让x11vnc在后台独立运行。
创建服务配置文件
在终端中执行以下命令,创建一个新的服务文件:sudonano/etc/systemd/system/x11vnc.service粘贴配置内容
将下面这段内容完整复制并粘贴到打开的编辑器中。请务必将YourUsername替换成你自己的用户名(就是你家目录/home/下的那个名字,比如mint或x)。[Unit] Description=Start x11vnc at startup to share the physical display After=multi-user.target [Service] Type=simple ExecStart=/usr/bin/x11vnc -display :0 -auth /home/YourUsername/.Xauthority -forever -loop -noxdamage -repeat -rfbauth /root/.vnc/passwd -rfbport 5900 -shared ExecStop=/usr/bin/killall x11vnc Restart=on-failure RestartSec=2 [Install] WantedBy=multi-user.target保存并退出
- 按
Ctrl + O保存文件。 - 按
Enter确认文件名。 - 按
Ctrl + X退出编辑器。
- 按
启动并启用服务
现在创建好了服务,接下来需要启动它,并设置开机自动运行。
重新加载 systemd 配置
让系统识别刚刚创建的新服务。sudosystemctl daemon-reload启动 x11vnc 服务
立即启动服务,无需重启电脑。sudosystemctl start x11vnc设置开机自启
这样以后每次开机,VNC 服务都会自动在后台运行。sudosystemctlenablex11vnc
验证服务状态
执行以下命令,检查服务是否已成功运行。如果看到active (running),就说明一切正常了。
sudosystemctl status x11vnc完成以上步骤后,你就可以放心地关闭终端了。x11vnc服务会继续在后台运行,你的 VNC 连接不会再因此中断。
方案二:使用 TigerVNC(创建独立虚拟桌面)
这种方法更稳定,适合需要长期后台运行、不希望被本地操作干扰的场景。
1. 安装 TigerVNC
sudoaptupdatesudoaptinstalltigervnc-standalone-server tigervnc-common-y2. 初始化并设置密码
运行以下命令设置 VNC 登录密码(注意:这与系统登录密码无关,是独立的):
vncserver首次运行会让你设置密码,并生成配置文件。设置完后,你可以先关闭它:
vncserver-kill:13. 配置桌面环境(关键步骤)
如果不配置,连接后可能会遇到“灰屏”只有鼠标。我们需要告诉 VNC 启动哪个桌面(Linux Mint 默认使用 Cinnamon,但为了兼容性,推荐配置为 XFCE 或 MATE,或者确保 Cinnamon 配置正确)。
编辑启动脚本:
nano~/.vnc/xstartup将内容修改为(以启动 XFCE 桌面为例,需先安装xfce4,或者直接尝试启动 cinnamon-session):
#!/bin/shunsetSESSION_MANAGERunsetDBUS_SESSION_BUS_ADDRESS# 如果你要使用 Cinnamon 桌面,请确保安装了 cinnamon-session 并取消下面注释# exec cinnamon-session &# 或者使用 XFCE(推荐,更轻量稳定)execstartxfce4&保存并赋予执行权限:
chmod+x ~/.vnc/xstartup4. 启动服务
再次启动 VNC 服务:
vncserver :1-geometry1920x1080这将启动一个分辨率为 1920x1080 的桌面,对应端口5901。
第三步:配置防火墙(必须)
无论你使用哪种方案,如果开启了防火墙,都需要放行端口。
- 方案一 (x11vnc)默认使用端口5900。
- 方案二 (TigerVNC)默认使用端口5901(对应
:1桌面)。
打开防火墙端口:
# 放行 5900 和 5901 端口sudoufw allow5900/tcpsudoufw allow5901/tcp💡 安全提示
VNC 协议默认传输是不加密的。如果在局域网内使用问题不大;如果需要**跨互联网(外网)**访问,强烈建议配合SSH 隧道使用,或者使用VPN,以防止密码和屏幕画面被窃听。