在华为云 EulerOS(现多指 openEuler 或 EulerOS 2.0/3.0)上安装图形桌面,通常用于本地运维管理或开发调试。由于云服务器默认最小化安装,需手动安装图形环境并配置远程访问。以下是基于 openEuler / EulerOS 2.0+ 的完整步骤:
✅ 前提条件
- 服务器已绑定弹性公网 IP(EIP),且安全组放行以下端口:
22(SSH)5900(VNC)或6080(Web VNC,如使用 xrdp)
- 系统为 openEuler 20.03 LTS SP1+ 或 EulerOS 2.0/3.0(推荐 openEuler,EulerOS 2.0 已逐步停更)
- 拥有
root权限或使用sudo
🔧 方法一:安装 GNOME + VNC(经典方案)
步骤 1:更新系统
sudo dnf update -y
# 若为 EulerOS 2.0(yum 源):
# sudo yum update -y
步骤 2:安装桌面环境与 VNC 服务
# 安装 GNOME 桌面(含基础组件)
sudo dnf groupinstall "Xfce Desktop" -y # 推荐轻量级 Xfce;或选 "GNOME Desktop"
# 安装 VNC 服务端
sudo dnf install tigervnc-server -y
# 设置 VNC 密码(首次运行后生成 ~/.vnc/passwd)
sudo vncpasswd
# 输入两次密码(可设空密码,但生产环境建议设置强密码)
步骤 3:启动 VNC 服务
# 创建 systemd 服务文件(避免每次手动启动)
sudo tee /etc/systemd/system/vncserver@.service > /dev/null <<EOF
[Unit]
Description=Start TigerVNC server at target
After=network.target
[Service]
Type=forking
User=%i
ExecStartPre=/bin/bash -c 'mkdir -p /home/%i/.vnc'
ExecStart=/usr/bin/vncserver :%i -geometry 1920x1080 -depth 24
ExecStop=/usr/bin/vncserver -kill :%i
RestartPolicy=on-failure
[Install]
WantedBy=multi-user.target
EOF
# 启用并启动 VNC(例如显示号 :1 → 端口 5901)
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@1.service
💡 提示:显示号
:n对应 TCP 端口5900 + n,即:1→5901
步骤 4:配置防火墙与安全组
# 开放 VNC 端口(以 :1 为例)
sudo firewall-cmd --permanent --add-port=5901/tcp
sudo firewall-cmd --reload
# 或在华为云控制台安全组添加入方向规则:
# 协议:TCP,端口:5901,源 IP:你的办公 IP(建议限制范围)
步骤 5:连接图形界面
- 客户端工具:VNC Viewer(RealVNC)、TigerVNC、Remmina 等
- 连接地址:
<服务器公网IP>:5901(注意是 IP:端口,非 :1) - 输入之前设置的 VNC 密码即可进入图形桌面
🌐 方法二:安装 XRDP(支持 Windows RDP 原生连接)
适合习惯用 Windows“远程桌面”的用户:
# 安装 xrdp 和 XFCE
sudo dnf install xrdp xorgxrdp -y
sudo dnf groupinstall "Xfce Desktop" -y
# 配置登录会话(写入 ~/.xsession)
echo "startxfce4" | sudo tee /home/$USER/.xsession
# 允许 xrdp 用户登录(默认拒绝 root)
sudo usermod -aG xrdp $USER
# 启动并开机自启
sudo systemctl enable xrdp
sudo systemctl start xrdp
# 开放 3389 端口
sudo firewall-cmd --permanent --add-port=3389/tcp
sudo firewall-cmd --reload
连接方式:Windows 远程桌面 → 输入 <IP> → 用户名:你的普通账号,密码:系统登录密码
⚠️ 注意:部分版本需修改
/etc/xrdp/startwm.sh确保执行.xsession
📝 补充建议
| 项目 | 建议 |
|---|---|
| 资源占用 | 优先选择 XFCE(内存 ~300MB),避免 GNOME(~800MB+) |
| 安全性 | 禁止 root 远程登录;改用普通用户 + sudo;限制安全组 IP |
| 性能优化 | 降低分辨率、禁用动画:gnome-tweaks 或 xfce4-settings-manager |
| 替代方案 | 考虑使用 Huawei Cloud Workspace(云桌面服务)免运维 |
❗ 常见问题排查
- 无法连接 VNC?
→ 检查systemctl status vncserver@1.service;确认netstat -tlnp | grep 5901监听正常 - 黑屏/无响应?
→ 尝试切换显示管理器:sudo systemctl set-default multi-user.target后手动vncserver :1 - EulerOS 2.0 不支持 dnf?
→ 改用yum:sudo yum groupinstall "Xfce Desktop",包名相同
需要我提供 自动化脚本版 或针对 特定版本(如 openEuler 22.03) 的详细命令吗?
云知识