上一期给大家详细讲解了PVE的安装及虚拟机的安装过程,小伙伴们都装好了吗?在这期间发现有的小伙伴对于安装PVE还是存在很多的困难和疑惑,特别是小白萌新。今天给大家介绍一个安装PVE非常好用的工具——pve_source。
这个工具是由大佬Jazz(因头像是老虎,又被叫做老虎、虎佬)发布在X86派玩家社区的一个PVE工具,使用感受还是挺不错的,将一些常用的PVE优化和设置都进行了集成,减少大家的命令行操作。
X86派玩家社区,pve_source地址:https://bbs.x86pi.cn/thread?topicId=20
在帖子下方回复即可看到工具详细的使用方法,我这里只把主体部分复制过来,最新和详细教程以及相关问题的解决办法强烈建议大家查阅原帖,我这里为了视频介绍方便只做流水账。
一、PVE的安装
参考上一篇文章《PVE all in one保姆级教程:iKuai+iStoreOS, 核显SR-IOV, 飞牛fnOS, 黑群晖, TrueNAS, Windows10》
二、pve_source 下载地址及使用方法
1、pve_source使用方法:
①下载后改名为 pve_source.tar.gz
②上传到 /root
③解压压缩包 tar zxvf pve_source.tar.gz
④执行程序./pve_source
或
快速使用(需要联网):
稳定版
wget -q -O /root/pve_source.tar.gz 'https://bbs.x86pi.cn/file/topic/2023-11-28/file/01ac88d7d2b840cb88c15cb5e19d4305b2.gz' && tar zxvf /root/pve_source.tar.gz && /root/./pve_source
开发版 (PVE 系统配置 IOMMU、核显直通、核显 SR-IOV 调整为定制向导+推荐方案)
wget -q -O /root/pve_source.tar.gz 'https://bbs.x86pi.cn/file/topic/2024-01-06/file/24f723efc6ab4913b1f99c97a1d1a472b2.gz' && tar zxvf /root/pve_source.tar.gz && /root/./pve_source
程序关闭后运行下边代码重新调用程序:
./pve_source
2、风扇转速显示
先下载驱动,并将驱动重命名后上传至pve root文件夹:
①(it87 系列传感器驱动,显示 PVE 风扇转速):IT87传感器驱动_it87-dkms_1.0.63-1_all.deb
②(nct 系列传感器驱动,显示 PVE 风扇转速):NCT6687D传感器驱动_nct6687d-dkms_20231128-212556_all.deb
检查自己的主板传感器类型:
# 安装 lm-sensors apt-get install lm-sensors # 检测传感器 sensors-detect # 查看传感器信息 sensors
上传驱动后安装驱动:
使用方法: apt update && apt install -y pve-headers proxmox-headers-$(uname -r) dkms ## PVE 8 安装 dkms 及头文件 apt update && apt install -y pve-headers pve-headers-$(uname -r) dkms ## PVE 7 安装 dkms 及头文件 dpkg -i xxx.deb ## 安装 deb 驱动包,xxx.deb 改为包名称 reboot ## 重启系统
安装后若之前已经安装了核显 SR-IOV 的,可能会失效,重新运行一遍核显 SR-IOV驱动代码即可(代码中的0000:00:02.0
为核显ID,你的有可能不一样):
echo "devices/pci0000:00/0000:00:02.0/sriov_numvfs = 3" > /etc/sysfs.conf reboot
3、UPS设置与信息显示
依赖软件——Apcupsd软件包下载与安装,Debian的系统中,可以使用以下命令:
sudo apt-get update sudo apt-get install apcupsd
设置UPS参数,参考《玩转PVE:连接施耐德UPS实现自动关机》:
nano /etc/apcupsd/apcupsd.conf
①UPSCABLE usb
此选项是ups与pve连接的线材类型,默认usb。
②
UPSTYPE usb
DEVICE /dev/ttyS0
此选项是配置ups与pve主机的连接方式,我的ups是通过usb连接的,所以选项后面填写的是usb,第二行的DEVICE是指定的设备路径,你如果是用usb线材连接的pve主机和ups,此行在配置文件中要注释掉,否则pve连接不上ups。
UPSTYPE usb #DEVICE /dev/ttyS0 # 加#注释掉DEVICE
③POLLTIME 60
此选项的作用是设置间隔多少秒查看ups的状态,默认就可以,可以去点代码前边的#。
④ONBATTERYDELAY 6
停电后,经过多少秒后,开始关闭系统,默认就行
⑤BATTERYLEVEL 25
停电后,使用电池开始供电,当电池电量剩余小于等于25%时,执行关闭系统操作,我设置的时25%。
⑥MINUTES 3
停电后,使用电池开始供电,当根据ups内部电池供电剩余时间小于这个数值,将开始关闭系统。单位是分钟,我设置的是3分钟。补充:在使用ups的图形界面时,ups由一个状态显示,关于在电池模式下还可以运行多长时间,如果剩余可运行时间小于等于这个数值,就执行系统关机
⑦TIMEOUT 30
停电后,电池开始供电多少秒后,开始关闭系统。我设置为30,大家可以根据实际情况设置。如果设置为0,就是关闭这个计时器,也就是禁用了这个选项。
!!注意:BATTERYLEVEL、MINUTES、TIMEOUT三个选项都可以设置,三个选项是或的关系,也就是只要满足其中一项,就执行关机,如果三项都设置,基本上会先执行倒计时(timeout选项)30秒后关机。
ps:upsname、log日志输出等选项也可以设置,但不是必须的
修改完成后,保存并退出
nano编辑器:按住Ctrl+X,输入Y后,再按回车
⑧KILLDELAY,通常设置为零,表示禁用该选项
该选项的作用是,经过多少秒后,关闭ups,我们应该禁用该选项,防止服务器还没用完全关闭时,ups主动断掉电池供电。
启动apcupsd服务
输入systemctl start apcupsd.service
systemctl start apcupsd.service
查看apcupsd服务的运行状态
systemctl status apcupsd.service
将apcupsd服务设置为开机启动,再查看服务状态。
systemctl enable apcupsd.service systemctl status apcupsd.service
注意:如果要再次修改apcupsd服务的配置文件,保存后,需要重启该服务才能生效
重启服务命令:
systemctl restart apcupsd.service
查看ups运行状态
apcaccess
模拟ups断电测试
注意:不要将pve主机电源插头从ups上拔下来!!!是切断ups的电源进行测试
此时在systemctl status apcupsd.service
的界面可以看到电池使用的提示即可。
4、核显 SR-IOV安装
安装基本会失败(大佬可能没时间更新),建议手动安装,或手动与pve_source工具配合完成,下边代码请逐条运行:
apt install build-* dkms git sysfsutils -y apt install proxmox-headers-$(uname -r) proxmox-kernel-$(uname -r) cd ~
clone代码库(此处需要pve连接github,可试试修改DNS,比如8.8.8.8,8.8.4.4等)
git clone https://github.com/strongtz/i915-sriov-dkms.git
也可以使用国内镜像代码库,但在使用前查看代码是否最新或可用。
git clone https://gitee.com/ifwwww/i915-sriov-dkms
安装sriov模块,请逐条运行:
cd ~/i915-sriov-dkms dkms add .
这里记录出现的i915-sriov-dkms
版本号,比如此时示范时如上图所示版本号为“2025.02.03
”(该版本号会变,请以你的实际版本为准):
将下面这行代码中的汉字替换为你的版本号再运行代码:
dkms install -m i915-sriov-dkms -v 把这里换成版本号 --force
这个运行需要一点时间,请耐心等待,如下图所示:
这里可以继续进行以下的手动操作,也可以使用pve_source工具走一遍。
编辑 grub 配置文件
nano /etc/default/grub在
quiet
后添加i915.enable_guc=3 i915.max_vfs=7
的“7”表示可以添加7个虚拟核显(最多7个):i915.enable_guc=3 i915.max_vfs=7键盘组合键ctrl+x再输入y 回车保存退出
更新grub和initramfs
update-grub update-initramfs -u查看当前核显ID,并记录:
lspci | grep VGA将上面记录的核显ID替换下面代码中的
0000:00:02.0
(有可能没有显示0000:,下面的代码中补全即可),sriov_numvfs = 3
中的 3 是需要虚拟的核显数量,不能大于7(前边设置的7),添加数量越多同时使用时核显性能越弱,大家按需选择,我这里设置为3:echo "devices/pci0000:00/0000:00:02.0/sriov_numvfs = 3" > /etc/sysfs.conf reboot
也可以重新调用pve_source工具走一遍,操作到代码联网GitHub卡住那一步,按ctrl+C退出,然后重启即可:
cd ~ ./pve_source
按照视频操作,可以添加7个虚拟核显(最多7个),添加数量越多同时使用核显时性能越弱,大家按需选择。
完成后重启pve:
reboot
PVE重启后输入以下命令查看SR-IOV核显直通是否成功:
lspci | grep VGA
输出以下数据,表示成功
0000:00:02.0 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c) 0000:00:02.1 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c) 0000:00:02.2 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c) 0000:00:02.3 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)
查看核显sr-iov使用率
apt install intel-gpu-tools -y #查看核显sr-iov使用率: intel_gpu_top -d sriov
三、虚拟机安装
各种虚拟机的安装请到我上篇文章查看方法:
《PVE all in one保姆级教程:iKuai+iStoreOS, 核显SR-IOV, 飞牛fnOS, 黑群晖, TrueNAS, Windows10》