linux hyper,windows装linux软件

今天给各位分享linux hyper的知识,其中也会对windows装linux软件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

在Hyper-V中实现windows与linux共享上网

相信不少读者都会做(或者曾经做过)这么一项活动——把一个Linux系统安装到Windows系统下的虚拟机软件中,然后在Windows这个大环境中对Linux进行学习或者一些实验操作。在进行这么一项活动时,不知道各位读者是否感受到网络连通的重要性(这里指外网的Internet),而事实上,无论是在虚拟机中还是在真实的物理机上“玩”Linux,(外网)网络都扮演着一个非常重要的角色。试想一下,当我们的Linux无法(外网)网路,这时我们又需要安装一个gcc编译器,各位读者会怎么做?采用源码编译?我想,gcc的编译安装这并不是一般人所能够做到的。采用rpm包安装?那光解决rpm包的依赖性就可能要折腾不少的时间。采用yum,并且把源指向安装光盘?这,确实是可以解决gcc的安装问题。但是,各位读者是否又想过这么一个问题,虽然Linux的安装光盘确实已经为我们提供了不少的软件包,但是一个安装光盘才有多大呀,CentOS 6.4的安装光盘也就只有那个四个来G,这就意味着,光盘并不是万能的,还会有不少的软件我们是无法从光盘中获取的,比如Mono,我们就必须自己从官网中下载一个并自己编译安装。(外网)网络是如此的重要,我们是不能够失去它的,哪怕是在虚拟机中也不例外。

在现实生活中,虚拟机软有非常多的种类,比较有名并且常用的有VM、VirtualBox等。如果各位正在阅读此文的读者是使用VM机作为自己的Linux虚拟机的,那么你们是幸福的,因为VM这款软件做得非常好,它自带的NAT技术一下子就可以帮各位读者解决联网问题,换句话说,只要作为大环境的Windows可以正常的访问网络,那么只需要在VM的网卡设置用选择“nat”选项或者采用“8号网卡(vmnet8)”,安装在VM中的Linux就已经获得了访问(外网)网络的权利了,用户完全无需为了网络的事情而烦恼和折腾。

   但是,既然在本文中是选择了Hyper-V作为虚拟机软件,那就代表着我们就没有VM那么幸福了,我们还得自己折腾一番才能争取到获得网络访问这个权利。

好的,正是进入主题,本文中,我们将讨论研究:

1、本文网络背景的介绍

2、如何在Linux中添加一张新网卡

3、如何实现Linux在Hyper-V中实现与Windows的共享宽带上网

4、TTL检测(路由封杀)网络环境的应对策略

1、当前实验网络背景的介绍

之前在网络中心常驻时,上网账号理论上是用不完的,当虚拟机中Linux想访问网络时,我们所采取的办法是正常的拨号上网,一台Linux要上网就拨一个号,十台Linux上网就拨十个号,通过这个方法,虚拟机中所有的Linux都能够访问网络。不过,这种方法是异常“奢侈”的,并且对于大部分读者来说也是非常不现实的。各位读者更多的则是像我当前的情况,从网络中心中撤离出来,回到宿舍,一共也就那么一个上网账号(还是自己花钱供养的),只能供一个主机同一时间访问网络的需要。

此外,当前的环境除了只有一个宽带账号的限制外,由于这里是一个校园网(包括许多高校的校园网、宽带小区或者部分地区电信、联通宽带用户),它们都会有防蹭网(路由器封杀)的这么一个功能,还真的只是一个宽带账号只能供一个主机访问网络(在这里,VM用户仍然不用担心这个问题)。

想要让Hyper-V中的Linux能够访问网络,各位读者可以通过一以下几个办法:

A、多开几个上网账号(非常耗费金钱)

B、买一个放封的路由(一次投资,多次回报,还是个不错的选择)

C、参考本文中的方法(虽不能保证一定能够成功,不过仍然值得一试,不行再采用前一种办法)

2、为Linux添加一块网卡

正式进入到我们的实验,为了不对当前的Linux环境造成干扰,我们决定采用为Linux添加一张新的网卡来进行我们当前的这个实验。

