CentOS7+VNC+Openbox+Fcitx

2023-05-16

在这里插入图片描述

文章目录

  • 简介
    • VNC
    • openbox
    • Fcitx
  • 实战
    • 环境信息
    • 安装与自动配置脚本
    • 创建用户
    • 开启 VNC服务
  • 客户端连接VNC实现远程控制
  • 假如vnc中输入法切不出来
  • 参考

简介

VNC

VNC(Virtual Network Computing),为一种使用RFB协议的屏幕画面分享及远程操作软件。此软件借由网络,可发送键盘与鼠标的动作及即时的屏幕画面。

VNC与操作系统无关,因此可跨平台使用,例如可用Windows连线到某Linux的电脑,反之亦同。甚至在没有安装客户端程序的电脑中,只要有支持JAVA的浏览器,也可使用。

VNC由Olivetti & Oracle研究室所开发,此研究室在1999年并入美国电话电报公司(AT&T)。AT&T于2002年中止了此研究室的运作,并把VNC以GPL发布。

因为它是免费的,以及可用于数量庞大的不同操作系统,它的简单,可靠,和向后兼容性,使之进化成为最为广泛使用的远程控制软件,多平台的支持对网络管理员是十分重要的,这使得网络管理员可以使用一种工具管理几乎所有系统。

原来的AT&T版本已经不再使用,因为更多有重大改善的分支版本已经出现,像是RealVNC,VNC tight和UltraVNC,他们具有全面的向后兼容。至少对于基本的远程控制功能而言。Real VNC是当前最活跃和强大的主流应用。

VNC对于简单的远程控制几乎完美,但是缺少对于大机构的桌面帮助功能,主要是日志记录和安全功能没有足以达到此目的。VNC为远程工作人员或受客户机也没有做好准备,因为目前还没有支持远程应用程序的本地打印。

因为VNC本来是开发用在局域网的环境,因此用在互联网上存在安全问题,当您计划在远程位置访问远程PC,你应该考虑一个专用的调制解调器或ISDN的拨号连接,VPN隧道,所有使用SSL或包裹VNC通信。

openbox

Openbox是一种用于X窗口系统的窗口管理器,它可运行于UNIX以及Linux、FreeBSD等类Unix操作系统上,采用GPL协议进行授权。

Openbox被设计成一个轻量级,可高度定制且包含广泛标准支持的窗口管理器,它也是LXDE桌面环境的默认窗口管理器,并且被CrunchBang、Lubuntu、ArchBang、TinyMe等作为默认窗口管理器。

Openbox的菜单系统可以运用动态菜单。这通过接受脚本输出的源代码构建菜单。每次用户的光标指向子菜单时,脚本就会再次运行,并重新生成菜单。该功能用户和软件开发者相比在其他文件管理器找到的标准静态菜单,有更大的灵活性。

例如,两位开发者用Python编写了一个脚本,以在一个子菜单中列出用户的Gmail新消息。

Fcitx

Fcitx(/ˈfaɪtɪks/,源自“Free Chinese Input Tool for X”,又作“Flexible Context-aware Input Tool with eXtension”或“Flexible Input Method Framework”,暂无正式英文全称,中文名称为“小企鹅输入法”)是在X Window中使用的输入法框架,在源码包内包含了拼音、五笔字型以及区位、二笔的支持。可以输入UTF-8编码中的文字。可以在Linux、FreeBSD中运行。采用GPL授权。支持XIM、GTK(版本2和3)和Qt的输入法模块。

因云帆论坛有人批评Fcitx代码写的很差,原作者于2007年7月10日决定终止本项目。不过,2008年9月开始,作者离开后又加入爱好者创建的Google Code项目并频繁更新,他发文谈到无法忘记fcitx。

除了原作者之外,还有一些爱好者共同维护Fcitx。现在Fcitx代码托管在GitLab平台上进行开发。

实战

环境信息

  • 操作系统:CentOS Linux release 7.9.2009 (Core)
  • 桌面:openbox

安装与自动配置脚本

root执行以下命令,直接整体复制粘贴到终端就行(不用一行一行复制)。

#图形界面必备`X Window System`
yum -y groupinstall "X Window System"
#安装epel源
yum -y install epel-release
#安装VNC+图形需要的软件
yum -y install tigervnc-server openbox xfce4-terminal tint2 cjkuni-ukai-fonts network-manager-applet
#安装fcitx
yum -y install fcitx fcitx-configtool
#安装拼音输入法
yum -y install fcitx-pinyin
#安装五笔输入法
yum -y install fcitx-table-chinese
#自动修改/etc/xdg/openbox/autostart配置文件
echo 'tint2 &' >> /etc/xdg/openbox/autostart
echo 'nm-applet  &' >> /etc/xdg/openbox/autostart
echo 'xfce4-terminal &' >> /etc/xdg/openbox/autostart
echo ' ' >> /etc/xdg/openbox/autostart
#防火墙放行VNC端口
firewall-cmd --add-port=5901/tcp
firewall-cmd --add-port=5901/tcp --permanent

