VNC

2023-05-16

VNC (Virtual Network Computing)是 虚拟网络 计算机的缩写。VNC 是一款优秀的 远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的。VNC 是在基于 UNIX 和 Linux 操作系统的免费的 开源软件, 远程控制能力强大,高效实用,其性能可以和 Windows 和 MAC 中的任何远程控制软件媲美。 在 Linux 中,VNC 包括以下四个命令:vncserver,vncviewer,vncpasswd,和 vncconnect。大多数情况下我只需要其中的两个命令:vncserver 和 vncviewer。

目录

简介
特点
组成部分
命令描述
CentOS安装VNC
展开
简介
特点
组成部分
命令描述
CentOS安装VNC
展开

简介

[1] VNC(Virtual Network Computing)基本上是属于一种显示系统,也就是说它能将完整的窗口界面通过网络,传输到另一台 计算机的屏幕上. Windows服务器中包含的"Terminal Server"、Symantec公司开发的收费软件PCAnywhere、近期流行的Teamviewer、国内的 协通XT800( 快递通KDT)都是属于这种原理的设计,同时这些软件又在VNC的原理基础上做了各自相应改进,提高了易用性、连通率和可穿透内网(Teamviewer、协通XT800、KDT).
VNC是由 AT&T实验室所开发的,其采用GPL(General Public License)授权条款,任何人都可免费取得该软件。VNC软件要由两个部分组成:VNC server 及VNC viewer。用户需先将 VNC server安装在被远程操控的计算算机上后,才能在主控端执行VNC viewer 进行远程操控。 类似的技术为 RDP(Remote Desktop Process),称为“远程桌面连接”,此外,还有一套由Symantec 公司推出的 pcAnywhere 软件也具有类似功能。 VNC、RDP、pcAnywhere 等均为远程登录 Telnet 的图形化界面软件,由 Telnet 软件发展而成。
VNC工作流程
(1) 在服务器端启动 VNC Server。
(2) VNC客户端通过浏览器或 VNC Viewer 连接至VNC Server。
(3) VNC Server传送一对话窗口至客户端,要求输入连接密码, 以及存取的VNC Server显示装置。
(4) 在客户端输入联机密码后,VNC Server验证客户端是否具有存取权限。
(5) 若是客户端通过 VNC Server 的验证,客户端即要求VNC Server显示桌面环境。
(6) VNC Server通过X Protocol 要求X Server将画面显示控制权交由VNC Server负责。
(7) VNC Server将来由 X Server 的桌面环境利用VNC通信协议送至客户端, 并且允许客户端控制VNC Server的桌面环境及输入装置。

特点

同样可能远程连入UNIX、Linux进行图形化操作的还有流行的Xmanager,VNC与之相比——两者工作原理不一样,前者(VNC)是远程连入 操作系统,所有操作在UNIX、Linux 主机 服务端进行,即使操作过程中“本地电脑与 操作主机网 络断开”,也不影响操作的顺利进行;而后者(Xmanager)是通过端口将主机服务器的UI界面引导到本地电脑进行展现,如操作过程出现“本地电脑与操 作主机网络断开”,操作将中断失败!如果操作都进行的工作任务非常重要,不能中断,如ORACLE RAC实施,结果是灾难性的!更重要的是,VNC是免费的、开源的,Xmanager你可能用的是破解 注册版的。

组成部分

VNC基本上是由两部分组成:一部分是客户端的应用程序(vncviewer);另外一部分是服务器端的应用程序( vncserver)。VNC的基本运行原理和一些Windows下的 远程控制软件很相象。VNC的服务器端应用程序在UNIX和Linux 操作系统中适应性很强, 图形用户界面十分友好,看上去和Windows下的 软件界面也很类似。在任何安装了客户端的应用程序(vncviewer)的Linux平台的 计算机都能十分方便的和安装了服务器端的应用程序( vncserver)的计算机相互连接。另外,服务器端 ( vncserver)还内建了Java Web接口,这样用户通过服务器端对其他 计算机的操作就能通过 Netscape显示出来了,这样的操作过程和显示方式比较直观方便。

命令描述