首先,先确保Hyper-V的“虚拟交换机管理器”中存在一个属性为“内部”适配器(如果没有,则需要自己添加一个,这里采用一张已有的网卡,各位读者不必为了这么长的名字而纠结)。

然后为Linux虚拟机添加一张网卡:

在这里,有几点是需要注意的:

(1)、虚拟交换机中请务必要选择“内部”属性的适配器(在这里选择的是刚刚新建的那张,名为:“Windows phone……”)

(2)、添加硬件时,建议选择“旧版的网络适配器”,以防止一些版本的Linux系统缺少对新版网卡的驱动。

然后启动我们的Linux系统,直接使用“setup”设置网卡:

我们发现刚才新增的网卡是并没有被Linux识别的(在这里,我们使用的是CentOS 6.4 X86_64版本,其他发行版的Linux可能会有所出入),我们需要手动的添加一个网卡配置文件。添加方法非常简单,进入“/etc/sysconfig/network-scripts/”目录,然后执行“cp ifcfg-eth0 ifcfg-eth1”(把eth0的配置文件再拷贝一份到eth1中),然后使用vi编辑器打开刚刚拷贝得到的“ifcfg-eth1”配置文件:

然后对该配置文件作出以下修改:

(1)、把“DEVICE”中由eth0改为eth1

(2)、删除“HWADDR”这一行(删除配置文件记录的网卡硬件地址)

(3)、删除“UUID”这一行(删除配置文件中硬件的唯一标识)

然后保存并退出。

继续使用vi编辑器打开“/etc/udev/rules.d/70-persistent-net.rules”,然后把里面的所有内容清空,保存并退出后重启Linux。

现在再setup就可以看到新添加的网卡了。

好的。就这样,我们成功的为Linux添加了一张新网卡。

3、对Hyper-V中的Linux赋予网络访问的权利

上一个小节中,我们添加了一张“内部”属性的适配器,现在我们把Windows中的宽带连接共享到这张“内部”适配器,让Linux能够共享Windows中的网络。

打开Windows中的“网络连接”:

里面有非常之多的网络适配器,这些大家都不用管,只需要留意图中两个蓝色框起来的适配器,一个为“宽带连接”(也就是Windows中的宽带连接),另一个是“vEthement(Internal Ethernet……)”(也就是在Hyper-V中新建的那一张内部网络适配器)。

在“宽带连接”中点击右键,选择“属性”,打开设置窗口,打开“共享”这个选项卡,勾上“允许其他网络用户通过此计算机的Internet连接来连接”,“家庭网络连接”这个下拉菜单中选择刚刚我们新建的“内部”网络适配器。

点击确定保存退出,断开当前的Windows宽带连接,重新拨号之后,刚才的设置即可生效。

然后继续设置我们的“内部”适配器的IP,如图所示,只要随意的设置一个与宽带连接不同网段的IP即可

然后,在Linux中的eth1网卡设置中采用DHCP的方式获取IP地址(有兴趣的读者可以分别尝试使用静态IP的方式和DHCP的方式获取Linux的IP,然后再对比一下“/etc/resolv”中的不同)

保存退出,并执行“service network restart”重启网络配置

现在尝试一下看能不能解析“www.baidu.com”的域名

嗯,非常好,我们的百度域名能够正常的解析,由于域名解析需要连网到DNS服务器,现在能够看到解析,这就表示,我们的Linux已经能够连网,具有网络访问的能力了。

4、应对拨号服务器的TTL检测

或许有一些读者遇过这么一种情况:现在有一个宽带的上网账号,由于某些原因(比如添置了一些新电脑之类的),想让几台电脑都能够共享这个宽带账号来上网,结果从电脑城中买回来一个路由器,非常正确的设置好相关的参数之后,竟然发现没有办法浏览网页,从路由器中的数据包监控中还发现,数据包不断的发送出去,却一个数据包都没有办法接收到。把路由器拿回电脑城中,路由器在哪里又能够正常的使用。