创建用户

为了安全起见,不建议使用root做为vnc用户。单独创建一个用户比较安全。
这里用户名我使用 oracle,可以根自己需要自行修改。为啥叫oracle呢?因为我只有在安装oracle时才会用到VNC 图形化操作。

root执行以下命令,直接整体复制粘贴到终端就行(不用一行一行复制)。

#创建database用户组
groupadd database
#创建oracle用户并放入database组中
useradd oracle -g database
#设置oracle密码
passwd oracle 

密码我设置的是database@2021

开启 VNC服务

切换到oracle用户

su oracle
#首次运行,生成~/.vnc/xstartup等配置文件
vncserver :1 -geometry 1024x768

我这里设置的密码是 vnc@2021
oracle用户执行以下命令,直接整体复制粘贴到终端就行(不用一行一行复制)。

#配置VNC默认启动openbox
echo "openbox-session &" > ~/.vnc/xstartup
# 停止服务
vncserver -kill :1
#重新开启vnc服务
vncserver :1 -geometry 1024x768

客户端连接VNC实现远程控制

使用你的VNC客户端连接就行了,会的就略过吧。
我用的是:VNC Viewer点击下载
我的地址如下:

172.16.184.5:5901

在这里插入图片描述
然后输入上面设置的连接密码就可以了。我这里设置的密码是 vnc@2021

如果你连接的时候发现,没有界面,是黑屏的只有一个鼠标,那么可以重启一下VNC服务试试。
切换到oracle用户su oracle
命令:

vncserver -kill :1
vncserver :1 -geometry 1024x768


假如vnc中输入法切不出来

我在一些教程中看到如下配置,实际上我没有做这些配置也可以正常使用。

配置文件 ~/.vnc/xstartup 修改内容如下:

#!/bin/sh
# Start Openbox.
openbox-session &
export GTK_IM_MODULE=fcitx # or xim
export QT_IM_MODULE=fcitx # or xim
export XMODIFIERS=@im=fcitx

