centos

CentOS VNC如何快速配置和使用

小樊
33
2025-09-24 03:27:16
栏目: 智能运维

一、安装VNC服务器

  1. 更新系统软件包:
    sudo yum update -y
    
  2. 安装TigerVNC服务器(常用且稳定的VNC实现):
    sudo yum install tigervnc-server tigervnc-common -y
    

二、配置VNC服务

  1. 设置VNC密码
    在需要使用VNC的用户环境下(如普通用户),运行以下命令设置密码(密码长度至少为6位):

    vncpasswd
    

    输入并确认密码,完成后会在用户家目录生成.vnc文件夹(包含密码文件)。

  2. 创建systemd服务文件
    复制默认的VNC服务模板,创建针对特定用户的配置文件(以显示编号:1为例,对应端口5901):

    sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
    

    编辑该文件,修改以下内容(将<your_username>替换为实际用户名,<your_group>替换为实际组名):

    [Service]
    Type=forking
    User=<your_username>
    Group=<your_group>
    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 -depth 24 -geometry 1280x800 :%i
    ExecStop=/usr/bin/vncserver -kill :%i
    
    • -depth 24:设置颜色深度为24位(可选16位,提升性能);
    • -geometry 1280x800:设置桌面分辨率为1280×800(可根据需求调整)。
  3. 重载systemd并启动服务

    sudo systemctl daemon-reload  # 重新加载systemd配置
    sudo systemctl start vncserver@:1.service  # 启动VNC服务
    sudo systemctl enable vncserver@:1.service  # 设置开机自启
    
  4. 验证服务状态

    sudo systemctl status vncserver@:1.service
    

    若显示active (running),则表示服务已成功启动。

三、配置防火墙 若系统启用了firewalld防火墙,需开放VNC对应的端口(显示编号:1对应端口5901):

sudo firewall-cmd --permanent --add-port=5901/tcp  # 永久开放端口
sudo firewall-cmd --reload  # 重新加载防火墙规则

四、客户端连接

  1. 在本地计算机安装VNC客户端(如RealVNC Viewer、TightVNC Viewer等,支持Windows/macOS/Linux)。
  2. 打开客户端,输入服务器IP地址和显示编号(格式:<服务器IP>:<显示编号>,如192.168.1.100:1)。
  3. 点击“连接”,输入之前设置的VNC密码,验证通过后即可看到远程桌面界面。

五、常见问题解决

  1. 无法连接
    • 检查防火墙是否开放了对应端口;
    • 确认VNC服务是否启动(systemctl status);
    • 确保客户端输入的IP和端口正确(显示编号:n对应端口5900+n)。
  2. 桌面环境异常
    若远程桌面无图形界面,需编辑用户家目录下的.vnc/xstartup文件,取消注释或添加桌面环境启动命令(如GNOME桌面):
    gnome-session &
    
    保存后重启VNC服务:
    vncserver -kill :1  # 杀死原有进程
    vncserver :1        # 重启服务
    

六、扩展:配置多用户/多桌面 若需要多个用户或同一用户多个桌面,可复制服务文件并修改显示编号(如:2对应端口5902):

sudo cp /etc/systemd/system/vncserver@:1.service /etc/systemd/system/vncserver@:2.service
sudo sed -i 's/:1/:2/g' /etc/systemd/system/vncserver@:2.service  # 替换所有:1为:2
sudo systemctl daemon-reload
sudo systemctl start vncserver@:2.service
sudo systemctl enable vncserver@:2.service

客户端连接时使用<服务器IP>:2即可访问第二个桌面。

0
看了该问题的人还看了