我有一个新的运行在Hyper-V上的Debian 6.0.0(Squeeze)服务器,我试图将合成驱动程序加载到内核(2.6.32-5-amd64)中。 我所做的研究表明,Linux集成驱动程序应该已经被embedded到.32和更大的内核树中,但我似乎无法在正常的/lib/modules/2.6.32.5-amd64/kernel/目录中find它们。 modprobe也无法find并加载模块到内核空间。
我正在寻找以下内核模块:
有谁知道在哪里可以findHyper-V Linux集成驱动程序的内核模块? 他们是否被转移到自己的包? 我是否需要重新编译内核并手动构build它们?
grep CONFIG_HYPERV /boot/config-2.6.32-5-amd64显示CONFIG_HYPERV is not set 。 看来,Debianselect不build立这些模块。 我正在读这篇文章,有几篇文章提到MS没有得到很好的支持,有些人想放弃它。
我看了看,hv源码在2.6.32内核源码包(drivers / staging / hv)中。 你可以做的一件事是安装内核源码包和内核包工具。 ( apt-get install apt-get install linux-source-2.6 libncurses-dev kernel-package )提取源文件,将/boot/config-2.6.32-5-amd64复制到.config,使用make menuconfig并启用hyperv驱动。 然后用make-kpkg编译你的内核。
对于版本大于3.0的内核,这些驱动程序不再处于暂存状态。 这里描述的新地点: http : //dietrichschroff.blogspot.de/2013/03/hyper-v-compile-linux-kernel-with.html
为了将Hyper-V模块安装在Hyper-V中新的Debian 6上,您需要编译自己的内核。 这是我做到的
http://blogs.technet.com/b/abeshkov/archive/2011/03/17/hyperv_5f00_debian.aspx
我认为这也适用于Debian 5和Ubuntu系统。
我已经能够在networking驱动程序方面取得一些成功,但只有在hyperv控制台(而不是scvmm)上创build虚拟机时才是如此。 在HyperV中,为networking适配器typesselect“传统适配器”工作..我能够获得TCP连接到我的VM。 我没有强调连接性,也没有testing它的稳定性,但是它可以开箱即用。 我在网上find了一个链接,给了我这个方法(目前没有引用,但我相信你可以find它..)
我的版本的scvmm没有列出作为networkingcarytypes的“Legacy Adapter”,所以我不能在安装后不加载驱动程序的情况下使其工作。
只是为了你的笔记
就像提醒一下:从2.6.33开始,我一直在使用适用于Linux的Hyper-V模块,而现在使用hv模块的结果却令人惊讶。 如果你正在使用一个主线内核,那么从2.6.39开始就会得到更好的结果,在这个结果中,很多变化使得它们非常稳定。
我劝阻任何人在旧内核中使用mainline内核的hyper-v模块。 值得注意的例外是MS提供的RHEL和SLES,它们是后期版本的后端,并且工作得很好。