曾经喜欢用 RealVNC Server 实现 Linux/Windows 的远程控制,因为 RealVNC 为收费商业软件,支持文件传输,性能优化方面也做得不错。但 RealVNC 从 5.0 版本开始协议兼容性方面就加入了很多私有的东西,且客户端只能是 RealVNC 自己的客户端。而开源 VNC 软件如 TigerVNC 等等协议停留在稳定的 VNC 4.4 分支上,不兼容 RealVNC 5.x 以及更高的商业版本,目前大量的开源软件都对 4.4 协议分支提供良好支持,比如 vnc-reflection 转发;另一方面针对 Linux 远程受控端而言,如果要传输文件,可以方便得使用 SSH/SFTP,而 RealVNC 的安装配置也有些复杂,所以综合考虑还是使用 TigerVNC 了。

TigerVNC 包含 Server 控制端,可以用来实现 VNC 服务,并且其中包含一个名为 X0VNC 的特殊服务,该服务运行后可以把当前 X11 桌面会话远程传输给远端客户端让其操控,而不是传统 VNC 的虚拟会话桌面模式。网上搜索还可以发现另外一个名为 X11 VNC 的同类单独开源软件,功能一样,只不过配置使用起来不如 X0VNC 方便。安装 TigerVNC Server 很简单,在 Fedora 下,用以下命令即可安装:

$ sudo dnf install tigervnc-server

由于 X0VNC 每次都是将当前 X11 桌面会话传输给远端客户端,因此首先必须保证 X11 桌面会话启动后再启动 X0VNC,对于无人操控的远程受控端而言,我们必须让桌面能够自动用某个账号登录进入会话,以 Fedora GNOME 为例,我们可以设置某个账号允许其自动登录,这样开机后就会自动用该账号登录。因此,我们只需设置该账号登录后自动运行的程序即可达到 X0VNC 在桌面会话启动后自行启动的目的。账号自动登录的设置这里从略,网上有很多介绍,GNOME 系统设置中也有图形化设置,很简单,我们这里不再赘述。要配置一个 X0VNC 的自启动服务,我们可以进入当前账号的 ~/.config/autostart 目录下,创建一个 x0vncserver.desktop 文件,文件内容如下:

[Desktop Entry]
Name=X0VNCServer
Comment=X0 VNC Server from TigerVNC
Exec=x0vncserver -PasswordFile=/home/someone/.vnc/passwd -AlwaysShared
Terminal=false
Type=Application
StartupNotify=true

保存后,别忘了在当前账号下运行一下 vncpasswd 设置 VNC 的登录密码,然后重启系统即可。

Linux 环境下安装配置 TigerVNC Server 并启用当前会话远程服务(X0VNC)的更多相关文章

  1. Linux环境下安装Tigase XMPP Server

    Tigase是一种XMPP服务器,可以作为采用XMPP协议的各种IM(Instant Messeging)工具(如Pandion.Spark等)的服务器. 在Linux环境下安装Tigase的步骤如下 ...

  2. Linux环境下安装配置Mysql

    首先我们的使用的是linux的 centOS6 版本 安装mysql: 1.查看有没有安装包 yum list mysql* 2.进行安装mysql:一般我们在服务器端安装的都是服务端( mysql- ...

  3. ubuntu linux环境下安装配置jdk和tomcat

    关于linux搭建服务器,ubuntu中jdk和tomcat的安装和配置 一.jdk的安装配置 1:去官网下载好自己需要的版本,注意,linux压缩文件通常以tar.gz结尾,别下载错了.本次我下载安 ...

  4. Linux环境下安装配置JDK1.8

    最近在搞虚拟机,记录下虚拟机内java环境的搭建流程 一.下载合适版本的jdk 此处选择JDK1.8,各位同学可以根据自己的需求选择对应的版本,下载地址为: https://www.oracle.co ...

  5. Linux环境下安装配置vsftpd服务(三种认证模式)

    一.FTP简介 文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议.它工作于网络传输协议的应用层,使用客户/服务器模式,主要是用来 ...

  6. Linux环境下安装配置Node.js

    1.在官网查看版本,LTS代表长期支持的版本 2.进入服务器 3.输入命令:·wget https://npm.taobao.org/mirrors/node/v8.9.3/node-v8.9.3-l ...

  7. linux环境下安装git(采用github下载git源码编译)

    [目的]:linux环境下 安装配置git成功 [准备条件]linux系统,git包 1.先行下载git包 -- 从github上https://github.com/git/git/releases ...

  8. Java入门——在Linux环境下安装JDK并配置环境变量

    Java入门——在Linux环境下安装JDK并配置环境变量 摘要:本文主要说明在Linux环境下JDK的安装,以及安装完成之后环境变量的配置. 使用已下载的压缩包进行安装 下载并解压 在Java的官网 ...

  9. 【云和恩墨】性能优化:Linux环境下合理配置大内存页(HugePage)

    原创 2016-09-12 熊军 [云和恩墨]性能优化:Linux环境下合理配置大内存页(HugePage)   熊军(老熊) 云和恩墨西区总经理 Oracle ACED,ACOUG核心会员 PC S ...

随机推荐

  1. Python入门基础--变量与基本数据类型

    变量 什么是变量 变量就是变化的量,变就是变化,量用于衡量描述对象的状态 为什么要有变量 程序执行的本质就是一系列状态的变化,变是程序执行的直接体现,所以我们需要有一种机制能够反映或者说是保存下来程序 ...

  2. 适合学习C语言开源项目——嵌入式脚本语言 Berry

    嵌入式脚本语言 Berry github网址 :https://github.com/Skiars/berry Berry 是一款面向小型嵌入式系统的脚本语言,目前发布了 0.1.0 版本.相比于其他 ...

  3. makefile学习(2)

    新建目录如下: ├─include │ integrate.h │ └─src │ integrate.c │ main.c │ makefile │ └─obj obj用于存放object文件. m ...

  4. BZOJ - 2744 朋友圈 (二分图上的最大团)

    [题目大意] 在很久很久以前,曾经有两个国家和睦相处,无忧无虑的生活着.一年一度的评比大会开始了,作为和平的两国,一个朋友圈数量最多的永远都是最值得他人的尊敬,所以现在就是需要你求朋友圈的最大数目.两 ...

  5. shell脚本入门基础知识

    shell 脚本的第一行 #!/bin/bash #!/bin/sh 其实,sh是bash的一个软链接 sh -> bash 变量,字母下划线开头(好像是没有类型的) #普通变量 var1=ni ...

  6. Android 停止调试程序

    现在我知道怎么停掉debug的Android程序了,很简单,进入ddms界面,对着你的进程,kill.

  7. easyui datagrid复选框控制单选

    使用easyui datagrid的时候,由于对数据表格操作太多,并且有单选和多选功能因此采用复选框.但是在单选的状态,使用CheckOnSelect和singleselect时发现,页面有明显延迟, ...

  8. vue/vux编译时出现 unexpected token <11:0-485>

    最近开发Vux项目,一直使用VS Code开发工具,可以格式化里面的<script>代码的: 但是今天突然无法格式化代码,而且编译报错.主要提示类似:unexpected token  & ...

  9. python-day3-内置函数与字符字节之间的转换

    #三元运算 1 if True else 0 >>>1 1 if False else 0 >>>0 #内置函数lambda def f1(a1): return ...

  10. CSU-2034 Column Addition

    CSU-2034 Column Addition Description A multi-digit column addition is a formula on adding two intege ...