โพสต์ครั้งแรก - ขออภัยหากไม่รักษามารยาทให้ถูกต้อง
ฉันมีอาร์เรย์ RAID6 ~ 200TB พร้อมดิสก์ 30 แผ่นและไม่สามารถเมานต์ได้ - ฉันเพิ่งได้รับข้อความ:
เมานต์ /dev/md125 /export/models
เมานต์: / dev / md125: ไม่สามารถอ่าน superblock
ถ้าฉันวิ่ง mdadm --รายละเอียด
บนมันแสดงว่าสะอาด:
/dev/md125:
เวอร์ชัน : 1.2
Creation Time : พุธ 13 ก.ย. 15:09:40 2017
ระดับการจู่โจม : การจู่โจม 6
ขนาดอาร์เรย์ : 218789036032 (203.76 TiB 224.04 TB)
ขนาด Dev ที่ใช้ : 7813894144 (7.28 TiB 8.00 TB)
อุปกรณ์จู่โจม : 30
รวมอุปกรณ์ : 30
การคงอยู่: Superblock นั้นคงอยู่
บิตแมปเจตนา: ภายใน
อัปเดตเวลา : วันศุกร์ที่ 20 พฤษภาคม 23:54:52 น. 2022
รัฐ : สะอาด
อุปกรณ์ที่ใช้งานอยู่ : 30
อุปกรณ์การทำงาน : 30
อุปกรณ์ที่ล้มเหลว : 0
อุปกรณ์สำรอง : 0
รูปแบบ : สมมาตรซ้าย
ขนาดก้อน : 512K
นโยบายความสอดคล้อง: บิตแมป
ชื่อ : localhost.localdomain:SW-RAID6
UUID : f9b65f55:5f257เพิ่ม:1140ccc0:46ca6c19
เหตุการณ์ : 1152436
หมายเลขหลักรอง RaidDevice สถานะ
0 8 1 0 การซิงค์ที่ใช้งานอยู่ /dev/sda1
1 65 161 1 แอคทีฟซิงค์ /dev/sdaa1
2 65 177 2 แอคทีฟซิงค์ /dev/sdab1
3 65 193 3 แอคทีฟซิงค์ /dev/sdac1
4 65 209 4 แอคทีฟซิงค์ /dev/sdad1
5 8 17 5 การซิงค์ที่ใช้งานอยู่ /dev/sdb1
6 8 33 6 การซิงค์ที่ใช้งานอยู่ /dev/sdc1
7 8 49 7 การซิงค์ที่ใช้งานอยู่ /dev/sdd1
8 8 65 8 การซิงค์ที่ใช้งานอยู่ /dev/sde1
9 8 81 9 การซิงค์ที่ใช้งานอยู่ /dev/sdf1
10 8 97 10 การซิงค์ที่ใช้งานอยู่ /dev/sdg1
11 8 113 11 การซิงค์ที่ใช้งานอยู่ /dev/sdh1
12 8 129 12 การซิงค์ที่ใช้งานอยู่ /dev/sdi1
13 8 145 13 การซิงค์ที่ใช้งานอยู่ /dev/sdj1
14 8 161 14 การซิงค์ที่ใช้งานอยู่ /dev/sdk1
15 8 177 15 การซิงค์ที่ใช้งานอยู่ /dev/sdl1
16 8 193 16 การซิงค์ที่ใช้งานอยู่ /dev/sdm1
17 8 209 17 การซิงค์ที่ใช้งานอยู่ /dev/sdn1
18 8 225 18 การซิงค์ที่ใช้งานอยู่ /dev/sdo1
19 8 241 19 การซิงค์ที่ใช้งานอยู่ /dev/sdp1
20 65 1 20 การซิงค์ที่ใช้งานอยู่ /dev/sdq1
21 65 17 21 แอคทีฟซิงค์ /dev/sdr1.dll
22 65 33 22 การซิงค์ที่ใช้งานอยู่ /dev/sds1
23 65 49 23 การซิงค์ที่ใช้งานอยู่ /dev/sdt1
24 65 65 24 การซิงค์ที่ใช้งานอยู่ /dev/sdu1
25 65 81 25 การซิงค์ที่ใช้งานอยู่ /dev/sdv1
26 65 97 26 การซิงค์ที่ใช้งานอยู่ /dev/sdw1
27 65 113 27 การซิงค์ที่ใช้งานอยู่ /dev/sdx1
28 65 129 28 แอคทีฟซิงค์ /dev/sdy1.dll
29 65 145 29 แอคทีฟซิงค์ /dev/sdz1
แมว /proc/stat
แสดง:
[root@knox ~]# cat /proc/mdstat
บุคลิก : [raid1] [raid6] [raid5] [raid4]
md125 : ใช้งาน Raid6 sdo1[18] sdh1[11] sdad1[4] sdd1[7] sdb1[5] sdi1[12] sdt1[23] sdr1[21] sdp1[19] sdx1[27] sdg1[10] sdn1[ 17] sdm1[16] sdab1[2] sdu1[24] sdl1[15] sde1[8] sdf1[9] sdw1[26] sdc1[6] sdq1[20] sdy1[28] sds1[22] sdv1[25] sdac1[3] sdz1[29] sdaa1[1] sda1[0] sdj1[13] sdk1[14]
218789036032 บล็อก super 1.2 ระดับ 6, 512k อัน, อัลกอริทึม 2 [30/30] [UUUUUUUUUUUUUUUUUUUUUUUUUUUUUU]
บิตแมป: 0/59 หน้า [0KB], ก้อน 65536KB
md126 : ใช้งานการจู่โจม 1 sdae3[0] sdaf2[1]
976832 บล็อกซุปเปอร์ 1.0 [2/2] [UU]
บิตแมป: 0/1 หน้า [0KB], ก้อน 65536KB
md127 : ใช้งานการจู่โจม 1 sdaf1[1] sdae1[0]
100554752 บล็อกซุปเปอร์ 1.2 [2/2] [UU]
บิตแมป: 1/1 หน้า [4KB], ก้อน 65536KB
อุปกรณ์ที่ไม่ได้ใช้: <ไม่มี>
พิจารณา
บนอุปกรณ์แต่ละเครื่องก็แสดงว่าดีเช่นกัน (ฉันยังไม่ได้รวมผลลัพธ์สำหรับอุปกรณ์ทั้งหมดเพราะมันจะใช้พื้นที่มากเกินไป แต่ทั้งหมดเหมือนกันกับอุปกรณ์นี้):
/dev/sda1:
เมจิก : a92b4efc
เวอร์ชัน : 1.2
แผนที่คุณลักษณะ : 0x1
อาร์เรย์ UUID : f9b65f55:5f257add:1140ccc0:46ca6c19
ชื่อ : localhost.localdomain:SW-RAID6
Creation Time : พุธ 13 ก.ย. 15:09:40 2017
ระดับการจู่โจม : การจู่โจม 6
อุปกรณ์จู่โจม : 30
Avail Dev Size : 15627788288 ภาค (7.28 TiB 8.00 TB)
ขนาดอาร์เรย์ : 218789036032 KiB (203.76 TiB 224.04 TB)
Data Offset : 262144 ภาค
ซูเปอร์ออฟเซ็ต : 8 ภาค
พื้นที่ที่ไม่ได้ใช้ : ก่อน=262056 ภาค, หลัง=0 ภาค
รัฐ : สะอาด
UUID ของอุปกรณ์ : 917e739e:36fa7cf6:c618d73c:43fb7dec
บิตแมปภายใน: 8 ภาคจาก superblock
อัปเดตเวลา : วันศุกร์ที่ 20 พฤษภาคม 23:54:52 น. 2022
Bad Block Log : 512 รายการที่ offset 72 ภาค
เช็คซัม : 2b5e9556 - ถูกต้อง
เหตุการณ์ : 1152436
รูปแบบ : สมมาตรซ้าย
ขนาดก้อน : 512K
บทบาทของอุปกรณ์ : อุปกรณ์ที่ใช้งานอยู่ 0
Array State : AAAAAAAAAAAAAAAAAAAAAAAAAAAAA ('A' == ใช้งาน, '.' == หายไป, 'R' == แทนที่)
รายการที่เกี่ยวข้องใน dmesg แสดง:
[13297.001208] XFS (md125): การติดตั้งระบบไฟล์ V5
[13297.008854] XFS (md125): บันทึกไม่สอดคล้องกัน (ไม่พบส่วนหัวก่อนหน้า)
[13297.008874] XFS (md125): ไม่พบส่วนหัวของบันทึก
[13297.008878] XFS (md125): การเมานต์บันทึก/การกู้คืนล้มเหลว: ข้อผิดพลาด -5
[13297.008934] XFS (md125): การเมานต์บันทึกล้มเหลว
พื้นหลังของสิ่งนี้ค่อนข้างยาวและเกี่ยวข้อง แต่เวอร์ชันสั้นคือฉันพยายามขยายอาร์เรย์ด้วยการเพิ่มดิสก์เพิ่มเติมและการดำเนินการถูกขัดจังหวะ ในที่สุดฉันก็สร้างอาร์เรย์ใหม่โดยเปลี่ยนรูปร่างกลับเป็นดิสก์เดิม 30 แผ่น (ซึ่งใช้เวลาสองสัปดาห์เต็ม!) แต่ตอนนี้ไม่ต้องการเมานต์แล้ว
น่าเสียดายที่มันไม่ได้สำรองข้อมูลไว้ (ฉันหมายถึงว่าคุณสำรองข้อมูล 200TB ไว้ที่ไหน!?!) ไม่ควรเก็บสิ่งของมีค่าไว้ที่นี่ แต่มนุษย์ สิ่งของมีค่าบางอย่างถูกเก็บไว้ที่นั่น
ฉันได้ดูที่ xfs_repair
แต่ฉันไม่แน่ใจว่าฉันควรรันบนอาร์เรย์ RAID (md125) หรือบนอุปกรณ์ sd* แต่ละเครื่อง
ขอบคุณ
อัปเดต (ประวัติเบื้องหลังทั้งหมด):
อุปกรณ์นี้เป็นเซิร์ฟเวอร์ SuperMicro ที่ใช้ CentOS 7 (3.10.0-1160.11.1.e17.x86_64) เวอร์ชัน 4.1 â 2018-10-01 ของ mdadm พร้อมดิสก์ 30 x 8TB ในการกำหนดค่า RAID6 นอกจากนี้ยังมีการบู๊ตและรูทบนอาร์เรย์ RAID1 2 ตัว – อาร์เรย์ RAID6 สำหรับข้อมูลเท่านั้น พื้นที่ว่างเต็มแล้ว ดังนั้นเราจึงตัดสินใจเพิ่มไดรฟ์ในอาร์เรย์ (สามารถเก็บไดรฟ์ได้ทั้งหมด 45 ไดรฟ์)
เนื่องจากดิสก์ดั้งเดิมในอาร์เรย์เป็นไดรฟ์ 4kN และอุปกรณ์ที่ให้มาคือ 512e จึงจำเป็นต้องฟอร์แมตใหม่ด้วย sg_format เพื่อแปลง (ขั้นตอนที่ Western Digital รองรับ) ฉันเริ่มด้วยดิสก์หนึ่งแผ่นเป็นการทดสอบ น่าเสียดายที่กระบวนการถูกขัดจังหวะระหว่างทาง ดังนั้นฉันจึงเริ่มต้นใหม่และดำเนินการตามตกลงจนเสร็จสิ้น เหมือนกับว่าได้แปลงดิสก์เป็น 4096k แล้ว แต่เกิดข้อผิดพลาด I/O หนึ่งหรือสองข้อผิดพลาด แต่ดูเหมือนไม่เกี่ยวข้องกันมากนักและฉัน หากมีปัญหาก็จะแสดงในสองสามขั้นตอนถัดไป ฉันได้ค้นพบบันทึก dmesg ตั้งแต่นั้นมา และนั่นบ่งชี้ว่ามีข้อผิดพลาด I/O มากกว่าที่ฉันคิดไว้อย่างมาก
อย่างไรก็ตาม เนื่องจาก sg_format ดูเหมือนจะเสร็จสมบูรณ์ ฉันจึงย้ายไปยังขั้นตอนต่อไปซึ่งก็คือการแบ่งพาร์ติชันดิสก์ด้วยคำสั่งต่อไปนี้
parted -a เหมาะสมที่สุด /dev/sd<x>
(แยกส่วน) mklabel msdos
(แยกส่วน) mkpart หลัก 2048s 100% (ต้องตรวจสอบว่าการเริ่มต้นถูกต้อง)
(แยกส่วน) จัดตำแหน่งตรวจสอบที่ดีที่สุด 1 (ตรวจสอบการจัดตำแหน่งของพาร์ติชัน 1)
(แยกส่วน) ตั้ง 1 การโจมตี (ตั้งค่า FLAG เป็น RAID)
(แยก) พิมพ์
ฉันเพิ่มดิสก์ใหม่ลงในอาร์เรย์แล้ว:
mdadm --add /dev/md125 /dev/sd<x>
และมันก็เสร็จสิ้นโดยไม่มีปัญหาใด ๆ
จากนั้นฉันก็ขยายอาร์เรย์ต่อไป:
mdadm --grow --raid-devices=31 --backup-file=/grow_md125.bak /dev/md125
ฉันตรวจสอบสิ่งนี้ด้วย cat /proc/mdstat และพบว่ากำลังปรับรูปร่างใหม่ แต่ความเร็วเป็น 0K/วินาที และการปรับรูปร่างไม่คืบหน้าจาก 0%
ประมาณ 12 ชั่วโมงต่อมา เนื่องจากการปรับรูปร่างไม่คืบหน้าจาก 0% ฉันจึงมองหาวิธีการยกเลิก เช่น mdadm --stop /dev/md125 ซึ่งใช้ไม่ได้ ดังนั้นฉันจึงลงเอยด้วยการรีบูตเซิร์ฟเวอร์
เซิร์ฟเวอร์ขึ้นมาในโหมดฉุกเฉิน
ฉันสามารถเข้าสู่ระบบในฐานะรูทได้ แต่อาร์เรย์ RAID6 ws ติดอยู่ในสถานะสร้างใหม่
ฉันพยายามแล้ว mdadm --assemble --update=revert-reshape --backup-file=/grow_md125.bak --verbose --uuid= f9b65f55:5f257add:1140ccc0:46ca6c19 /dev/md125
และสิ่งนี้ผลิต:
mdadm: ไม่พบ super block บน /dev/sde (คาดว่าเวทย์มนตร์ a92b4efc ได้รับ <จำนวนที่ต่างกัน>
mdadm: ไม่มี RAID super block บน /dev/sde
.
.
mdadm: /dev/sde1 ถูกระบุว่าเป็นสมาชิกของ /dev/md125 ช่อง 6
.
.
mdadm: /dev/md125 มีการปรับรูปร่างที่ใช้งานอยู่ - ตรวจสอบว่าจำเป็นต้องกู้คืนส่วนที่สำคัญหรือไม่
mdadm: ไม่มีข้อมูลเมตาสำรองบน /grow_md125.back
mdadm: ไม่พบข้อมูลสำรองของส่วนที่สำคัญ
mdadm: ไม่สามารถกู้คืนส่วนที่สำคัญสำหรับการปรับรูปร่าง ขออภัย
ฉันลองใช้รูปแบบที่แตกต่างกันซึ่งรวมถึง mdadm --assemble --invalid-สำรอง --force
ทั้งหมดไม่มีประโยชน์
ณ จุดนี้ ฉันได้ลบดิสก์ที่ต้องสงสัยออกไปด้วย แต่สิ่งนี้ไม่ได้สร้างความแตกต่างใดๆ
แต่สิ่งที่ใกล้เคียงที่สุดที่ฉันได้แก้ไขสิ่งนี้กำลังทำงานอยู่ mdadm /dev/md125 --assemble --invalid-backup --backup-file=/grow_md125.bak --verbose /dev/sdc1 /dev/sdd1 ....... /dev/sdaf1
และสิ่งนี้ก่อให้เกิด:
mdadm: /dev/sdaf1 ถูกระบุว่าเป็นสมาชิกของ /dev/md125 สล็อต 4
mdadm: /dev/md125 มีการปรับรูปร่างที่ใช้งานอยู่ - ตรวจสอบว่าจำเป็นต้องกู้คืนส่วนที่สำคัญหรือไม่
mdadm: ไม่มีข้อมูลเมตาสำรองบน /grow_md125.back
mdadm: ไม่พบข้อมูลสำรองของส่วนที่สำคัญ
mdadm: ดำเนินการต่อโดยไม่กู้คืนข้อมูลสำรอง
mdadm: เพิ่ม /dev/sdac1 ถึง /dev/md125 เป็น 1
.
.
.
mdadm: ล้มเหลวในการ RUN_ARRAY /dev/md125: อาร์กิวเมนต์ไม่ถูกต้อง
dmesg
มีข้อมูลนี้:
md: md125 หยุดทำงาน
md/raid:md125: reshape_position เร็วเกินไปสำหรับการกู้คืนอัตโนมัติ - ยกเลิก
md: pers->run() ล้มเหลว ...
md: md125 หยุดทำงาน
จากทั้งหมดข้างต้น ฉันบูทจากซีดีกู้ข้อมูลและสามารถเปลี่ยนรูปร่างกลับเป็นอุปกรณ์เดิม 30 เครื่องและบูตกลับเข้าสู่การติดตั้งแบบเนทีฟ (ฉันต้องสังเกตอาร์เรย์นั้นจาก fstab เพื่อทำเช่นนั้น)