Truy cập dữ liệu trong ổ cứng của NAS hỏng như thế nào

Khi sử dụng RAID 0, Basic, JBOD bạn sẽ có nguy cơ mất toàn bộ dữ liệu trong ổ này khi máy tính hư và phải tạo lại VM mới, hoặc cắm vào một máy tính mới

Truy cập dữ liệu trong ổ cứng của NAS hỏng như thế nào
Photo by Michael Kahn / Unsplash

Mình sử dụng một máy tính cũ + toàn bộ các ổ cứng HDD, SSD mình có cho dự án này. Và trong quá trình theo đuổi dự án mình cũng gặp không ít khó khăn và mong muốn chia sẻ lại. Đây là chuỗi bài chia sẻ về quá trình chủ động về khả năng lưu trữ, giảm sự phụ thuộc vào việc trả phí hàng tháng cho các dịch vụ đám mây. Mong rằng chuỗi bài này cũng mang lại những giá trị nhất định cho những ai muốn theo đuổi dự án tương tự.

Khi bạn lựa chọn ảo hoá, hay ngay cả khi bạn cài trực tiếp Xpenology lên máy tính sẽ có những trường hợp bạn sẽ phải đi cứu dữ liệu trong ổ cứng khi gặp trục trặc với phần cứng (tức ổ đĩa thì chưa hư - máy tính hư). Với các định dạng thông thường của win, mac, linux; mỗi ổ đĩa hoạt động độc lập nên bạn hoàn toàn có thể cắm ổ cứng qua máy khác và xài bình thường. Với NAS thì phức tạp hơn thế, vì sao nó phải như thế mình sẽ tìm hiểu và giải thích ở một bài viết khác.

Mình đã mất toàn bộ 1TB dữ liệu sau vì không thể truy cập được vào ổ cứng được định dạng RAID. Phải xoá và tạo lại pool mới, chấp nhận mất dữ liệu do thiết lập k có ổ backup

Với NAS khi bạn thay đổi cấu hình phần cứng, bạn xoá và thêm lại nó trong VM nó đang hiểu bạn đang đưa phần cứng mới vào. Hoặc khi bạn gắn một ổ cứng từ VM 1 qua VM 2, bạn sẽ mất khả năng truy cập dữ liệu đã lưu trong ổ cứng nếu không làm đúng. Trong bài viết này mình sẽ cố gắng đưa ra những lưu ý và hướng dẫn để các bạn chuẩn bị cho tình huống cần lấy lại dữ liệu khi ổ cứng vẫn bình thường (còn nếu ổ cứng die luôn rồi thì chịu thua nhé).

Lấy lại dữ liệu bằng tính năng Online Assemble

Tuỳ chọn này chỉ xuất hiện khi cấu trúc dữ liệu trên ổ cứng của bạn toàn vẹn. Tức là nếu bạn có 1 pool với nhiều ổ cứng, đảm bảo là bạn cắm đủ các ổ vào và chúng vẫn hoạt động bình thường, lúc này trong phần Storage Manager sẽ tự xuất hiện và bạn làm theo hướng dẫn để khôi phục 

Assemble a Storage Pool | DSM - Synology Knowledge Center
Synology Knowledge Center offers comprehensive support, providing answers to frequently asked questions, troubleshooting steps, software tutorials, and all the technical documentation you may need.

Trường hợp ổ đĩa hiện Crashed hoặc Missing làm sao để hiển thị tuỳ chọn Online Assemble

Đa số với cách passthrough thì ổ đĩa sẽ không nhận diện được thông tin phần cứng chính xác. Vì vậy sẽ có tình trạng báo lỗi Crashed hoặc Missing .

Ổ HDD được pasthrough và không nhận diện được thông tin đầy đủ

Điều kiện để hiện tuỳ chọn Online Assemble:

  • Đã lắp đặt đủ số lượng ổ đĩa để lắp ráp kho lưu trữ.
  • Số sê-ri của các ổ đĩa được phát hiện phải giống với số sê-ri của các ổ đĩa được hiển thị trong Required Drive Info.
Vậy làm cách nào để Xpenology nhận diện được thông tin số series

Passthrough số serial HDD

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.

Bạn có thể tìm số Serial của ổ cứng thông qua giao diện Proxmox, xem ở phần Disk của Server

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

Tìm Serial Number bằng lệnh

lshw -C disk

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

 *-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

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.

sata3: /dev/disk/by-id/ata-WDC_WD10SPZX-75Z10T2_WXH1AC8EZTTH,size=976762584K,serial=WXH1AC8EZTTH
💡
Trường hợp điền cấu hình như trên nhưng trong Synology vẫn không nhận serial number thì cần xem lại cấu hình SCSI Controller Type. Cần để đúng cấu hình SCSI single để nó đọc các ổ cứng riêng biệt
Trong một số trường hợp xui rủi sao đó tính năng Online Assemble vẫn không xuất hiện, bạn có thể thử cách dưới để lấy dữ liệu ra trước khi gắn lại vào VM và tạo pool mới

Sử dụng Linux để truy cập dữ liệu

Kết nối ổ cứng với máy tính chạy Linux: Bạn có thể kết nối các ổ cứng trực tiếp với một máy tính chạy Linux, vì Linux có thể đọc được các hệ thống file được Synology sử dụng (như Btrfs hoặc ext4). Sử dụng tính năng Passthough ổ cứng

Cài đặt các công cụ hỗ trợ:

  • Cài đặt các gói phần mềm như mdadm để quản lý RAID và btrfs-progs để quản lý hệ thống file Btrfs.
  • Sử dụng mdadm để lắp ráp RAID (nếu bạn đang sử dụng RAID) và mount để gắn hệ thống file để truy cập dữ liệu.

mdadm --assemble - scan để tìm và lắp ráp RAID.

mount -t btrfs /dev/mdX /mnt - để gắn ổ và truy cập vào dữ liệu.

Nếu thấy nội dung bài viết hữu ích, hãy chia sẻ cho bạn bè và người thân. Đừng quên để lại email để theo dõi Geek Playground. Chân thành cám ơn các bạn và hẹn gặp lại trong những nội dung kế tiếp ❤️