Ubuntu 18.04 LTS 配置VNC Server后 VNC Viewer连接灰屏

2023-05-16

这几天在配置实验室的服务器的时候发现了这一问题,前前后后搞了好久,后来我也不知道为啥就搞好了,网上也有好多类似的解决方法,但总感觉每个人都不一样,这里就记录一下自己的解决方法,给遇到类似问题的人以及自己以后遇到相同问题的话再按着这个步骤来就是了。

因为写的时候已经配好了不想再配一次所以有些是抄录下面的链接的:
如何在Ubuntu 18.04上安装和配置VNC

我的配置

VNC Server:Ubuntu 18.04.5 LTS
VNC Viewer:Windows10
远程连接桌面环境:xfce(主要是用gnome连接的时候虽然能连上但log文件里能看到很多报错= =)

步骤1 在Server端安装桌面环境以及VNC4Server

首先更新下自己的服务器

sudo apt-get update

然后安装xfce

sudo apt install xfce4 xfce4-goodies

再安装VNC4Server

sudo apt-get install vnc4server

步骤2 创建VNC Server连接

安装完成后开始进行vnc4server的配置,运行如下命令设置安全密码并创建初始配置文件

vnc4server :1

因为我的服务器之前把所有有关vnc的软件包全部删掉了,再加上只安装了vnc4server,所以现在只识别vnc4server这条命令,这条命令的作用是创建一个新的端口号为1的远程桌面,之后在vnc viewer上就可以用IP地址:1或者5091来进行连接了

第一次连接会提示你为新建的session创建密码,便于以后登录

You will require a password to access your desktops.
​
Password:
Verify:

密码长度必须介于六到八个字符之间。超过8个字符的密码将自动截断。
验证密码后,可以选择创建仅查看密码。使用仅查看密码登录的用户将无法使用鼠标或键盘控制VNC实例。最好选n就是了

密码输入完后会提示你已经成功创建了desktop,相应的,创建时的一些error和warning也会记录在log文件中,出了问题的话直接去log文件里找error和warning然后bing搜索吧
成功创建desktop
一般人这种时候在windows上下载VNC viewer然后键入服务器IP地址:1或者服务器IP地址:5091其实就已经可以连接了,但有些人(比如我)完全是灰屏,特别难受

确认过之后利用kill命令先关闭desktop

vnc4server -kill :1

这个1是和上面那个1对应的,也可以有第234个desktop连接

步骤3 进行VNC Server的配置

步骤2中我们可以看到创建了一个xstartup的文件,里面是创建desktop后执行的一些命令,执行命令查看里面的内容

vim ~/.vnc/xstartup

在我看来里面的这些默认的命令没有任何用处,反而因为他们我启动vnc viewer的时候会灰屏

服务器上我现在xstartup里的命令就两条

#!/bin/sh
startxfce4 &
autocutsel -fork

第二条去掉也可以,其他文章上说可以加上xrdb $HOME/.Xresources这条载入用户设置的一些参数,但我只是想有一个可视化的桌面环境,所以并不需要(而且目录下也默认是没有这个文件的)。

给xstartup添加执行权限

sudo chmod 777 ~/.vnc/xstartup

然后重新启动vncserver,在windows上用viewer连接应该就可以看到xfce桌面了,不行的话重启下服务器重启下自己电脑

vnc4server :1

没有后面的:1会默认增加一个新的desktop,如果你已经有一个1的desktop会默认新建一个:2的desktop
xfce桌面

遇到的其他问题

在一开始配置的时候我遇到了一个字体缺失的问题,就是在log文件里找到的

error opening security policy file /etc/X11/xserver/SecurityPolicy
Could not init font path element /usr/X11R6/lib/X11/fonts/Type1/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/Speedo/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/misc/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/75dpi/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/100dpi/, removing from list!
Could not init font path element /usr/share/fonts/X11/75dpi/, removing from list!
Could not init font path element /usr/share/fonts/X11/100dpi/, removing from list!

后面我是先安装了字体

apt-get  install xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic

然后再执行以下几个命令:

mkdir /usr/X11R6/lib
cd /usr/X11R6/lib
ln -s /usr/share/X11 X11

然后每次启动的时候其实还是会有问题emmm

error opening security policy file /etc/X11/xserver/SecurityPolicy
Could not init font path element /usr/X11R6/lib/X11/fonts/Speedo/, removing from list!

找不到Speedo字体,但由于已经连上了所以没有管它了

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu 18.04 LTS 配置VNC Server后 VNC Viewer连接灰屏 的相关文章

