Ubuntu18.04 关于使用vnc的踩坑

由于种种原因,手上多了一台可使用的桌面版Ubuntu,正好用来测试代码,方便调试。因为只能远程,所以需要配置远程连接。因此就打算使用vnc进行远程连接,谁料一路坎坷,特此记录。

安装

设置桌面共享
需要注意,18.04里的桌面共享改名为共享并集成到了设置菜单,所以搜索共享就行了。在这里插入图片描述
找到屏幕共享,设置密码并打开选项。在这里插入图片描述
安装vnc4server

sudo apt-get vnc4server

安装dconf-editor取消权限限制

sudo apt-get install dconf-editor

找到 dconf-editor,直接搜索即可,然后打开,依次展开org->gnome->desktop->remote-access,然后取消 “requlre-encryption”的勾选。

在这里插入图片描述
上述操作是在ubunut中完成的,下面操作就是windows方面,只要下载软件测试即可。

TigerVNC的VNCview下载

32位:https://bintray.com/tigervnc/stable/download_file?file_path=vncviewer-1.9.0.exe
64位:https://bintray.com/tigervnc/stable/download_file?file_path=vncviewer64-1.9.0.exe

下载完直接可用。
以上如果是单人使用,完全够了,不需要再捯饬别的(可能会碰到灰屏问题,下边会说),但我是多用户使用,就很扯淡。
问题1:多用户使用问题
这里我弄的也不是很清楚,仅作为参考,首先执行vnc4server命令。

vnc4server :1

创建端口为1的vnc远程桌面,输入密码,确认密码。注意,不同用户的端口号尽量不同,避免不必要的bug。
这里结束远程桌面的命令是:

vnc4server -kill :1

问题2:灰屏,鼠标为x型,网络上解决这类问题的办法很多,主要都是修改配置文件,下载桌面。
首先安装桌面,这里我是用的是xfce4

sudo apt install tightvncserver xfce4 xfce4-goodies -y

如果你想用gnone的话可以下载,使用下列代码:

sudo apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

接下来就是最终要的一步,修改xstartup文件,路径为~/.vnc/xstartup。建议先备份一下。

vim ~/.vnc/xstartup

如果使用gnone桌面,使用如下代码:

#!/bin/sh
# Uncomment the following two lines for normal desktop:
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
unset DBUS_SESSION_BUS_ADDRESS
gnome-panel &
gnmoe-settings-daemon &
metacity &
nautilus &
gnome-terminal &

如果使用xfce桌面,就粘贴如下代码:

#!/bin/sh 
unset SESSION_MANAGER 
unset DBUS_SESSION_BUS_ADDRESS 
startxfce4 & 
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup 
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources 
xsetroot -solid grey

关闭vnc4server已经启动的桌面,重新启动。
测试灰屏问题解决与否。(建议使用xfce4,gnone桌面可能会碰见屏幕灰屏,无法右键,侧边栏展示不全等问题)

问题3:中文输入法问题
如果你是自己使用的话一般碰不到这个问题,可以直接使用fcitx进行中文输入,如果是多用户的话可能会碰到这个问题,可以通过下了方法解决。

首先打开语言支持,添加中文,选择使用fcitx。

在这里插入图片描述
然后确保fcitx安装完整。
我采用了很极端的方法,卸载掉fcitx重新安装,这里不建议大家这么操作,因为可能会导致重启后无法进入系统,所以卸载的话一定要慎重。千万慎重,慎重。

 sudo apt-get remove fcitxsudo apt-get remove fcitx-module*sudo apt-get remove fcitx-frontend*sudo apt-get purge fcitx*

上述代码不是被逼疯了,别用。

下载fcitx

sudo apt-get install fcitx-bin
sudo apt-get install fcitx-pinyin

