VNC,全称为Virtual Network Computing,它是一个桌面共享系统。它的功能,类似于windows中的远程桌面功能。VNC使用了RFB(Remote FrameBuffer,远程帧缓冲)协议来实现远程控制另外一台计算机。它把键盘、鼠标动作发送到远程计算机,并把远程计算机的屏幕发回到本地。

VNC技术与平台无关,VNC Viewer可以和VNC Server在不同的操作系统上。VNC几乎支持所有的操作系统,也支持Java,甚至可以通过支持Java的浏览器来访问VNC Server。多个VNC客户端可以同时连接到一个VNC Server上。

VNC最初由AT&T开发的,它的源代码是开源的。

1.首先需要配置VNC密码,密码在使用客户端连接服务器时使用。

注意:VNC密码保存在用户的主目录中,每个用户都可以设置自己的密码。因此,请使用你的用户名(尽量不要使用root)运行下列命令:

1.vncpasswd

然后输入密码。

接下来就可以启动VNC server了。在启动VNC server时,需要为你的server指定一个display参数。你可以把display理解为一个桌面,每个用户都可以有自己的桌面。VNC客户端在连接时,可以指定连接到哪个桌面上。在系统中,display号不能重复,也就是说,如果有用户已经建立了名为“:1”的display,另外一个用户就不能再使用“:1”了,他可以使用“:2”。
启动VNC server的命令是:

vncserver < display >

例如:

vncserver : 1

2.配置一下防火墙

允许VNC客户端连接VNC server。VNC server监听的端口从5900开始,display :1的监听5901,display :2监听5902,以此类推。CentOs的防火墙缺省是不允许连接这些端口的,所以需要使用下面的步骤打开防火墙(需要root权限):

vi /etc/sysconfig/iptables

找到下面的语句:

-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited

在此行之前,加上下面的内容:

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 5900:5903 -j ACCEPT

这句话的含义是,允许其它机器访问本机的5900到5903端口,这样,display:1, display:2, display:3的用户就可以连接到本机。
然后使用root身份重新启动防火墙:

/sbin/service iptables restart

好了,现在就可以运行客户端软件,连接到VNC server上了。

3.VNC客户端

VNC客户端软件很多,在linux下有vncviewer,KDE还提供了一个krdc(它的菜单项就是”Remote Desktop Connection”,远程桌面连接)。
在window也有不少vnc客户端,你可以到http://www.realvnc.com/ 去下载一个,安装就可以用了。

假设VNC server的IP地址是192.168.1.1,display是:1。在VNC viewer的server栏中输入:“192.168.1.1:1 ”,然后连接。OK,你可以看到自己的桌面了。以后不管你什么时候关闭自己的本地PC机都不怕了,只要server不关机,你只要连接到VNC server,你就可以看到你前一天关闭本地PC机时的桌面还保持着原样。

不过…这个桌面怎么这么丑?!
原来vncserver默认使用的窗口管理器是twm,这是一个很简陋的窗口管理器,你可以把你的桌面改成GNOME或KDE。
方法是,进入你自己的home目录,然后编辑这个文件:.vnc/xstartup,下面是这个文件的内容:

# !/ bin / sh

# 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 8 0×24 + 10 + 10 – ls – title “ $VNCDESKTOP Desktop “ &
#twm &
gnome – session &

你可以把像上面这样把”twm &”这一行注释掉,然后在下面加入一行”gnome-session &”,或者是”startkde &”,分别启动GNOME桌面和KDE桌面。

如果server重启了,那你就需要重新运行一次vncserver命令来启动VNC server,这很麻烦。有没有更好的方法呢?

有!我们可以把VNC server启动成后台服务。执行如下步骤:

首先要允许VNC server在系统启动过程中被启动。这可以通过“系统设置–>服务器设置–>服务”菜单来配置,把vncserver一项选上就可以了。
如果使用命令行的话,以root身份运行以下两条命令:

1.cd / etc / rc5 . d
2.mv K35vncserver S35vncserver

然后编辑/etc/sysconfig/vncservers,以下是文件内容:

# The VNCSERVERS variable is a list of display:user pairs.
#
# Uncomment the line below to start a VNC server on display : 1
# as my ’myusername’ (adjust this to your own). You will also
# need to set a VNC password ; run ’man vncpasswd’ to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC , see
# .

VNCSERVERS
= “ 1:user1 2:user2 3:user3 “
VNCSERVERARGS [ 1 ] = “ -geometry 1024×768 “
VNCSERVERARGS [ 2 ] = “ -geometry 1024×768 “
VNCSERVERARGS [ 3 ] = “ -geometry 800×600 “

解释一下这个文件:
VNCSERVERS这一行是配置在系统启动时启动几个VNC server,上面的例子里运行了三个VNC server,其中user1在display :1,user2在display :2,user3在display :3。
VNCSERVERARGS这三行,分别为VNC server 1, 2, 3配置启动参数,上面的例子里对user1和user2使用屏幕分辨率1024×768,对user3使用800×600。
其它支持的参数请使用“man vncserver”命令查询。

编辑好这个文件后,保存,然后以root身份运行:

/sbin/service vncserver start

这样user1, user2, user3的vncserver就启动了。
以后每次系统重启时,都会自动启动这三个用户的vncserver。

