为什么选择PVE

先对目前主流虚拟化平台做个横向对比,如表所示:

虚拟化平台底层技术优点缺点
Proxmox VEKVM&LXC开源、个人免费、基于Linux可玩性高、硬件支持广泛、社区活跃Web界面功能有限,高阶配置需要使用命令行。
ESXiVMkernel自研内核直接跑在物理硬件上,高性能、稳定性好系统封闭、缺少社区支持、免费版本功能缺失
UnraidKVM自带NAS存储、Docker、图形化管理,直通配置简单缝合怪,主打存储但写入性能很差,引入组件过多影响系统稳定性,还只能装在U盘里。

综合考量下,还是PVE最适合我。

安装PVE

1、从官网下载ISO镜像

https://www.proxmox.com/en/downloads/proxmox-virtual-environment/iso

2、通过工具烧录至U盘

Windows:可以使用rufus,下载地址 https://rufus.ie/downloads/

macOS/Linux:使用dd指令 sudo dd if=/path/to/proxmox.iso of=/dev/<DEVIER> bs=4M status=progress

3、选择U盘启动

按照引导安装至硬盘即可,这里不再赘述。

配置PVE

1、设置网关&IP

vim /etc/network/interface

编辑以下内容:

// 指定pve的ip为192.168.0.230
// 设置gateway为当前路由器的网关地址192.168.0.1
iface vmbr0 inet static
address 192.168.0.230/24
gateway 192.168.0.1

重启networking服务生效修改

systemctl restart networking

打开https://192.168.0.230:8006/,进入PVE管理界面。

2、删除local-lvm分区(可选)

在shell执行:

lvremove pve/data

lvextend -l +100%FREE -r pve/root

在数据中心-存储中删除local-lvm分区,并编辑local分区的内容为全选,使该分区作用所有模块。

至此,基本配置已经完成,后面可以按照自己喜好创建虚拟机。

创建Win10虚拟机

1、下载Windows10安装镜像

https://www.microsoft.com/zh-cn/software-download/windows10ISO

2、准备Windows VirtIO驱动ISO镜像(可选)

https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio

3、正常创建虚拟机,CD-ROM选择Windows10的安装镜像,其余参数按照自己喜好进行设置

注意💡:如果物理硬盘是SSD则需要选择虚拟磁盘为VirtIO Block,这将能得到最大化的读写速度。如果在安装Windows过程中识别不了硬盘,需要在安装界面中加载上面的VirtIO驱动ISO。

以下贴出一份自己用的conf,其中包含了GPU直通,大家可以做个参考:

agent: 1
args: -set device.hostpci1.addr=0x6 -device vfio-pci,host=00:02.0,addr=0x4,x-igd-gms=1,x-igd-opregion=on,romfile=vbios.rom
bios: ovmf
boot: order=sata2
cores: 6
cpu: host
hookscript: local:snippets/hooks-igpupt.pl
hostpci0: 0000:00:1f.3
hostpci1: 0000:01:00.0,mdev=nvidia-66
hotplug: usb
machine: pc-i440fx-8.1
memory: 8192
meta: creation-qemu=9.0.0,ctime=1722457747
name: Windows10
net0: virtio=BC:24:11:A4:1B:11,bridge=vmbr0
numa: 1
ostype: win10
sata2: local:102/vm-102-disk-0.qcow2,size=256G,ssd=1
scsihw: virtio-scsi-single
smbios1: uuid=7258d370-2751-4718-88f6-c5fd1f61b70c
sockets: 1
usb0: host=0a12:0001
usb1: host=0c45:0828
usb2: host=2-3,usb3=1
usb3: host=18d1:4ee7
vmgenid: 91eb9048-5a7c-48a7-8ea4-640db8cd0960

创建群晖虚拟机

1、下载黑群晖引导系统:RR

https://github.com/RROrg/rr/releases

2、创建Linux虚拟机用于安装群晖

配置参数按照自己喜好进行设置,记住虚拟机ID,后面写入RR引导需要用到。

3、将rr的img镜像导入虚拟机磁盘

qm importdisk <VMID> /var/lib/vz/template/iso/rr.img local

导入成功后,会在虚拟机硬件配置里面显示为未使用磁盘,双击以SATA磁盘使用。

