USB硬盘挂载到PVE LXC容器使用/ Proxmox VE硬盘直通黑群晖
It小小鸟 / 2020-09-24 / Openwrt / 阅读量 19278

USB硬盘挂载到LXC容器

1、进入pve管理后台
节点-磁盘,查看硬盘连接成功没有,如果连接成功,会显示磁盘设备名字,大小等等
048.png

2、进入节点-shell
运行命令 blkid ,查询硬盘分区uid
比如我的usb3.0硬盘500G,是/dev/sdd,但是我分了两个区,这里会显示两个分区 /dev/sdd1,/dev/sdd2

我需要挂载第一个区到容器109,挂载路径设置为/itxiaoniao
挂载的运行命令方法: pct set LXC_ID -mpX /dev/sdXX,mp=/media/shared

我的例子就是: pct set 109 -mp0 /dev/sdd1,mp=/itxiaoniao,将/dev/sdd1 挂载lxc的/itxiaoniao目录
或者是:pct set 109 -mp0 /dev/disk/by-id/usb-External_USB3.0_201703310007F-0:0-part1,mp=/itxiaoniao

【需要注意的是,创建 LXC 容器需要在创建时选择 特权 模式,否则只能读取但无法写入数据。】
【如果挂载的是nfts格式硬盘,解决方法是在宿主机安装ntfs-3g:apt-get install ntfs-3g】

也可以使用 UUID 挂载硬盘
因为 /dev/sdb /dev/sdc 这种形式可能会随着插拔设备之类的发生变动,或改变顺序,而 UUID 则不会改变

获取设备 UUID

blkid /dev/sdd
pct set 109 -mp0 /dev/disk/by-uuid/*,mp=/itxiaoniao
049.png

PVE硬盘直通

1、进入节点-shell,查看硬盘id通过命令: ls /dev/disk/by-id
050.png

2、运行直通命令: qm set <vmid如101> -sata2 /dev/disk/by-id/硬盘id
比如我的两个西数硬盘,直通给106虚拟机(黑群晖)
qm set 106 --sata2 /dev/disk/by-id/ata-WDC_WD40EFRX-68N32N0_WD-*(写完整硬盘id)
qm set 106 --sata3 /dev/disk/by-id/ata-WDC_WD40EFRX-68N32N0_WD-*(写完整硬盘id)
051.png