注意:上面三个用户必须已经使用vncpasswd命令设置过vnc密码,不然他的vncserver启动会失败!

使用VNC View远程访问Linux,总是没有办法切换出SCIM输入法,研究了很久,终于让我找到了解决 方法 。

1)修改.vnc/xstartup文件,在最后一行加入:scim -d,意思为打开SCIM输入法

2)使用VNC View访问Linux系统以后,修改scim输入法的快捷键,因为默认打开输入法的快捷键为ctrl+space,与本地机器上切换输入法的快捷键冲突,系统 会先接收到本地的命令,所以没办法使用默认快捷键打开输入法。将打开SCIM输入法的快捷键修改为Ctrl+Alt+Space。

vnc远程控制linux/windows相关推荐

  1. Window VNC远程控制LINUX:VNC详细配置介绍

    Window VNC远程控制LINUX:VNC详细配置介绍 //---------------------------------------vnc linux下的详细配置 1.VNC的启动/停止/重 ...

  2. linux互联网远程控制,VNC远程控制LINUX 之一

    VNC远程控制LINUX 之一 [b]什么是VNC?[/b] VNC是虚拟网络计算Virtual Network Computing的缩写. 他是一个远程控制程序,允许用户在因特网的任何地方使用简单的 ...

  3. vnc远程控制linux密码,使用VNC实现LINUX与windows的相互远程控制

    1.确认linux系统是否安装VNC 默认情况下,Red Hat Enterprise Linux安装程序会将VNC服务安装在系统上. [root@localhost ~]# rpm -qa|grep ...

  4. 如何用vnc远程到服务器,如何利用VNC远程控制Linux

    [IT168 服务器学院]Windows下面的远程图形界面的控制大家都已经驾轻就熟了.其实Linux下面利用vnc来图形界面的控制也是非常简单的.VNC是由两部分组成:一部分是客户端的应用程序(vnc ...

  5. linux远程桌面复制文件,SH,telnet,网络拷贝文件,putty,连接windows远程桌面终端,远程控制linux桌面...

    SH,telnet,网络拷贝文件,putty,连接windows远程桌面终端,远程控制linux桌面 发布时间:2007-04-08 01:02:27来源:红联作者:fengmayi1 i,最简单命令 ...

  6. suse linux远程,使用VNC远程控制SUSE Linux

    1.VNC的介绍 VNC(Virtual Network Computing)是一套由AT&T实验室所开发的可操控远程的计算机的软件,其采用了GPL授权条款.VNC使用了RFB(Remote ...

  7. 浏览器远程控制linux,VNC远程Linux桌面控制好用 --尤其是用浏览器

    参考链接: 首先下载到vnc的linux版本和windows版本. 1. 首先,我们要先下载 VNC 安装,假如我们下载的目录是 VNC/vncgo . # cd ~ # wget # tar -zx ...

  8. linux vnc 远程控制服务

    telnet与ssh只是基于字符界面的远程控制,如果想要对linux服务器时行桌面的远程控制的话,我们可以安装vnc-server服务来实现. 一.vnc服务简介 vnc本身一个远程控制软件,可以安装 ...

  9. windows 控制linux,windows远程控制linux的最佳方案

    在windows下面远程控制linux机器,我门一般做2件事情: 1. 发送linux命令控制远程机器 2. 和linux远程机器之间传输文件 第一个大家用的比较多的是PuTTY 第二个很方便的psc ...

最新文章

  1. Cororsync+Pacemaker
  2. 高仿腾讯QQ Xplan(X计划)的H5页面(2):动画控制
  3. 控制文件的多路复用技术
  4. 分布式技术比较(RPC,CORBA,WebService)
  5. 清理 zabbix 历史数据, 缩减 mysql 空间
  6. 有向无环图的拓扑排序
  7. Retrofit2/OkHttp 重写覆盖headers 与 不重写覆盖Headers
  8. android 6.0 adb,安卓6.0,adb停用系统更新
  9. 数据之路 - Python爬虫 - PySpider框架
  10. Citrix 服务器虚拟化之三十一 XenApp 6.5负载均衡
  11. [分享] 微信支付中商户对个人用户付款案例
  12. Lambda表达式基础
  13. 树莓派c语言小车红外,基于树莓派的红外避障小车
  14. linux ubuntu因为没有正常关机,导致开机出现gun grub
  15. 微信小程序PNG图片去白底
  16. 你能发现什么?又能坚持什么?
  17. Python 以练促学之 List 篇
  18. USB描述符解析和USB_CCID描述符设置
  19. 更新提示!Chrome新的零日漏洞正被利用
  20. iOS动画:3D动画(18)

热门文章

  1. 土豆去皮切片机设备行业调研报告 - 市场现状分析与发展前景预测
  2. mysql密码忘了咋办,密码重置过程
  3. 农夫过河【数据结构实验报告】
  4. Shader基础学习(一)
  5. 计算两个矩阵的行向量之间的欧式距离
  6. 计算机网络与通信毕业论文题目,计算机通信专业
  7. Robomaster电控培新(一)C语言
  8. 创新创意ssm计算机毕业设计题目300例之java农村地产物品交易网站mg72q
  9. 直流有刷电机模型+三闭环控制+SIMULINK
  10. dir在python中什么意思_Python中的dir()方法