PVE硬盘直通有两种方法,一种是磁盘映射(单盘直通),一种是直通控制器(控制器接的硬盘全部直通)。
磁盘映射硬盘由pve控制,在虚拟机里是虚拟磁盘;控制器直通是将控制器直通给虚拟机,控制器上接的硬盘全部会直通给虚拟机,硬盘由虚拟机控制。
1.磁盘映射
PVE里shell运行命令:
ls -la /dev/disk/by-id/|grep -v dm|grep -v lvm|grep -v part
列出所有磁盘
ata开头是sata类型的硬盘,nvme开头是nvme类型硬盘(一般为m2固态)。
我用m2固态装的pve系统,另外接了一块sata机械硬盘。
如果要通过磁盘映射的方式直通硬盘,可以通过下面的命令来执行,同样在pve的shell里执行。
qm set 101 --sata1 /dev/disk/by-id/ata-ST4000VX013-2XG104_WFN7YCGD
101为虚拟机编号,--sata1为映射的磁盘类型,ata-ST4000VX013-2XG104_WFN7YCGD为上面通过命令查到的磁盘id。
--sata1可以改成--ide1或者--scsi1也就是更换磁盘类型。
sata最多有6个设备,也就是最多到sata5,因为编号是从0开始的。
如果要取消直通可以通过命令:
qm set 101 --delete sata1
2.控制器直通
解决办法:取消硬盘开机挂载。
nano /etc/fstab
将硬盘开机挂载删掉或注释掉。
通过命令列出所有控制器
lspci
00:17.0是sata控制器,05:00.0也是sata控制器,一个nvme控制器。
查看硬盘是接在哪个控制器的,运行下面的命令:
ls -la /sys/dev/block/|grep -v loop |grep -v dm
0000:00:17.0就是硬盘所接的控制器,对应上面查到的00:17.0。所以我的sda硬盘是接在00:17.0控制器上的。
直接在虚拟机硬件里添加pci设备,0000:00:17.0就是上面查到的控制器ID,勾选pci-express
0000:05:00.0是另外一个硬盘控制器,上面暂时还没有接硬盘,所以上面查询硬盘所在控制器就没有。
我将0000:00:17.0直通给黑群晖,黑群晖开机后就能检测到直通的硬盘,会提示进入存储管理器进行管理,创建存储池,然后创建存储空间。
可以查看硬盘的S.M.A.R.T信息。
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://www.louxu.com/2025/02/104.html
共有 0 条评论