Tôi vừa nâng cấp Ubuntu 14.04 và tôi có hai nhóm ZFS trên máy chủ. Có một số vấn đề nhỏ khi tôi chiến đấu với trình điều khiển ZFS và phiên bản kernel, nhưng giờ đã giải quyết xong. Một hồ bơi đã trực tuyến, và gắn kết tốt. Người kia thì không. Sự khác biệt chính giữa công cụ này là một nhóm chỉ là một nhóm đĩa (lưu trữ video / nhạc) và cái còn lại là một bộ raidz (tài liệu, v.v.)
Tôi đã cố gắng xuất và nhập lại nhóm, nhưng không có kết quả, cố gắng nhập giúp tôi điều này:
root@kyou:/home/matt# zpool import -fFX -d /dev/disk/by-id/
pool: storage
id: 15855792916570596778
state: UNAVAIL
status: One or more devices contains corrupted data.
action: The pool cannot be imported due to damaged devices or data.
see: http://zfsonlinux.org/msg/ZFS-8000-5E
config:
storage UNAVAIL insufficient replicas
raidz1-0 UNAVAIL insufficient replicas
ata-SAMSUNG_HD103SJ_S246J90B134910 UNAVAIL
ata-WDC_WD10EARS-00Y5B1_WD-WMAV51422523 UNAVAIL
ata-WDC_WD10EARS-00Y5B1_WD-WMAV51535969 UNAVAIL
Các liên kết tượng trưng cho những người trong đó /dev/disk/by-id
cũng tồn tại:
root@kyou:/home/matt# ls -l /dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90B134910* /dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51*
lrwxrwxrwx 1 root root 9 May 27 19:31 /dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90B134910 -> ../../sdb
lrwxrwxrwx 1 root root 10 May 27 19:15 /dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90B134910-part1 -> ../../sdb1
lrwxrwxrwx 1 root root 10 May 27 19:15 /dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90B134910-part9 -> ../../sdb9
lrwxrwxrwx 1 root root 9 May 27 19:15 /dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51422523 -> ../../sdd
lrwxrwxrwx 1 root root 10 May 27 19:15 /dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51422523-part1 -> ../../sdd1
lrwxrwxrwx 1 root root 10 May 27 19:15 /dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51422523-part9 -> ../../sdd9
lrwxrwxrwx 1 root root 9 May 27 19:15 /dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51535969 -> ../../sde
lrwxrwxrwx 1 root root 10 May 27 19:15 /dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51535969-part1 -> ../../sde1
lrwxrwxrwx 1 root root 10 May 27 19:15 /dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51535969-part9 -> ../../sde9
Kiểm tra các /dev/sd*
thiết bị khác nhau được liệt kê, chúng có vẻ là những thiết bị chính xác (3 ổ 1TB nằm trong một mảng raidz).
Tôi đã chạy zdb -l
trên mỗi ổ đĩa, bỏ nó vào một tệp và chạy một diff. Sự khác biệt duy nhất trên 3 là các trường hướng dẫn (mà tôi cho là được mong đợi). Tất cả 3 nhãn trên mỗi nhãn về cơ bản là giống hệt nhau và như sau:
version: 5000
name: 'storage'
state: 0
txg: 4
pool_guid: 15855792916570596778
hostname: 'kyou'
top_guid: 1683909657511667860
guid: 8815283814047599968
vdev_children: 1
vdev_tree:
type: 'raidz'
id: 0
guid: 1683909657511667860
nparity: 1
metaslab_array: 33
metaslab_shift: 34
ashift: 9
asize: 3000569954304
is_log: 0
create_txg: 4
children[0]:
type: 'disk'
id: 0
guid: 8815283814047599968
path: '/dev/disk/by-id/ata-SAMSUNG_HD103SJ_S246J90B134910-part1'
whole_disk: 1
create_txg: 4
children[1]:
type: 'disk'
id: 1
guid: 18036424618735999728
path: '/dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51422523-part1'
whole_disk: 1
create_txg: 4
children[2]:
type: 'disk'
id: 2
guid: 10307555127976192266
path: '/dev/disk/by-id/ata-WDC_WD10EARS-00Y5B1_WD-WMAV51535969-part1'
whole_disk: 1
create_txg: 4
features_for_read:
Ngớ ngẩn, tôi không có một bản sao lưu gần đây của hồ bơi này. Tuy nhiên, nhóm đã ổn trước khi khởi động lại và Linux thấy các đĩa vẫn ổn (tôi có smartctl đang chạy để kiểm tra lại)
Vì vậy, tóm lại:
- Tôi đã nâng cấp Ubuntu và mất quyền truy cập vào một trong hai zpool của mình.
- Sự khác biệt giữa các hồ bơi là cái đã xuất hiện là JBOD, cái kia là sợ hãi.
- Tất cả các ổ đĩa trong zpool không thể đếm được được đánh dấu UNAVAIL, không có ghi chú cho dữ liệu bị hỏng
- Các pool được tạo ra với các đĩa được tham chiếu từ
/dev/disk/by-id/
. - Các liên kết từ
/dev/disk/by-id
đến các/dev/sd
thiết bị khác nhau dường như là chính xác zdb
có thể đọc nhãn từ các ổ đĩa.- Bi-a đã được cố gắng xuất / nhập và không thể nhập lại.
Có một số loại ma thuật đen mà tôi có thể gọi thông qua zpool / zfs để đưa các đĩa này trở lại thành một mảng hợp lý? Tôi có thể chạy zpool create zraid ...
mà không mất dữ liệu không? Dữ liệu của tôi đã biến mất chưa?
/dev/disk/by-id
cho các ổ đĩa đó và tất cả các liên kết tượng trưng cho một thiết bị đều trỏ đến cùng một/dev/sd*
ổ đĩa. Và điều gần nhất tôi có thể tìm thấy cho một giải pháp (sử dụng thay thế zpool), tôi không thể làm vì tôi không thể nhập lại nhóm.