vncserver
此服务程序必须在在主(或遥控) 计算机上运行。你只能作为使用者(不需要根用户身份)使用此项服务。
vncviewer
本地应用程序,用于远程接入运行 vncserver的 计算机并显示其环境。你需要知道远程 计算机的IP地址和 vncserver设定的密码。
vncpasswd
vncserver的密码设置工具。 vncserver服务程序没有设置密码将不能运行(好习惯)。如果你没有设置,运行 vncserver时它会提示你输入一个密码。所以,一般我不会单独运行这个命令来设置密码。
vncconnect
告诉 vncserver连接到远程一个运行vncviewer的 计算机的IP和端口号。这样我就可以避免给其他人一个接入的密码。
Xvnc
一个vnc“主控”程序,一般来说不需要直接运行。( vncserver和vncviewer实际上是Xvnc的脚本)
查找所有可用的选项,运行:
Xvnc --help
出于安全的考虑,一般不建议直接以超级用户帐号运行 vncserver程序。如果你需要 超级用户的环境,请以一般用户登录后再使用su命令登录到超级用户帐号。
VNC运行的工作流程如下:
(1) VNC客户端通过 浏览器或VNC Viewer连接至VNC Server。
(2) VNC Server传送一对话窗口至客户端,要求输入连接密码,以及存取的VNC Server显示装置。
(3) 在 客户端输入联机密码后,VNC Server验证客户端是否具有存取权限。
(4) 若是客户端通过VNC Server的验证,客户端即要求VNC Server显示桌面环境。
(5) VNC Server通过X Protocol 要求X Server将画面显示控制权交由VNC Server负责。
(6) VNC Server将来由 X Server的 桌面环境利用VNC通信协议送至客户端,并且允许客户端控制VNC Server的桌面环境及输入装置。

CentOS安装VNC

1、安装VNC

yum install vnc-serve
2、添加用户
useradd vnc
passwd vnc

3、设置用户的vnc密码

su vnc
vncpasswd
exit

4、编辑vnc配置文件

vi /etc/sysconfig/vncservers
在最后加上:
VNCSERVERS="1:vnc"
VNCSERVERARGS[1]="-geometry 1024x768"

5、创建xstartup脚本

centos-6用户忽视此步
/sbin/service vncserver start
/sbin/service vncserver stop
su vnc
vi ~/.vnc/xstartup
加入如下代码:
#!/bin/sh
# Add the following line to ensure you always have an xterm available.
( while true ; do xterm ; done ) &
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
退出到root:
exit

6、启动vnc

/sbin/service vncserver start

7、测试vnc

7.1、使用java连接 vncserver
在 浏览器中输入http://192.168.0.10:5801登录桌面。
7.2、使用vnc viewer连接 vncserver
打开vnc viewer,在server中输入192.168.0.10:1进行连接。
注意:192.168.0.10替换成自己的服务器IP。
[2]
参考资料
  • 1.  Guacamole 0.7.0 发布,基于HTML5的VNC客户端  . 中国Linux联盟 [引用日期2012-12-4] .

  • 2.  centos安装vnc  .centos [引用日期2012-06-12] .

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

VNC 的相关文章