参考

  • 《VNC》维基百科
    https://zh.wikipedia.org/wiki/VNC
    -《Fcitx》维基百科
    https://zh.wikipedia.org/wiki/Fcitx
  • 《配置 (其他)》
    https://fcitx-im.org/wiki/Configure_(Other)/zh-hans
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CentOS7+VNC+Openbox+Fcitx 的相关文章

  • centos7下boot空间不足解决办法

    root localhost admin rpm qa grep kernel 看下有哪些 然后用yum remove kernel devel 3 10 0 327 el7 x86 64 删除
  • 《银河麒麟高级服务器操作系统V10》使用

    一言而论 讲了麒麟服务器V10的基本使用 包括终端 VNC 文章目录 前言 基本架构 环境 硬件环境 软件环境 麒麟安装步骤 1 在宿主机上安装好VM 并且激活 2 使用VM创建虚拟机 3 启动虚拟机 终端常用点 VNC的使用 麒麟上安装V
  • 小米造车?年轻人的第一辆电动车?

    素来有着价格屠夫称号的 小米 终于要对电动车出手了 事件简讯 昨天下午 据 晚点LatePost 爆料 小米 已确定造车 并视其为战略级决策 不过具体形式和路径还未确定 或许仍有变数 一位知情人士称 小米造车或将由小米集团创始人雷军亲自带队
  • python3.7在centos下安装pygame

    python编程从入门到实践 一书的第二部分开始 需要安装pygame 我用的是centos7 里面有内置的python2 我自己装了python3 7 pip安装pip3 安装过程网上教程很多 但是一般安装的不完全 需要注意的是安装ssl
  • 在 Docker 容器中使用 VNCserver + GUI 应用程序 + Virtual Display

    我想在 docker 容器内运行 firefox 或任何图形应用程序 我的要求 当我启动容器时 我应该创建一个虚拟显示 启动 VNC 服务器 然后启动 GUI 应用程序 这意味着容器成功启动后 我可以通过 VNC 客户端连接到容器内运行的
  • centos libgeos 存储库丢失

    在 centos 7 3 上 最小尝试安装 shapely 或 geopandas 需要访问https github com libgeos libgeoslibgeos 尝试通过安装这个sudo yum install libgeos d
  • PHP 无法在 CentOS 7 上连接到 PostgreSQL

    我在 OSX 上的 VirtualBox 中运行 CentOS 7 Apache PHP 5 4 和 PostgreSQL 9 2 都在运行 但是 当我的 简单 php 脚本尝试连接到 PostgreSQL 时 它不起作用 警告 pg co
  • 如何在 CentOS 7 上安装最新版本的 Docker [已关闭]

    Closed 这个问题是与编程或软件开发无关 目前不接受答案 我正在尝试在 CentOS 7 64 位系统上安装现代 docker io 版本 1 5 yum 服务器附带的默认 docker io 是 1 3 2 并且 这个版本对于我需要的
  • PHP 警告:第 0 行的未知模块已加载

    在 Mac OSX Mavericks 上使用 homebrew php55 每当我运行 php 命令时 我都会收到以下错误消息 一切运行正常 只是很烦人 PHP Warning Module intl already loaded in
  • Windows MIrror 驱动程序 远程显示驱动程序 VNC 服务器 Windows 8

    我正在开发远程桌面服务器的驱动程序 像 UltraVNC 内部协议 之类的东西 首先我发现 Windows 8 不支持镜像驱动程序 作为远程显示驱动程序的 DDI 的唯一子集 1 这是否意味着我需要为 Windows 8 实施远程显示驱动程
  • Centos7 docker-py 好像没有安装

    我安装了 Centos7 最小版本 然后 ansible docker pip 并使用 pip 安装了 docker py 版本 Docker 版本 1 6 0 内部版本 8aae715 1 6 0 安塞波1 9 1 docker py 1
  • 如何在 CentOS 7 中安装 pip?

    CentOS 7 EPEL 现在包含 Python 3 4 yum install python34 然而 当我尝试这样做时 即使 Python 3 4 安装成功 它似乎也没有安装 pip 这很奇怪 因为pipPython 3 4 应该默认
  • Jconsole无法连接

    我正在使用 VNC 连接到服务器 我能够通过 VNC 进入服务器并打开 Jconsole 但无论我包含 PID 还是尝试使用 GUI 进行连接 都无法让它连接到我的进程 奇怪的是所有进程都显示在 GUI 中 见下文 当我尝试连接时我得到这个
  • 如何在 Amazon EC2 Ubuntu 服务器上设置 GUI

    我正在使用亚马逊 Ubuntu EC2 实例 它只有一个命令行界面 我想为该服务器设置 UI 以使用远程桌面工具进行访问 有没有办法将GUI应用到EC2实例 这是可以做到的 以下是设置 GUI 的步骤 创建新用户 使用密码登录 sudo u
  • tcsh 脚本不退出

    我正在运行 CentOS 7 并且 tcsh 脚本出现问题 我有一个名为 quittest 的简单脚本 bin tcsh echo Simple Test exit 0 当我从终端运行 quittest 时 我得到 Simple Test
  • ExtJs 转 DJango url 查询参数

    好吧 这是一个很长的问题 我正在使用 ExtJS 和 Django 创建一个网站 我在互联网上搜索了如何在获取 IFrame 时向 url 添加查询参数 所以基本上我有这个在 ExtJS 中创建一个面板 其中有一个 html 页面 我希望能
  • 如何在 centos 7 上链接 python3 以使用 openssl11/或最新版本的 openssl (1.1.1)

    我们想在centos 7中升级OpenSSL但没有成功 原因可能是这样的 通过 yum install openssl11 将 CentOS 7 升级到 OpenSSL 1 1 1 https stackoverflow com quest
  • python pycparser设置错误

    我在 CentOS 7 上通过 pip 设置 pyparser 时看到以下错误 usr bin python2 u c import setuptools tokenize file tmp pip build PMzCYU pycpars
  • 安装 hunspell 包

    我期待使用 pip 安装 hunspell 包 但它会抛出以下错误 Collecting hunspell Using cached hunspell 0 4 1 tar gz Building wheels for collected p
  • 如何在 Apache 网站内托管 ASP.NET Core Web 应用程序?

    我有一个旧的php使用开发的应用程序Yii2框架托管在Centos路径上的服务器 var www html 该应用程序可在以下位置访问http somedomain com 我正在开发使用新的 API 项目ASP NET MVC Core需