重启后,启动fcitx,重新配置,添加拼音双拼,然后找个能输入文字的地方测试,如果可以就不用往下看了。(疯狂提醒:卸载软件需谨慎
很不幸,如果上述操作无法解决,那我们继续捯饬。

使用fcitx-diagnose命令查看配置可能会出现“Xim 服务名称: “ibus” 与环境变量中设置的值 “fcitx” 不同.”提示。提示中也说了修复方法,添加环境变量。

编辑配置文件:

vim ~/.profile

添加下列代码:

export XMODIFIERS=@im=fcitx
export XIM=fcitx
export XIM_PROGRAM=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx

保存退出,执行

source ~/.profile

使环境变量生效。
重新启动vnc远程桌面,测试,我在执行完上述操作后问题就解决了(如果您的还不行,我这也没有办法了,欢迎评论区大佬讨论吧。)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/536098.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

App_Shell模型

App_Shell模型 App Shell 架构是构建 Progressive Web App 的一种方式,这种应用能可靠且即时地加载到您的用户屏幕上,与本机应用相似。 App shell是支持用户界面所需的最小的 HTML、CSS 和 JavaScript,如果离线缓存,可确保在用户重复访问时提供即时、可靠的良好性能。这意…

Angular6_服务端渲染SSR

Angular6_服务端渲染 在使用服务端渲染之前,需要安装最新版本的Angular。 npm install -g @angular/cli 或 cnpm install -g @angular/cli github项目 创建项目 ng new PWCat --routing 为项目添加universalng g universal --client-project=PWCat 或

Jenkins自定义主题教程

Jenkins自定义主题 由于Jenkins自带的样式比较丑陋,所以有很多第三方的样式库,这里针对jenkins-material-theme样式库做一个安装教程。 下载样式库 下载连接 Select your color 选择一个你喜欢的主题颜色。Choose your company logo 上传你自定义的…

IndexedDB_Web 离线数据库

IndexedDB_Web 离线数据库 本文会从头剖析一下 IndexedDB 在前端里面的应用的发展。 indexedDB 目前在前端慢慢得到普及和应用。它正朝着前端离线数据库技术的步伐前进。以前一开始是 manifest、localStorage、cookie 再到 webSQL,现在 indexedDB 逐渐被各大浏览器认…

Angular 单元测试讲解

Angular_单元测试 测试分类 按开发阶段划分按是否运行划分按是否查看源代码划分其他ATDD,TDD,BDD,DDD ATDDTDDBDDDDDAngular单元测试 Karma的介绍jasmine介绍单元测试的好处使用jasmine和karma创建一个Angular项目Karma配置Test.ts文件测试体验测试Form测试服务service常用断言…

基于 Docker 的微服务架构

基于 Docker 的微服务架构-分布式企业级实践前言Microservice 和 Docker服务发现模式客户端发现模式Netflix-Eureka 服务端发现模式ConsulEtcdZookeeper 服务注册自注册模式 Self-registration pattern第三方注册模式 Third party registration pattern小结一 服务间的 IPC 机制…

funcode游戏实训,java及C/C++,网上整理

软件,常见错误都有。 所有资源可到公众号获取(源码也是),不再直接分享

Docker 容器部署 Consul 集群

Docker 容器部署 Consul 集群 Consul 介绍 Consul 提供了分布式系统的服务发现和配置的解决方案。基于go语言实现。并且在git上开放了源码consul-git。consul还包括了分布式一致协议的实现,健康检查和管理UI。Consul和zk相比较起来,更加轻量级&#xf…

swing皮肤包 substance

分享一下swing皮肤包substance 资源可到公众号获取

基于Android的聊天软件,Socket即时通信,实现用户在线聊天

基于Android的聊天软件,Socket即时通信,单聊,聊天室,可自行扩展功能,完善细节。 【实例功能】 1.运行程序,登录界面, 注册账号功能 2.进入主界面,有通讯录, 个人信息。 3.点击好友会话框&#…

用Docker搭建Elasticsearch集群

用Docker搭建Elasticsearch集群 对于用Docker搭建分布式Elasticsearhc集群的一个介绍,以及一些实施中遇到问题的总结 搜索服务简述 结合业务的场景,在目前的商品体系需要构建搜索服务,主要是为了提供用户更丰富的检索场景以及高速&#xf…

Go实现简单的RESTful_API

Go实现简单的RESTful_API 何为RESTful API A RESTful API is an application program interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. A RESTful API – also referred to as a RESTful web service – is based on representational state t…

Docker使用Dockerfile构建简单镜像

Docker使用Dockerfile构建简单镜像 首先确保系统已经安装docker 构建镜像 安装基础镜像 sudo docker pull ubuntu 查看镜像是否已经拉取成功 REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu …

Weave Scope安装

Weave Scope安装 首先确保已经安装docker 实时了解Docker容器状态 查看容器基础设施的概况,或者专注于一个特殊的微服务。从而轻松发现并纠正问题,确保你的容器化应用的稳定与性能。 内部细节与深度链接 查看容器的指标、标签和元数据。 在一个可扩展…

MYSQL导入数据出现ERROR 1049 (42000): Unknown database 'n??;'

MYSQL导入数据出现ERROR 1049 (42000): Unknown database ‘n??;’ 背景 我需要将一个csv表中的数据导入数据库创建好的表中,产生的问题如下: 原因寻找 因为我并没有使用’n??;的数据库,所以很好奇这个错怎么来的,尝试如下…

Win10忘记ubuntu子系统密码

Win10忘记ubuntu子系统密码 目前新版win10已经支持ubuntu子系统,如果忘记子系统密码怎么办? linux单用户模式 在ubuntu中如果忘记密码,可以在启动的时候,在grub内更改用户为root进入,这样就可以使用最高权限的单用户…

蓝桥杯练习系统,入门训练,Java版

蓝桥杯练习系统,入门训练,Java版序列求和圆的面积Fibonacci数列希望大家提建议我加以修改序列求和 import java.util.*; public class Main {public static void main(String[] args) {Scanner cinnew Scanner(System.in);long ncin.nextLong();System.…

SVG入门理解

SVG入门SVG 元素简单的形状rectcircleellipselinetextpath SVG 样式分层和绘图顺序透明度 SVG入门 当我们用SVG生成和操作一些炫酷的效果时,D3是最佳选择。使用div和其他原生HTML元素绘图也是可以的,但是太笨重,而且会受到不同浏览器的限制&#xff0c…

【哈佛幸福课笔记】【1】

【哈佛幸福课笔记】【1】 ​ ​ 一个月的时间看完了哈佛幸福课,正如Tal所说课程的结束才是学习的开始。对于课程观点的思考,对于个人习惯的培养,对于思维模式的转变还需要花大量的时间去练习。这个系列的帖子将作为我个人的读书笔记&#x…

Angular 6+ 之新版service

Angular 6+ 之新版service Angular 6已经发布了,Angular 6中有一些新功能,其中一个就是提供service的共享实例。 回首Angular 5- 下面是一段熟悉的代码,可以为整个应用程序提供服务。我们将它添加到AppModule中的providers[]。 自定义服务类 // data.service.ts export c…