如果各位读者遇到了这种现象,并且排除了路由器故障这一问题之后,那就只能证明了一件事:当前的网路环境中存在对路由器使用的封杀,也就是在拨号服务器中有TTL的检测(当然,想要封杀路由器的使用方法有很多种,比较常用而且比较流行的办法就是采用TTL的检测,在本文中也是只针对TTL检测采取解决措施)。

关于什么是TTL值,各位读者可以用网上搜索详细的资料。在这里我只简单的解说一下:我们的数据包在网络中的传输,从一个网段的网络传输到另外一个网段的网络,这是需要路由器在其中发挥作用的,但是一个由多网段所组成的网络往往是非常庞大的(比如Internet),如果数据包没有一个传输次数的限制,那么就有可能发生这么一个事件:“数据包不断的在网络中传来传去,走遍了整个网络,并且还不断的重复这个动作”。这样,不仅使得网络的拥塞程度一下子大增甚至把整个网络挤垮,并且发送这个数据包的主机还无法获知这个数据包是否可达(也就是是否找到接收方或者接收方到底是否存在)。因此,为了解决这么一个问题,我们在发送数据包的时候,都会在数据包中设置一个TTL值,每当这个数据包经过一个路由器进行转发,数据包中的TTL值就会减1,直到数据包中的TTL值变为0,路由器就会自动的认为这个数据包是不可达的并自把这个数据包丢弃。

针对TTL值的这一个特性,只要在拨号服务器中增加一个TTL值的检测,只要用户是采用路由器上网的(具有放封功能的或者刷了放封固件的除外),到达拨号服务器中的数据包的TTL值就不是默认的TTL值(Windows默认的TTL为128,Linux默认的TTL值为64),如果在拨号服务器中再做这么一个小动作:“把所有不是默认TTL值的数据包全部丢弃”,这样就达到了对路由器封杀的效果。也就是各位读者在路由器的数据包监测中所看到的不断有数据包发出却一个数据包都没有办法收到的原因。

在本文中所介绍的Hyper-V共享上网中就遇到了这么一个问题(不一定所有读者都会遇到),比如我想从网上下载一个东西:

虽然DNS能够解析域名,但是却无法从网上下载东西。造成此现象的其中的原因就是:共享上网的原理跟使用路由器一样,而当前的校园网对路由器的使用有封杀。

要解决TTL检测并封杀路由器使用的方法比较直接,那就是修改数据包从网卡送出时的TTL值。

针对本文中的配置,我用excel画了一个简单的原理图,当虚拟机中的Linux通过eth1发送出一个数据包,该数据包会被发送到“内部”适配器中,然后“内部”适配器会充当一个路由的功能,把数据包转发到宽带连接中,接着,宽带连接也同样的充当同样的功能,把数据包转发出去。这里就存在着一个简单的算术题:“Windows默认的TTL值为128,也就是从宽带连接中出来的数据包必须是128的才不会被拨号服务器丢弃,而数据包每经过一次路由的转发TTL值就会减1,问从eth0中出来的数据包是多少时数据包才不会被拨号服务器丢弃?”聪明的读者一定能给很快的计算得出答案——130!!!

好的,既然我们已经计算出合适的TTL值,我们二话不多说的去设置Linux的数据包TTL值。我们只需使用vi编辑器打开“/etc/sysctl.conf”,然后再最后的地方添加上这么一句“net.ipv4.ip_default_ttl=130”,然后保存退出并重启网络。

这样,我们就可以突破了当前网络对路由器使用的封杀了。

瞧,这就可以下载东西了。

同时,这里还有一项需要读者们非常注意的地方:要时时刻刻的警惕seLinux和iptables所产生的作用,在本文中,如果这两项开启了的话,同样是无法下载东西的。各位读者要切记了。

至此,Linux(CentOS)如何在Hyper-V中实现与Windows宽带共享上网就到此结束了。

如何在Linux发行版中安装并启用Hyper-V集成服务

如何在Linux发行版中安装并启用Hyper-V集成服务

微软公司的开发人员们已经设计出多种组件,旨在帮助运行在Hyper-V服务器上的虚拟机系统实现性能提升。这些组件被囊括在集成服务当中。