随机推荐

  • kali新手入门教学(16)--如何在校园网下使用桥接模式上网

    emmm很长时间都没有更新了 卑微的我要准备期末考 然后返校什么的耽误了 xff0c 对不起大家啦 再次感谢大家的支持啦 刚收拾完我的寝室 xff0c 打开电脑登上校园网 ip变化很大 xff0c 这也是大家经常遇见的情况 xff0c 本地
  • React Native 兼容ios与android的弹出提示toast

    由于 iOS 没有内置的 toast 功能 xff0c 因此 React Native 开发人员必须实现自己的跨平台 toast 库 react native root toast是开发人员与 React Native 社区共享的一种解决方
  • Unable to resolve module react-native-pager-view

    报错信息 Unable to resolve module react native pager view from home apex wp expo jsjs node modules 64 ant design react nativ
  • Expo开发Field: splash.image - cannot access file at ‘./assets/splash.png‘

    报错信息 Error Problems validating asset fields in app json Learn more https docs expo io Field splash image cannot access f
  • Expo开发的App如果获取版本信息

    如何获取版本信息 xff0c 实际上很简单 但是我第一次使用expo获取版本信息 xff0c 还是查看了好多expo的文档才找到 所以就记录一下吧 版本信息配置app json span class token punctuation sp
  • React Native每次进入页面执行一次方法

    问 xff1a 有什么办法 可以在我每次进入页面的时候 执行一次方法吗 因为我看rn的生命周期 都是只执行一次 然后在下次进入的时候就不会再执行方法了 答 xff1a 在function组件中可以这样实现 xff1a span class
  • http隧道Chisel

    http隧道有啥用呢 xff1f 有些服务器封端口或者封协议只能走http协议 远程维护机器很不方便 xff0c 可能要VPN 43 堡垒机 xff0c 甚至还有限制了ssh客户端的 这里我就会考虑使用http隧道的方式 同类文章推荐 xf
  • Sockets代理的使用简介

    如果拥有了Sockets代理服务后 xff0c 应该如何使用它呢 xff1f 本文就简单介绍一下 xff0c 本人的经验分享 浏览器代理 以firefox为例 xff0c 其他浏览器类似 很简单 xff0c 看下图应该就能明白 设置好代理后
  • cannot drop a user that is currently connected

    删除用户时 xff0c 提示正在连接的用户无法删除 那就强制断开连接吧 xff01 错误信息 SQL span class token operator gt span drop user usr sg cascade span class
  • ModuleNotFoundError: No module named ‘setuptools_rust‘

    我在执行pip3 install webssh遇到以下的报错信息 报错信息 Traceback most recent call last File line 1 in File tmp pip build my9sai1o cryptog
  • 无限渗透实战(2)--绕过认证上校园网

    校园网大家都熟悉 一般都是开放的 xff0c 然后连接之后有个登录页面 xff0c 认证之后就可以上网了 xff0c 那么我们怎么绕过认证直接上网 首先还是开始监听周围的ap 可以看到有许多的校园网 那么我们就需要开始监听周围的校园网 xf
  • spring boot jar自定义端口启动

    java jar spring zs 1 0 jar server port span class token operator 61 span 9090
  • CentOS7中安装五笔输入法

    使用vnc远程了一点服务 xff0c 远程维护 GNOME默认自带的是ibus输入平台 默认有一个拼音输入法 但是我日常使用五笔打拼音还是不太习惯 xff0c 那就安装个五笔输入吧 相关阅读 xff1a Centos7安装和配置VNC服务器
  • CentOS7下vscode无响应

    原因分析 xff1a 我以前安装vscode是可以正常使用的啊 为什么现在不行了呢 xff1f 我怀疑会不会是新版的兼容性不行 我安装的是code 1 58 2 1626302881 el8 x86 64 rpm 后来在看到这篇文章 Cen
  • Bad owner or permissions on ~/.ssh/config

    ssh运行报错如下 xff1a Bad owner or permissions on ssh config 解决办法 span class token function chmod span 600 ssh config 参考 https
  • java.lang.NoClassDefFoundError: org/owasp/encoder/Encode

    一个老的spring boot项目中使用到了shiro xff0c 存在安全漏洞 xff0c 由于源码丢失 xff0c 只好采用解压jar升级里面shiro的jar来解决了 但是升级以后遇到报错如下 报错信息 Caused by java
  • A VNC server is already running as :1

    现象 VNC服务使用 Centos7安装和配置VNC服务器 GNOME篇 https blog csdn net lxyoucan article details 113179208 中的配置方法 一开始服务都是正常的 xff0c 在我多次
  • CentOS7+IntellJ IDEA 中文输入问题

    心血来潮在CentOS7中搭建了java开发环境 xff0c 发现在IDEA中输入中文存在问题 中文输入法只能输入1到2个中文 xff0c 后面都是英文了 xff0c 那就想办法解决一下吧 xff01 环境 我的环境信息如下 xff1a 项
  • CentOS7安装CMakev3.21.0

    yum 安装的CMake版本是 2 8 12 2 xff0c 比较旧无法使用 那就来升级一下吧 cmake span class token keyword span CMake Error at CMakeLists txt 1 span
  • CentOS7+VNC+Openbox+Fcitx

    文章目录 简介VNCopenboxFcitx 实战环境信息安装与自动配置脚本创建用户开启 VNC服务 客户端连接VNC实现远程控制假如vnc中输入法切不出来参考 简介 VNC VNC xff08 Virtual Network Comput