今天介绍一种方法,把E1000e网卡添加到PVE系统里面,这样在新增虚拟机的时候,就可以直接选择。
本教程在PVE6.09下测试通过,其他的PVE版本请自行测试。需要注意的是:修改有风险,修改前请自觉做好文件备份!
具体操作如下:
一、电脑打开WinSCP,以root用户登录PVE,找到 /usr/share/perl5/PVE 目录下的 QemuServer.pm 文件,用Notepad++编辑,大约在837行找到这行内容:
my $nic_model_list = ['rtl8139', 'ne2k_pci', 'e1000', 'pcnet', 'virtio','ne2k_isa', 'i82551', 'i82557b', 'i82559er', 'vmxnet3','e1000-82540em', 'e1000-82544gc', 'e1000-82545em'];
改成:
my $nic_model_list = ['rtl8139', 'ne2k_pci', 'e1000', 'e1000e', 'pcnet', 'virtio','ne2k_isa', 'i82551', 'i82557b', 'i82559er', 'vmxnet3','e1000-82540em', 'e1000-82544gc', 'e1000-82545em'];
确认一下修改无误后保存退出;
二、找到 /usr/share/pve-manager/js 目录下的 pvemanagerlib.js 文件,用Notepad++编辑,大约在1813行找到这行内容:
if ((match_res = p.match(/^(ne2k_pci|e1000|e1000-82540em|e1000-82544gc|e1000-82545em|vmxnet3|rtl8139|pcnet|virtio|ne2k_isa|i82551|i82557b|i82559er)(=([0-9a-f]{2}(:[0-9a-f]{2}){5}))?$/i)) !== null) {
改成:
if ((match_res = p.match(/^(ne2k_pci|e1000|e1000e|e1000-82540em|e1000-82544gc|e1000-82545em|vmxnet3|rtl8139|pcnet|virtio|ne2k_isa|i82551|i82557b|i82559er)(=([0-9a-f]{2}(:[0-9a-f]{2}){5}))?$/i)) !== null) {
三、在当前文件(pvemanagerlib.js)向下拉,大约在4555行处找到这些内容:
['e1000', 'Intel E1000'], ['virtio', 'VirtIO (' + gettext('paravirtualized') + ')'], ['rtl8139', 'Realtek RTL8139'], ['vmxnet3', 'VMware vmxnet3'] ]
改成:
['e1000', 'Intel E1000'], ['e1000e', 'Intel E1000e'], ['virtio', 'VirtIO (' + gettext('paravirtualized') + ')'], ['rtl8139', 'Realtek RTL8139'], ['vmxnet3', 'VMware vmxnet3'] ]
确认一下修改无误后保存退出;
四、关掉WinSCP,回到PVE管理界面,关掉所有的虚拟主机,重启PVE;
五、宿主机重启完成以后重新登录PVE,这时我们去新建一个PVE的虚拟机,配置到网络模型的时候,就会发现比之前多出“E1000e”这个网卡,能不能好好的把DSM升级到最新版本就看大家了。
官方QQ群号码:922069959