随机推荐

  • C++中的虚函数详解

    虚函数在运行时绑定 xff0c 即运行时确定执行的函数 所谓的后期绑定就是一个基类中有一个虚函数 xff0c 而派生类中重写了这个函数 xff0c 那么调用的这个虚函数的时候根据类的实例的不同而调用不同的函数 实例化是指在面向对象的编程中
  • Android中的Log输出

    安卓系统的代码量十分庞大 xff0c 无法使用Jlink之类的工具进行单步调试 xff0c 因而日志系统十分有必要 为此 xff0c 安卓开发了Log日志类用于开发者的日常调试使用 Log中配置了五种Log类 xff0c 分别表示打印五类不
  • C++中的模板类

    什么是模板类 xff1a C 43 43 发展到一定层次后 xff0c 必然有部分代码存在仅传参的数据类型不同而内容一致的情况 因此 xff0c C 43 43 为解决此类场景 xff0c 特推出模板类的使用 模板类是一种泛型技术 xff0
  • 【C/C++】指针赋初值问题

    先说结论 xff1a 指针在使用时一定要进行初始化 一 问题来源 问题提示 xff1a null pointer dereference 此问题在编译时无误 xff0c 在运行 时出的问题 xff0c 排查起来非常头疼 一开始没头绪 xff
  • 【Linux应用编程基础】ioctl函数

    一 为什么需要ioctl函数 在裸机开发中 xff0c 应用程序直接作用于寄存器 而在Linux开发中Linux驱动与Linux应用在代码层级上是分开的 xff0c 在实际开发过程中也是分两拨人开发的 xff0c Linux驱动服务于应用
  • 【半音阶口琴】基础汇总

    一 简谱初学习 增时线 xff1a 2 后面的三个杠表示前面音符的续音 减时线 xff1a 121 表示三个音符的时值都减半 附点 xff1a 1 39 2 结合性为先结合减时线 xff0c 再结合附点 xff0c 因此1表示3 4拍 四分
  • 抖音包大小优化-资源优化

    1 概述 随着业务的快速迭代 xff0c 抖音 Android 端的包大小爆发式增长 包大小直接影响到下载转化率 推广成本 运行内存和安装时间等因素 xff0c 因此对 apk 进行瘦身是一件很有必要且收益很大的事情 apk 主要由 dex
  • 【正点原子Linux C应用编程指南】学习里程碑总结

    前言 说实话 xff0c 当阅读正点原子的这篇文档时 xff0c 带着些许失望 xff0c 并不是文档写的不好 xff0c 而是质量明显不如RTOS和裸机部分的编写 xff0c 可能是没有实践过的原因 记得朱有鹏老师之前说过 xff0c 正
  • 【上位机应用开发】Python篇 A部分

    虽是嵌入式方向 xff0c 刚毕业时一直想基于C 开发一款上位机 xff0c 没争取到 xff0c 近期偶然获取到一个用python开发的宝贵机会 xff0c 记录一下 1 用Shell命令行 VS code还是集成开发环境开发的问题 xf
  • 挂载时系统提示未找到fdisk指令

    64 通俗的讲解如何在Ubuntu系统上挂在 在学习的过程中 xff0c 总结了简介的挂在 xff0c 平时一直使用的记事本记载的 xff0c 以后会慢慢记录在上面 Ubuntu14 0 04版本虚拟机挂在U盘如何操作 先让虚拟机读取到物理
  • 微信聊天记录导出

    本文将介绍如何将微信聊天记录导出为结构化数据 所需材料 一部已经root的安卓手机带GPU的Linux电脑 整体流程如下 xff1a 数据库文件提取 使用RE管理器 xff0c 在已经root的安卓手机上 xff0c 找到如下文件 xff1
  • 详解vim插件安装及配置

    前言 vim插件依赖项安装 xff1a dnf install python future dnf install python devel dnf install ncurses dnf install cmake dnf install
  • SubliemText_3配置Java的编译环境

    Sublime Text 3 添加Java环境 最近在学习Java语言 xff0c 因为写一些基础的代码练习 xff0c 而使用sublime编辑器写代码 xff0c 因为每次运行都要在命令行执行 javac 和 java 代码 xff0c
  • JDBC的学习(01)

    关于JDBC的学习 1 JDBC的简介 JDBC Java DataBase Connectivity 是由Sun公司为简化java程序访问数据库而制定的一套面向对象的应用程序的接口 它规定了一套访问数据库的API xff0c 该API对应
  • JDBC的学习(02)

    关于JDBC的学习 xff08 2 xff09 文章目录 关于JDBC的学习 xff08 2 xff09 Blob类型和批量操作1 Blob类型操作2 批量操作 数据库事务1 事务的概念2 事务的ACID属性3 数据库的四种隔离级别数据库的
  • 吐血整理的IDEA个人配置

    IDEA的个人配置 这两天突然发现电脑的浏览器主页被捆绑成hao123的主页了 xff0c 出于各种方法都没能解决这个问题 xff0c 一气之下 xff0c 重装了系统 xff0c 由于忘记了很多软甲的配置都放在C盘下了 xff0c 导致都
  • 两个报错:Ubuntu进入root后无法使用anaconda 和Your shell has not been properly configured to use ‘conda activate‘

    这个是由于我在root权限下没有添加anaconda的路径导致的 首先先进入普通用户 xff0c 看一下自己的anaconda的路径 echo PATH 然后再进入root sudo su 查看一下root下的路径 如果缺失进行添加 exp
  • 抖音品质建设 - iOS启动优化之原理篇

    前言 启动是 App 给用户的第一印象 xff0c 启动越慢用户流失的概率就越高 xff0c 良好的启动速度是用户体验不可缺少的一环 启动优化涉及到的知识点非常多面也很广 xff0c 一篇文章难以包含全部 xff0c 所以拆分成两部分 xf
  • c语言_多线程入门_信号量Semaphore

    也属于线程同步的一种方式 信号量 Semaphore 定义 xff1a 有时被称为信号灯 xff0c 是在多线程环境下使用的一种设施 xff0c 是可以用来保证两个或多个关键代码段不被并发调用 目的 xff1a 类似计数器 xff0c 常用
  • Ubuntu 18.04 LTS 配置VNC Server后 VNC Viewer连接灰屏

    这几天在配置实验室的服务器的时候发现了这一问题 xff0c 前前后后搞了好久 xff0c 后来我也不知道为啥就搞好了 xff0c 网上也有好多类似的解决方法 xff0c 但总感觉每个人都不一样 xff0c 这里就记录一下自己的解决方法 xf