4、直通SATA总线,使用物理硬盘

同样贴出一份自己用的conf,大家可以做个参考:

boot: order=sata0
cores: 4
cpu: host
hostpci0: 0000:00:17
ide2: none,media=cdrom
memory: 4096
meta: creation-qemu=8.1.5,ctime=1722116253
name: DSM7
net0: virtio=BC:24:11:8A:BA:E6,bridge=vmbr0,firewall=1
numa: 0
ostype: l26
sata0: local:100/vm-100-disk-0.raw,size=3585M
scsihw: virtio-scsi-single
smbios1: uuid=1a24915d-1611-46ec-b5c0-796e401b19ad
sockets: 1
vmgenid: 45fbb699-3d79-4a17-9913-6ae8ca9982af

创建iStore虚拟机

1、准备iStore镜像

下载地址:https://openwrt.ai

镜像版本:GENERIC-SQUASHFS-COMBINED.IMG.GZ

2、创建Linux虚拟机用于安装iStore

同样配置参数按照自己喜好进行设置,旁路由而已配置不需要太高。

记住虚拟机ID,后面写入iStore的img镜像时需要用到。

3、将iStore的img镜像导入虚拟机磁盘

qm importdisk <VMID> /var/lib/vz/template/iso/openwrt-x86-64-generic-squashfs-combined.img local

双击以SATA磁盘使用,引导为启动磁盘后就可以开机了。

4、启动成功后,执行quickstart修改IP地址

同样贴出一份自己用的conf,大家可以做个参考:

boot: order=scsi0;net0
cores: 1
cpu: x86-64-v2-AES
memory: 512
meta: creation-qemu=8.1.5,ctime=1722168631
name: iStoreOS
net0: virtio=BC:24:11:59:96:E8,bridge=vmbr0,firewall=1
numa: 0
onboot: 1
ostype: l26
scsi0: local:101/vm-101-disk-0.raw,iothread=1,size=1022M
scsihw: virtio-scsi-single
smbios1: uuid=9c721883-9a50-446c-951d-e6113ba1e335
sockets: 1
vmgenid: d1dc5ccb-2207-4095-a15a-1bde931eb97d

创建黑苹果虚拟机

1、准备KVM平台的OpenCore黑苹果引导

https://github.com/thenickdude/KVM-Opencore/releases

2、准备macOS系统镜像

镜像文件:MacOS_Catalina_ISO_10.15.7.iso

我主要是为了开发低版本iOS的越狱插件,因此需要安装低版本的macOS。其他人可选择新版系统安装。

3、创建Other虚拟机,设置引导顺序

注意💡:OpenCore的引导优先级最高,其次就是macOS系统镜像。同时保证配置文件中ide的两行media=cdrom改为cache=unsafe。只要配置正确,启动虚拟机就能正常进入到安装流程。

4、编辑<VMID>.conf,设置apple osk

osk可以网上找找,很容易就能找到。

同样贴出一份自己用的conf,我物理机用的intel的CPU,大家可以做个参考:

agent: 1
args: -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -global nec-usb-xhci.msi=off -global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off -cpu host,vendor=GenuineIntel,+invtsc,+hypervisor,kvm=on,vmware-cpuid-freq=on
bios: ovmf
boot: order=ide2;virtio0;net0
cores: 4
cpu: Penryn
efidisk0: local:105/vm-105-disk-0.qcow2,efitype=4m,size=528K
ide2: local:iso/OpenCore-v21.iso,cache=unsafe,size=150M
machine: q35
memory: 8192
meta: creation-qemu=9.0.0,ctime=1724183296
name: macOS
net0: vmxnet3=BC:24:11:5E:C1:73,bridge=vmbr0,firewall=1
numa: 0
ostype: other
scsihw: virtio-scsi-single
smbios1: uuid=090eb4da-5de7-49e2-be89-381754f183bc
sockets: 1
usb0: host=05ac:12a8
vga: vmware
virtio0: local:105/vm-105-disk-1.qcow2,cache=unsafe,iothread=1,size=100G
vmgenid: 74502f47-9a81-4f50-a8c4-dfc174d45331

高阶用法


生きて生きて生きて生きて生きて。