Tôi có một mảng Raid5 phần mềm linux (md1), chứa ổ cứng 4 x 16TB + 2 x 8TB. Các ổ cứng 2 x 8TB đã được hợp nhất với nhau (mảng Raid0; md0), hoạt động như một thiết bị 16TB (thứ năm). Đây chỉ là để lưu trữ dữ liệu. Vì tôi đã loại bỏ 2 x 8TB nên tôi quyết định giảm số lượng thiết bị xuống còn 4.Vì vậy, tôi đã thực hiện các bước sau:
mdadm --grow /dev/md1 --array-size 46883175936
mdadm --grow --raid-devices=4 /dev/md1 --backup-file=/home/backup
Người đọc chú ý sẽ lưu ý rằng còn thiếu một bước, đó là thay đổi kích thước của hệ thống tệp trước khi xử lý mdadm.
Quá trình định hình lại kết quả hiện bị kẹt ở 0%:
md1 : kích hoạt đột kích5 md0[5](S) sda1[0] sdb1[3] sde1[4] sdc1[2]
46883175936 khối siêu 1,2 cấp 5, khối 512k, thuật toán 2 [4/3] [UUUU]
[>....................] reshape = 0,0% (1/15627725312) kết thúc=2686015287,7 phút tốc độ=0K/giây
md0 : kích hoạt đột kích0 sdd[0] sdf[1]
15627788288 khối siêu 1,2 512k khối
Mặc du, iostat
không chỉ ra một số hành động trên các ổ cứng này:
Thiết bị: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
nvme0n1 155.89 564.43 443.38 108549018 85268978
sda 2851,68 82114,67 2400,81 15791944384 461714155
sdb 2851.88 82115.09 2401.49 15792024433 461844519
sdc 2852.37 82143.80 2401.57 15797546322 461859251
sđt 866.01 13.34 41827.19 2565819 8044026920
sde 2852.42 82143.79 2402.46 15797544281 462031635
sdf 866.50 14.33 41835.12 2755774 8045552820
Và mdadm --detail /dev/md1
có vẻ ổn:
/dev/md1:
Phiên bản : 1.2
Thời gian tạo : Thứ ba ngày 1 tháng 6 17:25:18 2021
Cấp độ đột kích: đột kích5
Kích thước mảng : 46883175936 (43,66 TiB 48,01 TB)
Kích thước Dev đã sử dụng: 15627725312 (14,55 TiB 16,00 TB)
Thiết bị đột kích : 4
Tổng số thiết bị : 5
Kiên trì : Superblock là bền bỉ
Thời gian cập nhật : Thứ sáu ngày 15 tháng 10 15:42:47 năm 2021
Trạng thái: sạch sẽ, định hình lại
Thiết bị đang hoạt động : 4
Thiết bị làm việc : 5
Thiết bị bị lỗi: 0
Thiết bị dự phòng : 1
Bố cục: đối xứng trái
Kích thước khối: 512K
Chính sách nhất quán: đồng bộ lại
Trạng thái định hình lại: Hoàn thành 0%
Thiết bị Delta : -1, (5->4)
Tên: localhost.localdomain:1 (cục bộ để lưu trữ localhost.localdomain)
UUID : 5457f23e:faa7ee47:b2c62a37:f4c78526
Sự kiện : 1064286
Số Chính Nhỏ Nhỏ RaidDevice State
0 8 1 0 đồng bộ hóa đang hoạt động /dev/sda1
2 8 33 1 đồng bộ hóa đang hoạt động /dev/sdc1
4 8 65 2 đồng bộ hóa đang hoạt động /dev/sde1
3 8 17 3 đồng bộ hóa đang hoạt động /dev/sdb1
5 9 0 - dự phòng /dev/md0
Tuy nhiên, dmesg
đưa ra một gợi ý trực tiếp cho lỗi:
EXT4-fs (md1): hình dạng xấu: số khối 15627725312 vượt quá kích thước của thiết bị (11720793984 khối)
Tôi đã cố gắng hủy quá trình định hình lại nhưng vô ích. Tôi bị mắc kẹt. Vì đã có dữ liệu quan trọng trên md1 nên tôi rất quan tâm đến việc khôi phục md1. Tôi có một bản sao lưu, nhưng điều này bỏ lỡ một số dữ liệu gần đây.
Có cách nào để hủy bỏ quá trình định hình lại không? Vì nó vẫn ở (1/15627725312) nên tôi không mong đợi mất dữ liệu.
Hoặc có đề xuất nào khác để khôi phục md1 (có hoặc không có md0) không?
Tôi biết ơn vì mọi lời đề nghị. Nếu bạn cần thêm thông tin, xin vui lòng cho tôi biết.
CHỈNH SỬA: Tôi có thể chạy lệnh:
mdadm --create /dev/md1 --level=5 --raid-devices=5 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sde1 /dev/md0 --assume-clean --readonly
Điều này tạo ra mảng ở trạng thái trước đó. Tuy nhiên, hệ thống tập tin dường như vẫn bị hỏng. Vì không có lỗi ổ cứng, tôi cho rằng dữ liệu vẫn ở đó, không bị ghi đè.
Có cách nào để khôi phục hệ thống tập tin?
Tôi đã thử testdisk, phát hiện Hệ thống linux dữ liệu
, nhưng không thể khôi phục các tệp này. Có chương trình nào khác có thể thực hiện thủ thuật này không?
Một lần nữa, bất kỳ đề nghị được đánh giá cao! Cảm ơn bạn trước!