温馨提示×

Ubuntu中TigerVNC远程桌面设置

小樊
63
2025-09-21 13:16:44
栏目: 智能运维

Ubuntu中TigerVNC远程桌面设置指南

1. 安装TigerVNC服务器

打开终端,执行以下命令更新软件包列表并安装TigerVNC服务器及公共组件:

sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common -y

2. 设置VNC访问密码

运行vncpasswd命令设置VNC连接密码(至少6位),此密码仅用于VNC身份验证,与系统用户密码无关:

vncpasswd

3. 配置VNC启动脚本(xstartup)

VNC启动脚本(~/.vnc/xstartup)用于定义远程桌面的启动环境,需根据桌面环境调整内容:

  • 打开或创建xstartup文件
    nano ~/.vnc/xstartup
    
  • 添加以下内容(以Ubuntu默认GNOME桌面为例)
    #!/bin/sh
    unset SESSION_MANAGER
    unset DBUS_SESSION_BUS_ADDRESS
    export XKL_XMODMAP_DISABLE=1
    xrdb $HOME/.Xresources
    exec /etc/X11/Xsession ubuntu-xsession
    
    若使用轻量级桌面环境(如XFCE),可将内容替换为:
    #!/bin/sh
    unset SESSION_MANAGER
    unset DBUS_SESSION_BUS_ADDRESS
    startxfce4 &
    
  • 赋予执行权限
    chmod +x ~/.vnc/xstartup
    

4. 启动VNC服务器

通过vncserver命令启动VNC服务,:1表示显示编号(对应端口号5901,:2对应5902,依此类推),可根据需求指定分辨率和颜色深度:

vncserver :1 -geometry 1920x1080 -depth 24

启动后,终端会显示VNC服务器的监听端口(如5901)及访问地址(如192.168.1.100:5901)。

5. 配置防火墙(若启用)

若系统启用了UFW防火墙,需允许VNC端口通过,以确保远程连接不受阻:

sudo ufw allow 5901/tcp  # 5901为:1对应的端口,若使用:2则改为5902
sudo ufw reload

6. 设置开机自启动(可选)

为避免每次重启系统都需手动启动VNC服务器,可创建systemd服务文件实现开机自启:

  • 创建服务文件
    sudo nano /etc/systemd/system/vncserver@.service
    
  • 添加以下内容(替换your_username为实际用户名)
    [Unit]
    Description=Start TigerVNC server at startup
    After=syslog.target network.target
    
    [Service]
    Type=forking
    User=your_username
    Group=your_username
    WorkingDirectory=/home/your_username
    PIDFile=/home/your_username/.vnc/%H%i.pid
    ExecStartPre=/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :
    ExecStart=/usr/bin/vncserver :%i -depth 24 -geometry 1920x1080
    ExecStop=/usr/bin/vncserver -kill :%i
    Restart=on-success
    RestartSec=15
    
    [Install]
    WantedBy=multi-user.target
    
  • 启用并启动服务
    sudo systemctl daemon-reload
    sudo systemctl enable vncserver@1.service  # :1对应服务名vncserver@1
    sudo systemctl start vncserver@1.service
    

7. 连接VNC服务器

在远程计算机上安装VNC客户端(如TigerVNC Viewer、RealVNC Viewer),输入Ubuntu服务器的IP地址和VNC端口(如192.168.1.100:5901),点击连接并输入之前设置的VNC密码即可远程访问桌面。

常见问题解决

  • 黑屏/灰屏:检查~/.vnc/xstartup文件是否有语法错误,确保桌面环境启动命令正确(如GNOME需使用exec /etc/X11/Xsession ubuntu-xsession,XFCE需使用startxfce4 &)。
  • 无法远程连接:确认防火墙是否允许VNC端口,或使用netstat -ntupl | grep vnc检查VNC服务是否监听正确端口(如0.0.0.0:5901)。
  • 密码忘记:删除~/.vnc/passwd文件(rm ~/.vnc/passwd),重新运行vncpasswd设置新密码。

0