尽管Hyper-V服务器本身已经相当智能,足以自行为Windows虚拟机安装并启用集成服务,但对于那些运行着Linux发行版的虚拟机而言、我们仍然需要通过手动方式安装并启用集成服务。在今天的文章中,我们将一同了解如何在运行着Linux发行版的虚拟机当中安装并启用集成服务。

Linux集成服务,有时候也会被简称为LIS,提供两大组件类型:驱动程序与服务。驱动程序在提升Linux虚拟机性能表现方面扮演着重要角色,而服务的设计目的则用于执行特殊作业。

举例来说,VMBUS驱动程序充当着通信通道,旨在改善不同虚拟机系统之间通信时的性能表现。而“Time Sync”(即时间同步)服务则有助于对Hyper-V主机当中的时间加以同步。

当Linux集成服务部署完毕之后,运行着Linux发行版的虚拟机系统将能够使用诸如实时迁移、巨型帧、VLAN标签与集群、对称多处理(简称SMP)支持、静态IP注入、VHDX调整、虚拟光纤通道以及实时虚拟机备份等功能。

目前,微软已经运行用户将多种Linux发行版作为虚拟机系统运行在Hyper-V服务器之上。具体来讲,微软为以下Linux发行版提供对应的集成服务组件:

•红帽企业Linux(简称RHEL) 5.5-5.8, 6.0-6.3 x86与x64版本

• CentOS 5.5-5.8, 6.0-6.3 x86与x64版本

• SUSE Linux Enterprise Server 11 SP2或者SP版本3

• Open SUSE 12.1版本

• Ubuntu 12.04, 12.10, 13.04与13.10版本

• Oracle Linux 6.4版本

在我们开始讲解Linux集成服务的安装与启用方式之前,请大家首先注意以下几点:

1. LIS的安装与启用对Linux发行版有着多项要求。

2.某些Linux发行版自身已经安装有LIS。对于这些发行版,大家只需要启用即可在Hyper-V中发挥其全部功能特性。

在已经安装了LIS驱动程序与服务的Linux发行版中启用集成服务

请大家通过以下步骤在已经安装有LIS驱动程序与服务的Linux发行版中将其启用。在下面的例子中,我们选择的是Ubuntu 12.04。

1.第一步是利用以下命令编辑/etc/initramfs-tools文件夹下的“modules”文件:

1 sudo vi/etc/initramfs-tools/modules

2.在vi编辑器中,找到该文件的最后一行并使用(I)插入命令加入以下命令行:

2 hv_vmbus

3 hv_storvsc

4 hv_blkvsc

5 hv_netvsc

3.接下来按下Esc键并利用“:x”命令保存文件。

4.然后通过以下命令对“modules”文件重新进行初始化:

6 sudo update-initramfs–u

5.最后,通过在Shell中执行以下命令重新启动虚拟机系统:

7 sudo shutdown-r now

6.客户虚拟机重新启动完成之后,LIS驱动程序与服务都将在系统中得到注册。重新启动之后,大家可以通过以下命令确认LIS驱动程序与服务是否已经安装完毕:

Lsmod

通过这项命令,我们应该能够看到LIS驱动程序与服务被包含在列表当中。大家需要在其中找到hid_hyperv, hv_netvsc, hv_utils, hv_storvc以及hv_vmbus,有它们在LIS才能被正确启用。

为没有预先安装LIS驱动程序与服务的Linux发行版安装集成服务

在以下情况中,大家可能发现自己需要为Linux发行版安装Linux集成服务:

1. Linux发行版并未预先集成LIS。

2. Linux发行版当中所包含的LIS并非微软官方网站上提供的最新版本。目前的LIS版本为3.5。

由于Linux只能利用RPM文件进行安装,因此LIS ISO镜像文件提供了必要的RPM文件以安装或者对现有LIS组件进行更新。

LIS安装流程的第一步是利用Hyper-V管理器将LIS ISO导入虚拟机系统,而后执行一系列命令以完成安装,具体步骤如下所示:

1.将LinuxICv35.ISO文件指向Linux虚拟机系统。

2.执行以下命令以启动该ISO文件:

8# mount/dev/cdrom/media

3.以root权限登录并对相关目录作出变更——具体路径视发行版类型而定:

对于 RHEL/ CentOS 5.5:# cd/media/CDROM/RHEL55

对于 RHEL/ CentOS 5.6:# cd/media/CDROM/RHEL56

对于 RHEL/ CentOS 5.7:# cd/media/CDROM/RHEL57

对于 RHEL/ CentOS 5.8:# cd/media/CDROM/RHEL58

对于 RHEL/ CentOS 6.0, 6.1, 6.2:# cd/media/CDROM/RHEL6012

对于 RHEL/ CentOS 6.3:# cd/media/CDROM/RHEL63

4.接下来运行LIS ISO所提供的脚本以安装LIS:

对于 RHEL/ CentOS 5.5:#./install_rhel55.sh

对于 RHEL/ CentOS 5.6:#./install_rhel56.sh

对于 RHEL/ CentOS 5.7:#./install_rhel57.sh

对于 RHEL/ CentOS 5.8:#./install_rhel58.sh

对于 RHEL/ CentOS 6.0, 6.1, 6.2:#./install.sh

对于 RHEL/ CentOS 6.3:#./install.sh

5.最后,大家需要重新启动Linux虚拟机,这样LIS组件就会完成初始化并成功注册。

重新启动之后,利用“lsmod”或者“Modinfo”命令检查LIS驱动程序与服务的当前状态。

更新LIS

微软提供了Linux发行版中更新LIS驱动程序所必需的升级脚本。大家可以按照前面提到的步骤加载ISO文件,并根据Linux发行版进行相关目录调整之后执行“Upgrade.sh”脚本。

该脚本完成LIS驱动程序与服务的安装之后,我们需要重新启动该虚拟机系统,这样LIS驱动程序与服务将被注册至Linux内核当中。

不支持功能

截至目前,以下功能特性尚不受Linux集成服务的支持:

•动态内存热添加支持

• Trim功能支持

• TCP减负

• vRSS

Linux虚拟化实现及技术Hyper简介linuxhyper

Linux虚拟化实现及技术:Hyper简介

Linux是一种开源操作系统,以它的可靠性和跨平台功能著称。由于这些性能,Linux也被广泛应用于虚拟化环境中。虚拟化让用户能够在一个安卓的物理服务器上运行多个虚拟主机,构建了一个虚拟环境。这实现了资源共享,节省了成本,提高了可扩展性,这被称为虚拟化。

Hyper是一款受欢迎的开源Linux虚拟化解决方案,它能够让用户在物理服务器上创建安全的虚拟机实例,使用这些实例分发完整的Linux环境。Hyper的服务器实现支持多种操作系统,例如CentOS、Fedora、Debian、Ubuntu和RedHat等。Hyper的客户端解决方案也适用于Windows,Mac OS和Linux等操作系统。

通过使用Hyper,用户可以更加容易地在物理服务器上安装和管理多个虚拟机。Hyper支持它的客户端安装Linux环境,然后使用Hyper在不同的操作系统中分发虚拟机实例。Hyper支持虚拟机和物理服务器之间的网络集成,它还为客户端设备提供了安全管理和端口隔离等功能。

Hyper还提供了一个开源API,用户可将Hyper集成到自己的应用程序中,开发自定义解决方案。它还可以跨多个操作系统提供全面的支持,使得虚拟化环境的管理更加简单便捷。

Hyper的管理界面易于使用,用户可以使用GUI操作管理虚拟化环境,或者直接在Linux终端中运行命令行。此外,Hyper的API使得它更容易与其他虚拟化环境集成,加快应用程序的部署和运行速度。

Hyper也有一些优势,例如高性能,它比一般虚拟化解决方案更具有优势,其低延迟使程序更快地从虚拟机中运行,可以提供更好的性能和安全性。Hyper还支持自动化,使管理者能够实现虚拟化的与复杂的自动化工作流程。

总之,Hyper是一个强大的开源虚拟化解决方案,它可以提供最高性能,使用它来节省成本和提高可扩展性。此外,Hyper还可以支持多个操作系统,其友好的图形管理界面使操作变得简单易行,而可定制的API则可以对虚拟化环境进行快速编程实现。

阅读剩余
THE END