前言:
本文主要介绍Proxmox VE 6.3的安装配置和利用Clover实现NVME SSD引导。
最近发现运行了2年的All in one小主机硬盘出现了坏道,于是萌生了重装+升级的想法,为了日后易于查找记录一下过程。
HTPC硬件平台(升级后) J1800+16G RAM+128G NVME SSD + 500G机械
Proxmox VE 6.3
PVE的安装应该大致就是官网下载iso,然后balenaEtcher写入U盘引导安装。值得注意的是,因为是把安装到NVME SSD,所以用UEFI+GPT引导会比较方便。
为了最大化利用NVME SSD空间,安装PVE的时候需要分区大小需要设置一下。
1 | swap 4G 交换空间,由于内存有16G,J1800弱鸡的性能估计用不到swap,但是安装程序规定最少4G。 |
Clover引导
Clover是著名的黑苹果引导工具。本质上是一个模拟UEFI的软件,利用Clover可以实现老主板支持UEFI引导,免刷BIOS NVME SSD引导。我这里 J1800的小主板是支持UEFI的,但是没有UEFI里面NVME的驱动,无法从NVME SSD引导系统。刷BIOS固然是可以实现,但是借助Clover来引导比刷BIOS更方便,只需要一个小U盘就足够了。
制作方法是参照B站大佬lwyx2017 的,他说得比较细致。大致过程就是
- 下载最新版的CloverBootloader用 Clover-xxxx-X64.iso.7z那个文件。
- 用Boot Disk Utility 这个工具把Clover写入到U盘,这个工具里面也可以自动从github下载到最新版本的CloverBootloader。其实原理就把U盘格式化成FAT32的分区,然后里面有个EFI的文件夹,是UEFI的标准引导方式。
- 打开U盘,找到目录EFI\CLOVER\drivers\off下面的NvmExpressDxe.efi那个文件,把他复制到EFI\CLOVER\drivers\BIOS和EFI\CLOVER\drivers\UEFI 两个地方。目的是让Clover加载NVME驱动,识别NVME SSD
由于PVE是使用UEFI引导安装的,安装完成后NVME SSD里面已经自动分好了EFI分区。Clover U盘制作完成之后,直接插到J1800上就可以直接引导进入PVE了。
PVE配置国内的Debain源和PVE源
由于种种原因,官方的apt源总是非常慢,换成国内科大的源,速度可以起飞。
国内源是用中国科学技术大学的比较靠谱。
如果用阿里、腾讯、163速度慢不说,还经常有莫名奇妙的问题。还不如用官方源+特殊方式上网好。
编辑/etc/apt/sources.list
1 | deb https://mirrors.ustc.edu.cn/debian/ buster main non-free contrib |
删除PVE企业源
1 | rm -rf /etc/apt/sources.list.d/pve-enterprise.list |
最后执行升级
1 | apt update |
删除lvm-thin 存储池,建立LVM cache为机械硬盘加速
PVE的lvm-thin存储池是个好东西,但是在一块120G的SSD划分这么多区域,空间利用率不佳。
如果之前在安装的时候没有设置maxvz=0
现在也可以把lvm-thin全部删掉,重新创建data
卷和cache
卷为机械硬盘加速。
删除data volume
1 | lvremove pve/data |
lsblk
查看磁盘分区情况。
1 | root@pve:~# lsblk |
可以看到NVME SSD被分成了3个区,第一个分区是mbr引导分区,第二个是efi引导分区,第三个就是lvm物理卷了。
sda和sdb都是机械硬盘,没有分区。
把500G机械硬盘的创建为物理卷(PV)并加入卷组(VG)
1 | pvcreate /dev/sdb |
创建机械盘、缓存和元数据的逻辑卷(LV)。缓存和元数据的比例是1000:1,即1G缓存LV配1M元数据LV,但元数据LV最小要8M。缓存使用回写模式。
SSD剩余的空间另外新建一个LV,用于存放虚拟机的硬盘映像IMG文件。
1 | lvcreate -l 100%PVS -n st500g pve /dev/sdb |
创建后可以使用lvs
查看LV。
1 | root@pve:~# lvs |
格式化新建的2个LV,挂载到系统内。尝试使用一下下一代的文件系统xfs。
1 | mkfs.xfs /dev/mapper/pve-ssd |
lsblk -f
查看uuid
1 | root@pve:~# lsblk -f |
编辑/etc/fstab
实现开机自动挂载
1 | UUID=999a81d5-dc4a-4013-b506-5736b8043e89 /home xfs defaults 0 0 |
回到PVE的Web界面,找到数据中心–存储。在刚才创建的LV上新建目录型的存储,ID是显示在PVE里面存储池的名称,路径是挂载目录,内容全部选中,这样就能存放ISO镜像、磁盘镜像、容器、容器模板、VZDump备份文件等内容了。
参考:
- https://pve.proxmox.com/wiki/Installation
- https://tieba.baidu.com/p/6282527282?pn=3
- https://tieba.baidu.com/p/6361557274?red_tag=3099761317
- https://www.bilibili.com/read/cv5496032/
- https://forum.proxmox.com/threads/proxmox6-lvm-ssd-cache.57360/
- https://unix.stackexchange.com/questions/179621/how-to-stop-caching-a-lvm-partition/294037
- https://www.liujason.com/article/315.html
- https://www.systutorials.com/docs/linux/man/7-lvmcache/
- https://blog.51cto.com/jschu/2044416
- https://xan.manning.io/2017/05/29/best-practice-for-mounting-an-lvm-logical-volume-with-etc-fstab.html