PVE 安装 LEDE 和 群晖 6.2(附改网卡e1000e详细步骤)
准备
- 安装镜像盘:U盘 需要大于1G
- pve系统默认需要的占用空间 > 7G(系统) + 2G(swap);剩余作为存储空间;也可使用U盘作为硬盘安装
- 主板如果都支持直通(vt-d),那最好开启直通: BIOS开启vt-d,部分主板默认开启的
开始
- UEFI启动安装盘。一路下一步,记得网关自己修改为路由的网关
直通
硬件直通需要主板和CPU 都支持 VT-d。
CPU:具体去intel 官网查询相关参数。
主板:某些主板芯片intel官方文档说明是不支持VT-d,但是厂商会魔改让其成支持VT-d,比如某些华擎B85支持,微星某些H87更新BIOS也有VT-d。
#修改启动
nano /etc/default/grub
找到:GRUB_CMDLINE_LINUX_DEFAULT="quiet"
# 修改为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
#amd cpu改为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on"
#更新一下:
update-grub
执行dmesg | grep -e DMAR -e IOMMU,如果没有输出,则表明存在问题。极有可能是bios设置的问题,需要启动cpu的vt-D支持。
查看一下/etc/modules-load.d/modules.conf
#把以下内容添加进去,如果没有的话
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
重启即可开启直通
配置
- 访问https://[你的IP]:8006 ,必须是http且端口为8006,chrome 可能不能访问,safari信任证书后可以访问
- 创建一个虚拟机,最好标注名字,然后分离/删除不必要的硬件
- ssh上传img到pve,mac用cyberduck,img可以是Lede或者群晖引导的
- 转换普通img为pve可用的硬盘镜像
# 100是虚拟机id,创建虚拟机时,id默认是从100开始的
root@pve:~# qm importdisk 100 ./xxx.img local-lvm
#显示如下,则成功
Rounding up size to full physical extent 108.00 MiB
Logical volume "vm-100-disk-0" created.
- 选择编号100 的虚拟机 硬件-未使用的硬盘X ,必须选择SATA(不能学则IDE或者其它类型),编辑保存。
- 注意引导顺序不对可能导致找不到启动盘而无限重启
关于虚拟网卡的选择
http://www.cnovirt.com/archives/382
证书
如果有自己的域名
- 证书
mac系统先安装brew 安装 cerbot
certbot --manual --preferred-challenges dns certonly --config-dir ~/Documents/letsencrypt --logs-dir ~/Documents/letsencrypt --work-dir ~/Documents/letsencrypt
# 去~/Documents/letsencrypt 找证书
linux系统
# 任意主机(linux)都可以获取到证书
wget https://dl.eff.org/certbot-auto
chmod a+x ./certbot-auto
./certbot-auto --help
# 通过验证域名dns 发放证书,不需要80/443端口
./certbot-auto --manual --preferred-challenges dns certonly
#按提示一路操作后,会得到证书(90天后失效,需要重新验证)
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/xxx/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/xxx/privkey.pem
#进入pve证书配置界面,上传证书即可通过域名访问
硬盘直通
前话
- PVE 其实最多只能设置 6个SATA 硬盘,来源官方https://forum.proxmox.com/threads/there-is-now-a-limit-of-virtio-devices-drives.9782/ 原话
You can have 4 IDE disks, 14 SCSI disks, 16 VIRTIO disks and 6 SATA disks (= 40 disks).
I really think this is enough.
但是下面也有人说可以直通SAS扩展卡或者阵列卡实现挂载更多硬盘。有些主板是板载扩展卡的可以尝试直通试试。
- 群晖可否识别的CSI 控制器
SCSI控制器|支持否|备注
|--- |--- |---|
LSI 53C895A | O
LSI 53C810 | O
VirtIO SCSI | O
VirtIO SCSI single | O | 不能识别SCSI 13
MegaRaid SAS 8708EM2 | X
VMWare PVSCIS | X - PVE不支持 软阵列,只支持硬阵列。比如大部分家用主板板载的支持的阵列都是软阵列 参考https://forum.proxmox.com/threads/raid-not-detected.2437/,所以即使你在主板上做好阵列,pve也会被识别为单个硬盘。就问你气不气...
开始
# 列出硬盘,并记录id
ls /dev/disk/by-id
...
ata-WDC_WD30EURX-64HYZY0_WD-WCC4N6ZAHCE2
ata-WDC_WD30EURX-64HYZY0_WD-WCC4N6ZAHCE2-part1
ata-WDC_WD30EURX-64HYZY0_WD-WCC4N6ZAHCE2-part2
ata-WDC_WD30EURX-64HYZY0_WD-WCC4N6ZAHCE2-part3
ata-WDC_WD30EURX-64HYZY0_WD-WCC4N7Z1KK95
ata-WDC_WD30EURX-64HYZY0_WD-WCC4N7Z1KK95-part1
ata-WDC_WD30EURX-64HYZY0_WD-WCC4N7Z1KK95-part2
ata-WDC_WD30EURX-64HYZY0_WD-WCC4N7Z1KK95-part3
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NCTYTJ7X
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NCTYTJ7X-part1
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NCTYTJ7X-part2
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NCTYTJ7X-part3
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSK72U
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSK72U-part1
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSK72U-part2
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSK72U-part3
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSKD3E
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSKD3E-part1
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSKD3E-part2
ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSKD3E-part3
...
nvme-KINGBANK_KP230_240GB_I24111J000630
控制台命令
qm set 101 -sata[硬盘号] /dev/disk/by-id/[你的硬盘id]
如下
#1
qm set 101 -sata1 /dev/disk/by-id/ata-WDC_WD30EURX-64HYZY0_WD-WCC4N6ZAHCE2
#2
qm set 101 -sata2 /dev/disk/by-id/ata-WDC_WD30EURX-64HYZY0_WD-WCC4NCTYTJ7X
#3
qm set 101 -sata3 /dev/disk/by-id/ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSK72U
#4
qm set 101 -sata4 /dev/disk/by-id/ata-WDC_WD30EURX-64HYZY0_WD-WCC4NHHSKD3E
#5
qm set 101 -sata5 /dev/disk/by-id/ata-WDC_WD30EURX-64HYZY0_WD-WCC4N7Z1KK95
# 如果已经设置sata0 为群晖引导,就不要把再设置sata0了 。
qm set 101 -ide0 /dev/disk/by-id/ata-KING_SHARE_200016G_E083MSRC1064
# 下面命令会失败, 因为只能设置6个sata,也就是0~5
qm set 101 -ide1 /dev/disk/by-id/nvme-KINGBANK_KP230_240GB_I24111J000630
完成后,PVE界面可见对应硬盘。
PS:其实我认为下面的操作感觉不是真正一样上的直通,因为并没有直通PCI控制器
修改 网卡intel网卡 e1000 为e1000e(群晖6.2.2才能识别)
# 101为虚拟机id,根据自己实际情况修改
#首先要新建虚拟机并且必须网卡选择e1000.(不需要启动)
qm showcmd 101
# 记录输出值,只需要注意最后一个 “-netdev” 开始的字段,如下
/usr/bin/kvm -id 101 -name DS3617xs ... ... -netdev 'type=tap,id=net0,ifname=tap101i0,script=/var/lib/qemu-server/pve-bridge,downscript=/var/lib/qemu-server/pve-bridgedown' -device 'e1000,mac=00:11:32:33:44:55,netdev=net0,bus=pci.0,addr=0x12,id=net0' -machine 'type=pc'
# 按下方例子删除一些无用字段,行首添加“args:” ,修改“e1000” 为 “e1000e”,保存(建议用vscode)
args: -netdev 'type=tap,id=net0,ifname=tap101i0' -device 'e1000e,mac=00:11:32:33:44:55,netdev=net0,bus=pci.0,addr=0x12,id=net0,bootindex=300'
# 修改id 为101的配置文件
nano /etc/pve/qemu-server/101.conf
# 只需要首行插入一行 刚才修改的字段,注意要换行,不要和原本的配置文件粘在一起了
# 去pve 对应虚拟机-硬件界面删除E1000网卡。然后启动虚拟机,如果不报错误,应该就会有网络了。
# (硬件-选项界面不会显示E1000e网卡的,如果启动成功后实际是加载了虚拟网卡的)