วิธีการรวบรวมอาร์เรย์ RAID ที่เจาะจงโดยไม่ใช้ /etc/mdadm.conf


9

เป็นไปได้หรือไม่ที่จะรวบรวมอาร์เรย์ RAID ที่เฉพาะเจาะจงโดยใช้mdadmและฟังก์ชันการสแกนของมัน แต่ไม่จำเป็นต้องใช้ไฟล์การกำหนดค่า

พื้นหลัง:
ฉันใช้ initramfs ที่กำหนดเองเพื่อตั้งค่าระบบของฉัน (dm-crypt และอื่น ๆ ) ทุกอย่างเสร็จสิ้นและกำหนดค่าภายในสคริปต์เริ่มต้นและนั่นคือวิธีที่ฉันต้องการเก็บไว้นั่นคือไม่มีไฟล์กำหนดค่าเพิ่มเติม

เป้าหมายของฉัน:
ภายในสคริปต์เริ่มต้นฉันต้องการรวบรวมอาร์เรย์ RAID หนึ่งชุดโดยใช้บรรทัดคำสั่งเท่านั้น อาเรย์จะถูกระบุผ่าน UUID ชื่ออุปกรณ์ md จะได้รับและสมาชิกอาเรย์ควรได้รับการสแกน (ตั้งแต่เช่นแท่ง USB ที่เชื่อมต่อหรืออุปกรณ์ที่ล้มเหลวจะทำให้ชื่อ / dev / sdX สับสน) อุปกรณ์อื่นและอาร์เรย์ RAID ที่มีศักยภาพทั้งหมดจะถูกละเว้นเนื่องจากในระหว่างการบูตจะมีเพียงหนึ่งอาร์เรย์ที่เป็นที่สนใจ (มีระบบไฟล์รูท)


อ่าน man page ของ mdadm อย่างละเอียดและทำการทดสอบหลายครั้งฉันพบสิ่งนี้:

mdadm --assemble --uuid <uuid> /dev/md0


ดูเหมือนว่าจะใช้งานได้ แต่เป็นวิธีที่ถูกต้องหรือไม่


จากหน้า man:
หากมีการระบุอุปกรณ์หนึ่งรายการอย่างแม่นยำ แต่ไม่ได้ระบุ --scan ดังนั้น mdadm จะทำหน้าที่เหมือนกับ --scan ได้รับและข้อมูลประจำตัวจะถูกแยกจากไฟล์การกำหนดค่า

คำตอบ:


15

หากคุณทราบอาร์เรย์ UUID ดังนั้นmdadm --assemble /dev/md0 --uuid <uuid>(สังเกตความแตกต่างเล็กน้อยในลำดับพารามิเตอร์) จะทำสิ่งที่คุณต้องการ: สแกนปริมาณที่ไม่ได้ใช้ทั้งหมดสำหรับรายการที่มีmdข้อมูลเมตาสำหรับ UUID ที่กำหนด ตัวเลือกอื่น:

  • mdadm --assemble /dev/md0 --name <name>(ทำสิ่งเดียวกันกับ--uuidแต่มีชื่ออาร์เรย์แทน UUID)
  • mdadm --assemble /dev/md0 --super-minor <minor id #>(ทำสิ่งเดียวกันกับ--uuidแต่มีหมายเลขอุปกรณ์รองในข้อมูลเมตาแนะนำสำหรับเมตาดาต้ารุ่น 0.90 เท่านั้น)
  • mdadm --assemble /dev/md0 /dev/disk/by-id/<disk>...(หากudevมีการตั้งค่า/dev/disk/by-idนามแฝงซึ่งควรเป็นแบบคงที่ในการเปลี่ยนแปลงฮาร์ดแวร์)
  • mdadm --assemble --scanโดยไม่แสดงรายการอาร์เรย์ในไฟล์กำหนดค่า (สแกนโวลุ่มที่ไม่ได้ใช้ทั้งหมดสำหรับmdเมทาดาทาและรวบรวมอาร์เรย์ RAID ตามสิ่งที่พบโปรดทราบว่าหากคุณมีหลายอาร์เรย์และต้องการตั้งค่าหนึ่งชุดเท่านั้นหรือถ้าอาร์เรย์ของคุณมีอากาศ แยกสิ่งนี้จะไม่ทำสิ่งที่คุณต้องการ)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.