Echo's blog
Echo's blog
· 1 min read · 系统管理

pve如何直通硬盘

通过磁盘 ID 直通#

优点#

  • 使用磁盘唯一 ID,即使硬盘位置改变也不会出错
  • 最稳定可靠的方法

查看硬盘信息#

PRTCL // BASH
Terminal window
ls -l /dev/disk/by-id/

输出示例:

PRTCL // PLAINTEXT
lrwxrwxrwx 1 root root 9 Dec 18 09:53 ata-ST2000DM001-1CH164_S1E1FMP5 -> ../../sdb
lrwxrwxrwx 1 root root 10 Dec 18 09:53 ata-ST2000DM001-1CH164_S1E1FMP5-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 9 Dec 18 09:53 ata-ST2000DM001-1ER164_Z4Z65YP7 -> ../../sdc
lrwxrwxrwx 1 root root 10 Dec 18 09:53 ata-ST2000DM001-1ER164_Z4Z65YP7-part1 -> ../../sdc1

记录需要直通的硬盘 ID,例如:ata-ST2000DM001-1CH164_S1E1FMP5 ata-ST2000DM001-1ER164_Z4Z65YP7

执行直通命令#

PRTCL // BASH
Terminal window
qm set <VMID> -scsi<N> /dev/disk/by-id/<disk-id>

示例:

PRTCL // BASH
Terminal window
qm set 100 -scsi2 /dev/disk/by-id/ata-WDC_WD10EZEX-08WN4A0_WD-WCC6Y0123456

参数说明:

  • 100: 虚拟机 ID
  • -scsi2: SCSI 控制器编号(可以是 scsi0-scsi30)
  • 也可以使用 -sata<N>-virtio<N>

验证配置#

在 PVE Web 界面中:

  1. 选择虚拟机
  2. 点击”硬件”
  3. 查看是否添加了新的硬盘

或通过命令查看:

PRTCL // BASH
Terminal window
qm config 100

移除直通的硬盘#

通过命令行#

PRTCL // BASH
Terminal window
qm set 100 --delete scsi2

通过 Web 界面#

  1. 关闭虚拟机
  2. 硬件 → 选择硬盘 → 分离
  3. 再次选择 → 删除

验证直通成功#

在虚拟机中检查(Linux)#

PRTCL // BASH
Terminal window
lsblk
fdisk -l

在虚拟机中检查(Windows)#

  1. 打开”磁盘管理”
  2. 查看是否显示新硬盘
  3. 初始化并格式化(如需要)

Related Posts

Comments

Copied
Copied to clipboard