随机推荐

  • C语言开发《扫雷》游戏,你从未体验过的联网对战版

    一 简介 单机版扫雷总会有些枯燥 xff0c 不妨试试联网对战版扫雷 xff01 开发环境 xff1a VS2019 43 EasyX 20210224 游戏玩法 xff1a 左键按下翻开方块 xff0c 翻开雷判输 xff0c 或翻开最后
  • C语言趣味小游戏开发《找方块》!测试你眼力见的时候到了~

    程序介绍 该程序是仿照最近网上流行的找方块游戏编写的 xff0c 虽然没有仿照的一模一样 xff0c 但是也实现了他的一些功能 个人觉得可玩性还是挺高的 xff0c 是一个不错的娱乐放松的游戏 编写简介 该游戏的编写还是挺容易的 xff0c
  • C语言高仿贪吃蛇大作战,800行代码就能实现,结尾有源码~

    这是一个贪吃蛇大作战类游戏 xff0c 修改特性为 AI 不互杀 xff1b 该程序有四个类 xff1a 蛇基类 SnakeBase xff0c 玩家类 Player xff0c AI 类 xff0c Game 类 xff1b SnakeB
  • 黑苹果10.15.2 安装总结记录

    先展示一下我这一次折腾的最终效果 xff1a 桌面显示正常 xff0c wifi正常 xff0c 核显正常 xff0c 蓝牙没弄 xff0c 声卡没弄 安装vs for mac xff0c 微信 xff0c 网易云音乐 xff0c 打开多个
  • docker容器技术基础入门

    docker容器技术基础入门 容器 Container 传统虚拟化与容器的区别Linux容器技术Linux NamespacesCGroupsLXCdocker基本概念docker工作方式docker容器编排 容器 Container 容器
  • C++中的future和promise使用方法

    future和promise C 43 43 11中std future提供了一种访问异步操作结果的机制 异步操作不能马上就获取操作结果 xff0c 只能在未来某个时候获取 xff0c 但可以以同步等待的方式来获取结果 xff0c 可以通过
  • select、poll、epoll简介

    select poll epoll都是IO多路复用机制 xff0c 都可实现同时监听多个I O事件的状态 xff0c 多路复用就是通过一种机制监视多个描述符 xff0c 一旦某个描述符读或者写就绪就能通知代码进行读写操作 本质他们都是同步I
  • 【无标题】

    pro git学习笔记 持续更新ing 感觉一直对git的了解不够深入 xff0c 每次都是用到什么功能现去找 xff0c 但这样每次查询都耗费时间并且可能出错 xff0c 索性将git系统性地学习一遍 xff0c 下面是记录的学习笔记 一
  • C++中的std::string_view和std::span

    string view是C 43 43 17标准引入 xff0c std span是C 43 43 20引入 xff0c 两个特性都比较类似 1 std string view string view是字符串的视图 xff0c 由于传统的s
  • 《Word中同一标点符号在不同位置空白间距不一致应怎样调》

    在写文档时出现类似于下图这种情况 xff0c 段落格式设置一模一样 xff0c 同样是中文标点符号 xff0c 没有空格 xff0c 都是半角 xff0c 但就是标点的空白间距不同 设置方法 xff1a 段落 中文版式 选项 版式 字符间距
  • 【技巧】十大深度学习技巧和经验总结

    作者简介 xff1a 在读博士 xff0c 伪程序媛 xff0c 人工智能领域学习者 xff0c 深耕机器学习 xff0c 交叉学科实践者 xff0c 周更前沿文章解读 xff0c 提供科研小工具 xff0c 分享科研经验 xff0c 欢迎
  • VS中报错IntelliSense: argument of type "void *" is incompatible with parameter of type "const char *"

    在用VS编写C 43 43 程序的时候 xff0c 遇到这样的问题IntelliSense argument of type void is incompatible with parameter of type const char xf
  • VS控制台程序被暂停,回车继续运行

    最近用vs调试程序时 用控制台定时1s打印一次信息 xff0c 调试过程发现偶尔出现控制台停止打印 不管是否开启多线程 xff0c 都会出现该问题 xff0c 而且也怀疑可能是sleep xff08 xff09 延时阻塞导致的问题 后来多次
  • VS如何设置显示代码行数

    设置VS显示代码行数 可以方便调试代码 xff0c 工具 选项 文本编辑器 C C 43 常规 行号勾选上 参考了https jingyan baidu com album af9f5a2d2e193543140a4533 html pic
  • 程序员自我介绍

    转自https www cnblogs com univeryinli p 5838781 html 一个常规的面试 xff0c 寒暄之后面试官提出的第一个问题几乎千篇一律 xff1a 请您简单地做一下自我介绍 有些被面试者都会问 xff1
  • win10磁盘占用率过高解决办法

    最近总觉得系统用起来很卡 xff0c 一看任务管理器发现win10磁盘占用率接近100 xff0c 而且在任务管理器中也关不掉 xff0c 然后百度了一下 xff0c 发现可能是家庭组导致 xff0c 结果还真是 xff0c 下面给出解决方
  • 2020届华为C++软件开发实习面试经验

    前几天去华为实习面试 xff08 虽然笔试0AC xff0c 还是收到面试通知 xff09 xff0c 现在记录一下面试心得 xff0c 后面继续好好准备 实习面试分技术面和综合面 xff1a 1 感觉技术面试重视基础 xff0c 问c 4
  • 自己编写的字符串分割函数mysplit()

    利用strtok 函数封装成的字符串分割函数mysplit sourceStr为源字符串 splitSymbol为分隔符号 strArray为分割后的字符串 xff0c 以vector形式返回 include lt iostream gt
  • OVS Bond lacp源码分析

    近期项目中要使用Ovs bond接口 xff0c Ovs Bond 只有三种模式 xff1a balance tcp xff0c balance slb xff0c active backup 这三种模式的工作方式如下 xff1a 1 ac
  • VNC

    VNC Virtual Network Computing 是 虚拟网络 计算机的缩写 VNC 是一款优秀的 远程控制工具软件 xff0c 由著名的 AT amp T 的欧洲研究实验室开发的 VNC 是在基于 UNIX 和 Linux 操作