คุณสามารถเปลี่ยนรุ่นข้อมูลเมตาของอาร์เรย์ที่มีอยู่ได้หรือไม่


21

ดังนั้นด้วงต้องการรุ่นข้อมูลเมตา 0.90 ฉันสงสัยว่าฉันสามารถเปลี่ยนอาร์เรย์ที่มีอยู่ของฉันที่จะใช้แทนค่าเริ่มต้นซึ่งเป็น 1.2 ด้วยวิธีนี้ฉันไม่ต้องไปติดตั้งใหม่เลย ถ้าใช่ฉันจะทำอย่างไร

คำตอบ:


5

ด้วงวิกิพีเดียยืนยัน:

นอกจากนี้ (ณ วันที่ 1.96 + 20080724) GRUB สามารถบูตได้จาก RAID ซึ่งใช้ซุปเปอร์บล็อกเวอร์ชั่น 0.90 เมทาดาทา (เช่นที่สร้างด้วยตัวเลือก --metadata = 0.90 ถึง mdadm)

อยากรู้อยากเห็นหน้าคนสำหรับ mdadmพูดว่า

-e, --metadata =

ประกาศสไตล์ของ superblock (raid metadata) ที่จะใช้ ค่าเริ่มต้นคือ 0.90 สำหรับ - สร้างและคาดเดาการดำเนินการอื่น ๆ

ฉันต้องตรวจสอบอีกครั้งmdadm -Q -D <device>เพื่อให้แน่ใจ

หลังจากนั้นคุณใช้ RAID ระดับใด สถานการณ์ที่ดีที่สุดที่ฉันคิดได้สำหรับมิเรอร์ (RAID 1) คือ

  1. ใช้การสำรองข้อมูล
  2. เลิกเมานต์อาร์เรย์ 0
  3. ลบอุปกรณ์ A ออกจากอาร์เรย์ 0 ของnอุปกรณ์
  4. ศูนย์ซุปเปอร์บล็อกบนอุปกรณ์ A
  5. สร้างอาร์เรย์ 1 โดยใช้อุปกรณ์ A และn-1อะไหล่โดยใช้รูปแบบ superblock แบบเก่าอย่างชัดเจน
  6. ทำซ้ำสำหรับn-1อุปกรณ์B ที่เหลือ
  7. (ไม่บังคับ) ป้อนหมายเลขอาร์เรย์อีกครั้ง

... แต่แน่นอนมากตรวจสอบว่าคุณต้องผ่านสิ่งนี้อย่างแน่นอน!


ดังนั้นฉันยืนยันว่านานมาแล้ว ฉันใช้ raid10, f2 เห็นได้ชัดว่าการสร้างอาร์เรย์ใหม่เป็นสิ่งที่ฉันพยายามหลีกเลี่ยง
xenoterracide

คุณเคยลองlinux-raid at vger.kernel.orgรายชื่อผู้รับจดหมายหรือไม่?
Andrew

แปลกที่ฉันไม่ได้รับการแจ้งเตือนเกี่ยวกับเรื่องนี้ ไม่ฉันไม่ได้ลอง ฉันเพิ่งเช็ดมันและสร้างอาร์เรย์ขึ้นใหม่ ฉันจะยอมรับคำตอบนี้ด้วยวิธีแก้ปัญหาสั้น ๆ ว่ามันไม่ใช่หรืออาจจะ (ยากขัน)
xenoterracide

16

ข้อมูลนี้อาจสายเกินไปที่จะช่วย OP แต่อาจจะช่วยคนอื่นได้

คำสั่งแรกจะทำการเช็ด super block และคำสั่งที่สองจะสร้างอาร์เรย์ใหม่ แต่ถือว่าอุปกรณ์นั้นสะอาด ฉันเพิ่งทำสิ่งนี้และทุกอย่างดูเหมือนจะโอเค ฉันขอแนะนำให้สำรองข้อมูลก่อนทำสิ่งนี้ ฉันไม่มีข้อมูลที่จะสูญเสียและดังนั้นจึงไม่มีความสมบูรณ์ในการตรวจสอบ ฉันแค่ต้องการหลีกเลี่ยงการซิงค์อีก 4 ชั่วโมง

$ mdadm --zero-superblock /dev/sd[a-z]1
$ mdadm --create /dev/md0 --assume-clean \
    --level=10 --raid-devices=10 /dev/sd[a-z]1 --metadata=0.90

1
อาจจะสายเกินไปสำหรับ OP แต่คุณช่วยฉันขอบคุณสำหรับคำตอบของคุณ
neofutur

7

การสร้างอาร์เรย์ด้วยข้อมูลเมตาที่ถือว่าสะอาดและไม่สอดคล้องกันตามที่แนะนำข้างต้นมีแนวโน้มที่จะสร้างความเสียหายให้กับข้อมูลที่มีอยู่เนื่องจากบล็อกข้อมูลเมตา 0.90 และ 1.2 ไม่เพียง แต่มีขนาดแตกต่างกัน

อาจใช้งานได้กับ 0.90 <-> 1.0 ซึ่งเป็นข้อยกเว้น

https://raid.wiki.kernel.org/index.php/RAID_superblock_formats

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.