在一个严重依赖Windows的工作环境中,比如电子邮件被限定为Outlook(因为加密要求), VPN软件不支持Linux版本,那么,只使用Linux桌面是不够的,还需要在Linux桌面上跑个虚拟机运行Windows (比如Win 7)。于是,有一个BT的需求应运而生 -- 在Linux桌面上启动虚拟机跑Win 7,然后在Win 7里访问Linux桌面。也许你很好奇,不禁要发问: “为什么要在虚拟机Win7里访问物理机Linux桌面?” 答案很简单:情非得已!因为本人习惯在Linux的Terminal上使用vim干活,但是沟通工具却被迫使用QQ, 于是为了截图方便(拷贝文字会被QQ解释成莫名其妙的表情图),就不得不在Win 7里访问我的Linux桌面。本文将讲述如何使用VNC将这种近乎变态的需求“拉通”。(P.S. 天天喊拉通,TNND落后的生产关系不改变,只能天天硬拉Orz...)

1. 桌面环境

  • Host: Ubuntu 14.04.5 LTS (物理机装的是Linux桌面)
  • Guest: Windows 7 (虚拟机装的是Win7桌面)

2. 拉通步骤

201 - 在虚拟机Windows 7里安装RealVNC客户端 (点这里去下载)

202 - 在Ubuntu 14(i.e. Linux桌面)里安装VNC server

$ sudo apt-get install vnc4server

202.1 - 配置VNC server的访问密码 (e.g. 12345678)

$ vncpasswd

202.2 - 配置VNC server的启动脚本(~/.vnc/xstartup)

$ cat -n ~/.vnc/xstartup
#!/bin/sh export XKL_XMODMAP_DISABLE=
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
gnome-terminal &

202.3 - 在Linux桌面上启动VNC server

o 启动脚本 ~/bin/wxVNC

$ cat -n ~/bin/wxVNC
#!/bin/bash g=${?"*** 1024x768 or 1280x800 or 1500x850"}
name=${:-"$(hostname)-$g"}
vncserver -kill :
vncserver -name $name -depth -geometry $g :

o 启动VNC server

$ wxVNC 1024x768

Can't find file /home/veli/.vnc/idorax:1.pid
You'll have to kill the Xvnc4 process manually New 'idorax-1024x768' desktop is idorax: Starting applications specified in /home/veli/.vnc/xstartup
Log file is /home/veli/.vnc/idorax:.log $

203 - 在虚拟机Windows 7里使用RealVNC viewer连接Linux桌面

输入密码12345678, 连接后的效果如下:

OK, 大功告成!

后记: 变态的需求通常产生于落后的生产力关系。 生产力关系改进了,这种需求也就不复存在。 “艰难困苦,玉汝于成”,既然改变不了落后的生产力关系,那就只能自己想办法使自己开心一点:-)

使用VNC访问Linux桌面的更多相关文章

  1. 使用VNC访问Windows桌面

    1. 背景介绍 两台电脑,一个笔记本,一个台式机 笔记本上装的是Windows 10, 通过上网小助手上网 (P.S.  上网小助手...Stupid Policy...) 台式机上装的是Ubuntu ...

  2. 5款免费Windows远程连接Linux桌面软件(VNC客户端)

        不论我们出于何种的用途目的,很多朋友有需要用到VNC链接Linux桌面环境,之前老左有分享过VNC Viewer绿色软件,昨天有朋友提出来使用之后登录远程桌面的界面.分辨率等有些色差.流畅程度 ...

  3. VNC轻松连接远程Linux桌面

    VNC连接Linux桌面,要想连接Linux远程桌面,按照下面的步骤,非常简单.快速,Linux配置VNC(以RedHat.CentOS.Fedora系列为例). 工具/原料 Linux平台安装VNC ...

  4. 用VNC远程图形化连接Linux桌面的配置方法

    首先下载到vnc的linux版本和windows版本. 1. 首先,我们要先下载 VNC 安装,假如我们下载的目录是 VNC/vncgo . # cd ~# wget http://www.realv ...

  5. (总结)CentOS Linux下VNC Server远程桌面配置详解

    一.安装相应桌面环境与vnc服务端和客户端: # yum groupinstall "GNOME Desktop Environment"(CentOS 5.x安装GNOME桌面环 ...

  6. CentOS Linux下VNC Server远程桌面配置详解

    http://www.ha97.com/4634.html PS:偶以前基本不用Linux的远程图形桌面,前几天有开发的同事配置CentOS的vnc有问题,找我解决,就顺便记录总结一下,这个总结是比较 ...

  7. VNC CentOS Linux下VNC Server远程桌面配置详解

    VNC概述 VNC (Virtual Network Console)是虚拟网络控制台的缩写.VNC 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在基于 ...

  8. 【转载】使用rdp协议访问远程Linux桌面

    使用rdp协议访问远程Linux桌面 2017年03月31日 16:23:49 太阳之影 阅读数:2169   一般情况下,如果需要登陆远程Linux系统,我们会使用ssh/telnet来完成,如果需 ...

  9. windows下使用vnc viewer远程连接Linux桌面(转)

    在windows下使用vnc viewer远程连接Linux桌面,主要配置步骤: Linux: 1.rpm -qa vnc //查看是否安装vnc服务,如果没有安装,可以使用yum,或者rpm进行安装 ...

随机推荐

  1. 修改Tomcat的jvm的垃圾回收GC方式为CMS

    修改Tomcat的jvm的垃圾回收GC方式 cp $TOMCAT_HOME/bin/catalina.sh $TOMCAT_HOME/bin/catalina.sh.bak_20170815 vi $ ...

  2. 使用 IIS 在 Windows 上托管 ASP.NET Core(Windows安装实践)

    原文地址 https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.0&tabs= ...

  3. mysql主从报错截图

    1.首先确认报错的binlog和last event. 2.然后去主的机器上查看该报错的内容和报错的的位置,如果是结尾报错的,可以直接从新的binlog进行同步. #/mysql/logs# ../b ...

  4. declare命令

    还是围绕以下几个问题进行学习; 1.declare是什么? 2.问什么要用declare? 3.怎样使用declare? 1.declare是什么? ♦declare应用的很多,向我们各种语言都会有声 ...

  5. python2与python3 的pip的安装

    python2的pip安装 $ sudo apt-get install python-pip python2安装第三方包 $ sudo pip install packagename python3 ...

  6. leetcode-40-组合总和 II

    题目描述: 给定一个数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合. candidates 中的每个数字在每个组合中只 ...

  7. 基于CentOS7系统一键配置Aria2 实现服务器离线下载工具

    我们有些网友购买的海外VPS主机并不是用来做网站的,而是用来作为下载资源工具使用的.确实用这样的工具搭建之后是比本地下载速度快,因为有些资源.软件等是海外资源,而且挂载在服务器上不占用本地的资源.在这 ...

  8. c#开发Android初学(一)

    我也是最近开始学习用c#开发android,最近找在好心网友那里下到了四个android开发安卓的视频(传智的)有想要的朋友可以留下邮箱 废话不多收,分享我最近一个星期的成果. 先看最主要的一个获取数 ...

  9. CentOS 7 安装过程中设置网络

    如果在安装过程中需要使用网络,需要启动网卡,默认是DHCP 点击configure进入设置 General 常规设置 Automatically connect to this network whe ...

  10. Android Fragment向另一个Activity传值

    1.Fragment内: Intent intent=new Intent(getActivity(),ShowDataActivity.class); //参数1:Fragment所依存的Activ ...