Skip to content
Thuan Bui's Blog
Go back

[Proxmox] Passthrough HDD / SDD vào máy ảo XPEnology

Updated:

Cập nhật 10/2024: bổ sung thêm phần Passthrough HDD Serial Number và clip Youtube hướng dẫn

Sau khi cài đặt thành công máy ảo XPEnology trên Proxmox, mình tiếp tục thực hiện việc passthrough ổ đĩa cứng để máy ảo XPEnology có thể truy xuất trực tiếp, không phải thông qua sự quản lý của Proxmox.

Dưới đây là hướng dẫn mình thực hiện cho máy ảo XPEnology. Bạn có thể thực hiện cho bất kỳ máy ảo KVM nào khác trên nền tảng Proxmox.

https://youtu.be/FpdREhpBtVg

1. Passthourgh ổ cứng gắn ngoài (External HDD)

Đối với ổ cứng gắn ngoài (External HDD) cắm vào máy chủ qua cổng USB, mình thao tác y hệt như cách thiết lập USB Passthrough đã chia sẻ trong bài viết trước đây.

https://thuanbui.me/proxmox-usb-passthrough

Ví dụ như dưới đây là ổ cứng gắn ngoài Portable HDD được cấu hình Passthrough vào máy ảo .

2. Passthourgh ổ cứng gắn trong

Đối với ổ cứng gắn trong (Interal HDD) kết nối thông qua cổng SATA / NVME, mình cần phải SSH vào console của Proxmox để thực hiện qua dòng lệnh.

Sử dụng lệnh sau để tìm các ổ cứng đang có trên máy chủ Proxmox

Terminal window
lsblk |awk 'NR==1{print $0" DEVICE-ID(S)"}NR>1{dev=$1;printf $0" ";system("find /dev/disk/by-id -lname \"*"dev"\" -printf \" %p\"");print "";}'|grep -v -E 'part|lvm'

Kết quả hiện ra như dưới đây.

Terminal window
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT DEVICE-ID(S)
sda 8:0 0 465.8G 0 disk /dev/disk/by-id/ata-TOSHIBA_MQ01ABF050M_X66BP0UWT /dev/disk/by-id/wwn-0x5000039752682108
nvme0n1 259:0 0 953.9G 0 disk /dev/disk/by-id/nvme-eui.002538ba71be0f6a /dev/disk/by-id/nvme-SAMSUNG_MZVLW1T0HMLH-000L7_S35ANX0JA08970

Mình muốn Passthrough ổ cứng TOSHIBA (465.8G) vào máy ảo XPENology, ghi lại id của nó: ata-TOSHIBA_MQ01ABF050M_X66BP0UWT.

Để passthrough ổ cứng này vào máy ảo, sử dụng lệnh qm set <vmid> [OPTIONS]

Terminal window
qm set 126 -sata3 /dev/disk/by-id/ata-TOSHIBA_MQ01ABF050M_X66BP0UWT
update VM 126: -sata3 /dev/disk/by-id/ata-TOSHIBA_MQ01ABF050M_X66BP0UWT

Quay lại giao diện Proxmox, truy cập vào phần Hardware của máy ảo XPENology, danh sách đã hiện ra thêm Hard Disk (sata3).

Truy cập vào máy ảo, ra lệnh Shutdown tắt máy.

3. Passthrough HDD Serial Number

Do Synology nhận diện ổ cứng theo số Serial Number, nên bắt buộc phải bổ sung thêm bước Passthrough HDD Serial Number vào Synology.

Cài đặt lshw để kiểm tra Serial Number của ổ cứng

Terminal window
# Install lshw
apt install lshw

Tìm Serial Number bằng lệnh

Terminal window
lshw -C disk

Kết quả trả về sẽ thấy dòng serial: WXH… Đây chính là Serial Number của HDD

Terminal window
*-disk
description: ATA Disk
product: WDC WD10SPZX-75Z
vendor: Western Digital
physical id: 0.0.0
bus info: scsi@0:0.0.0
logical name: /dev/sda
version: 1A03
serial: WXH1AC8EZTTH
size: 931GiB (1TB)
capabilities: partitioned partitioned:dos
configuration: ansiversion=5 logicalsectorsize=512 sectorsize=4096 signature=d7c8623e

Truy cập vào Shell của Proxmox, chỉnh sửa file cấu hình của máy ảo

Terminal window
nano /etc/pve/qemu-server/100.conf

Thay 100 bằng id của máy ảo XPEnology đang chạy

Tìm đến dòng khai báo HDD Passthrough, và bổ sung thêm thông số Serial vào, tương tự như bên dưới.

Terminal window
sata3: /dev/disk/by-id/ata-WDC_WD10SPZX-75Z10T2_WXH1AC8EZTTH,size=976762584K,serial=WXH1AC8EZTTH

4. Hoàn thành

Dưới đây là thành quả của mình sau khi Passthrough HDD từ Proxmox vào máy ảo XPEnnology:1 USB HDD và 1 SATA HDD hoạt động ngon lành trên máy ảo XPEnology.

Serial của HDD được passthrough hiện ra trong DSM 7.2
Serial của HDD được passthrough hiện ra trong DSM 7.2

Với cách passthrough HDD kèm serial number như hướng dẫn ở trên, bạn có thể detach HDD ra khỏi máy ảo và sau đó attach vào 1 máy ảo khác và thực hiện migration mà không lo bị mất dữ liệu. Mình đã test với 1 HDD SATA, và mọi thứ hoạt động bình thường.

Tham khảo: https://pve.proxmox.com/wiki/Passthrough_Physical_Disk_to_Virtual_Machine_(VM), https://dannyda.com/2020/08/26/how-to-passthrough-hdd-ssd-physical-disks-to-vm-on-proxmox-vepve/


Share this post on:

Previous Post
Reset thời hạn dùng thử 60 ngày trên ESXi 6 / 7 để sử dụng mãi mãi
Next Post
Thiết lập địa chỉ IP tĩnh (Static IP Address) trên Ubuntu Server 20.04 / 22.04 / 24.04