当前位置: 首页 > news >正文

[Ubuntu] VNC连接Linux云服务器 | 实现GNOME图形化

将桌面环境修改为 GNOME 并通过 VNC 远程访问的步骤 & TightVNC 的安装与配置说明:


1. 安装 GNOME 桌面环境

sudo apt update
sudo apt install ubuntu-gnome-desktop -y

2. 安装 TightVNC 服务器

sudo apt install tightvncserver -y

3. 初始化 VNC Server 并设置密码

首次运行 VNC Server,会提示你设置访问密码:

vncserver
  • 输入6~8位密码(超过8位会被截断)。
  • 再次输入密码确认。
  • 是否设置只读密码?输入 n。

4. 停止 VNC Server

vncserver -kill :1

5. 修改 xstartup 文件,启动 GNOME 桌面

编辑 ~/.vnc/xstartup 文件:

vim ~/.vnc/xstartup

将内容修改为如下(覆盖原有内容):

#!/bin/sh
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
xrdb $HOME/.Xresources
gnome-session &

6. 赋予 xstartup 文件可执行权限

sudo chmod +x ~/.vnc/xstartup

7. 重启 VNC Server

vncserver

8. 查看日志确认端口

终端会输出类似:

Log file is /root/.vnc/xxx:1.log

这里的 :1 表示端口号为 5901(VNC 默认端口5900加上桌面编号)。


9. 配置云服务器安全组(放行5901端口)

  1. 登录云服务器管理控制台。
  2. 进入弹性云服务器详情页面。
  3. 选择“安全组”页签,点击“配置规则”。
  4. 在“入方向规则”中,添加一条规则,放行 TCP 端口 5901。

10. 远程连接

使用 VNC Viewer 工具,输入 服务器IP:1(如 192.168.1.100:1),输入你设置的密码,即可远程访问 GNOME 桌面。


在这里插入图片描述

可以连接VNC,但无法显示GNOME桌面,常见原因和解决办法如下:


1. GNOME 桌面未正确启动

原因:有些系统默认不支持直接用 gnome-session 启动完整桌面,或者缺少必要组件。

解决办法
尝试将 ~/.vnc/xstartup 文件内容修改为如下(推荐用 gnome-session --session=gnome-classic &gnome-session --session=gnome &,有时需要加环境变量):

#!/bin/sh
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
export XDG_SESSION_TYPE=x11
export GDK_BACKEND=x11
xrdb $HOME/.Xresources
gnome-session --session=gnome & 

如果还是不行,可以尝试:

#!/bin/sh
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
export XDG_SESSION_TYPE=x11
export GDK_BACKEND=x11
xrdb $HOME/.Xresources
gnome-session --session=gnome-classic &

2. 缺少 xterm 或 gnome-terminal

原因:VNC 启动后没有终端可用,桌面无法正常显示。

解决办法
安装终端:

sudo apt install -y xterm gnome-terminal

3. GNOME 依赖未安装全

原因:有些最小化安装的 GNOME 缺少 VNC 需要的组件。

解决办法
安装完整 GNOME:

sudo apt install -y ubuntu-gnome-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

4. VNC 兼容性问题

原因:部分 GNOME 版本对 VNC 支持不佳,建议尝试 Xfce 或 MATE 桌面。

解决办法
如果 GNOME 实在无法显示,可以尝试安装 Xfce:

sudo apt install -y xfce4

并将 ~/.vnc/xstartup 改为:

#!/bin/sh
xrdb $HOME/.Xresources
startxfce4 &

5. 查看日志

请查看 /root/.vnc/host:5.log 日志文件,里面会有详细报错信息。你可以用以下命令查看:

cat /root/.vnc/host:5.log

把日志内容发给我,我可以帮你进一步分析!


建议先尝试第1步修改 xstartup 文件,然后重启 VNC Server:

vncserver -kill :5
vncserver :5
http://www.lryc.cn/news/617143.html

相关文章:

  • 从零开始的云计算生活——项目实战容器化
  • Ubuntu 22.04 离线环境下 Python 包与 FFmpeg 安装全攻略​
  • Python 爬虫:Selenium 自动化控制(Headless 模式 / 无痕浏览)
  • 使用Windbg分析多线程死锁项目实战问题分享
  • 从零开始的云计算生活——第四十一天,勇攀高峰,Kubernetes模块之单Master集群部署
  • 数据结构 双链表与LinkedList
  • 云原生环境Prometheus企业级监控
  • 浅谈 LangGraph 子图流式执行(subgraphs=True/False)模式
  • redis(2)-java客户端使用(IDEA基于springboot)
  • Selenium动态元素定位
  • glide缓存策略和缓存命中
  • 探秘华为:松山湖的科技与浪漫之旅
  • 打烊:餐厅开业前的“压力测试”
  • 《汇编语言:基于X86处理器》第13章 高级语言接口(1)
  • 前端实现 MD5 + AES 加密的安全登录请求
  • JVM基础【Java】
  • leetcode-hot-100 (图论)
  • 心理咨询|学生心理咨询评估系统|基于Springboot的学生心理咨询评估系统设计与实现(源码+数据库+文档)
  • python面向对象设计模式
  • 电子电气架构 --- 软件定义汽车的驱动和挑战
  • 飞算JavaAI vs 传统开发:效率与质量的双重突破
  • 【MySQL✨】服务器安装 MySQL 及配置相关操作
  • Orange的运维学习日记--38.MariaDB详解与服务部署
  • B站直播, 拼接4个窗口,能否实现
  • Deepoc如何让传统码垛机器人获得“类人决策力“​
  • 服务器配置实战:从 “密码锁” 到 “分工协作” 的知识点详解
  • docter的使用、vscode(cursor)和docker的连接,详细分析说明
  • Django Request 与 DRF Request 的区别
  • 低代码开发实战案例,如何通过表单配置实现数据输入、数据存储和数据展示?
  • 智能双行框!百度全量上线AI搜索,是革新浪潮还是昙花一现?