前面介绍过一个PVE下给群晖添加E1000e网卡的教程:《在ProxmoxVE (PVE)系统下给群晖添加E1000e网卡,让它支持DSM最新版本》,但是这个方法仅对某个虚拟机而已。今天介绍另外一种方法,把E1000e网卡添加到PVE系统里面,这样在新增虚拟机的时候,就可以直接选择。
给ProxmoxVE (PVE)的网络模型添加E1000e网卡,让你的DSM支持最新版本(2022年2月11日更新)
前面介绍过一个PVE下给群晖添加E1000e网卡的教程:《在ProxmoxVE (PVE)系统下给群晖添加E1000e网卡,让它支持DSM最新版本》,但是这个方法仅对某个虚拟机而已。今天介绍另外一种方法,把E1000e网卡添加到PVE系统里面,这样在新增虚拟机的时候,就可以直接选择。
本教程在PVE6.09和PVE7.1-7下测试通过,其他的PVE版本请自行测试。需要注意的是:修改有风险,修改有风险,修改有风险,请自觉做好文件备份!
具体操作如下:
一、电脑打开WinSCP,以root用户登录PVE,找到 /usr/share/perl5/PVE 目录下的 QemuServer.pm 文件,用Notepad++编辑(不要用记事本),大约在PVE6.09的第837行(PVE7.1-7的第885行)找到“my $nic_model_list = [”这行内容:
找到以下内容(这里的代码是PVE6.09的版本,如果是PVE7.X的版本则是每个型号显示成一行):
my $nic_model_list = ['rtl8139', 'ne2k_pci', 'e1000', 'pcnet', 'virtio','ne2k_isa', 'i82551', 'i82557b', 'i82559er', 'vmxnet3','e1000-82540em', 'e1000-82544gc', 'e1000-82545em'];
需在’e1000’后面增加一个’e1000e’(按代码格式填写并加上逗号,如果是PVE7.X版本则是在’e1000’的下面增加一行’e1000e’,下同):
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++编辑,大约在PVE6.09的第1813行(PVE7.1-7的第642行)找到“if ((match_res = p.match(”这行内容:
把原内容:
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) {
需在’e1000’后面增加一个’e1000e’(不要复制以下面代码去替换你的文件,只需要在对应的位置增加代码就行了):
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) {
确认一下修改无误后保存退出;
三、在当前文件向下拉,大约在PVE6.09的第4555行(PVE7.1-7的第6053行)处找到“[‘e1000’, ‘Intel E1000’],”这行内容:
把原内容:
['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”这个网卡。来一张PVE7.1-7系统的图,证明PVE7.X也是可以增加的。
本文摘自:https://wp.gxnas.com/4751.html,感谢原作者