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

VNC图形化远程连接Ubuntu服务器

我的Ubuntu版本22.04.3,带有gnome图形桌面。配置过程参考了几篇博客,大致流程如下。因为是配置完之后才整理的流程,可能有疏漏。

Ubuntu服务器上的配置

1.先在服务器上下载vnc server(任何一种版本均可)
vncserver有很多不同的发行版本,例如tightvnc、tigervnc等,随便安装一种。
(1)安装 VNC Server:

sudo apt-get update
sudo apt-get install tightvncserver

(2)设置 VNC Server 密码:

vncserver

在第一次运行 VNC Server 时,会提示您设置 VNC Server 的连接密码。密码必须包含至少6个字符,长度不超过8个字符。
原文链接:点击此处
2.在服务器上进行如下配置:
创建 VNC Server 配置文件:

mkdir ~/.vnc
touch ~/.vnc/xstartup

添加权限:

chmod +x ~/.vnc/xstartup

修改startup配置

sudo vi ~/.vnc/xstartup

在这个文件中的内容修改为如下配置:

#!/bin/bash
export $(dbus-launch)  
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGERgnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
gnome-terminal &# [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
# [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresourcesxsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
gnome-session &

这部分的配置内容摘自LBJ的One Piece的博客
如果配置内容不对,可能会导致后续连接时,虽然连接成功,但无法显示服务器的图形界面,只显示灰色背景的问题。

 1 #!/bin/sh2 3 unset SESSION_MANAGER4 unset DBUS_SESSION_BUS_ADDRESS5 export XKL_XMODMAP_DISABLE=16 export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"7 export XDG_MENU_PREFIX="gnome-flashback-"8 9 [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
10 [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
11 
12 vncconfig -iconic &
13 gnome-terminal &
14 nautilus &
15 gnome-session --session=gnome-flashback-metacity --disable-acceleration-check &

来自另一个博客的配置方法似乎更好一些,前一个配置方法好像不能显示出命令终端。不过这两种配置不知道为什么都不能显示Ubuntu桌面,只能显示文件夹里的文件,不过暂时也够用了。
3.防火墙设置
vnc用的是5900-5910端口,具体使用哪个是自己决定的,我用的是5902端口。于是为5902端口开放防火墙:

sudo ufw allow 5902

4.开启vncserver

vncserver :2

表示开启服务器端的vncserver,且端口号为5902
5.关闭vncserver

vncserver -kill :2 

5和4结合可以用来重启vncserver,特别是在改变了vnc配置之后,可以重启一下vncserver

Windows端的配置

windows端运行的是vnc client,而vncViewer软件就实现了vnc client的功能,官网
https://www.realvnc.com/en/connect/download/viewer/
或者找第三方网站下载也行。下载之后界面如下:
在这里插入图片描述
在这输入服务器的ip:端口号然后按提示输入之前设置的vnc密码就可以连接上了。例如192.168.1.1:5902.

相关文章:

  • Linux网络基础
  • node 第十二天 npm补充 详解package-lock.json在团队协作中的作用
  • 【0基础学Java第三课】-- 运算符
  • 编程应用场景:便利店商超进销存管理系统软件,试用版可以免费试用下载
  • UML中类之间的六种主要关系
  • PostGreSQL:数据表继承
  • JavaScript_Pig Game切换当前玩家
  • 【tio-websocket】13、消息编码、解码、处理—AioHandler
  • 现代挖掘机vr在线互动展示厅是实现业务增长的加速度
  • Lauterbach使用指南之RunTime功能
  • 服务器之日常整活
  • golang连接池检查连接失败时如何重试
  • SpringAOP源码解析之advice执行顺序(三)
  • Spring Boot 配置邮件发送服务
  • 【实用网站分享】
  • 【跃迁之路】【733天】程序员高效学习方法论探索系列(实验阶段490-2019.2.23)...
  • angular2 简述
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • Hibernate【inverse和cascade属性】知识要点
  • Javascript弹出层-初探
  • Python学习笔记 字符串拼接
  • React-flux杂记
  • SpiderData 2019年2月16日 DApp数据排行榜
  • 前嗅ForeSpider中数据浏览界面介绍
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 追踪解析 FutureTask 源码
  • 走向全栈之MongoDB的使用
  • AI算硅基生命吗,为什么?
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​HTTP与HTTPS:网络通信的安全卫士
  • ​无人机石油管道巡检方案新亮点:灵活准确又高效
  • (007)XHTML文档之标题——h1~h6
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (搬运以学习)flask 上下文的实现
  • (二)构建dubbo分布式平台-平台功能导图
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (论文阅读23/100)Hierarchical Convolutional Features for Visual Tracking
  • (四)c52学习之旅-流水LED灯
  • (四)Controller接口控制器详解(三)
  • (正则)提取页面里的img标签
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • (转)大型网站的系统架构
  • (转)项目管理杂谈-我所期望的新人
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • ***原理与防范
  • .a文件和.so文件
  • .cn根服务器被攻击之后
  • .Net 代码性能 - (1)
  • .net(C#)中String.Format如何使用
  • .NET命名规范和开发约定
  • .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验
  • .net中我喜欢的两种验证码
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @Bean有哪些属性
  • @SpringBootApplication 包含的三个注解及其含义