ในการสร้าง RAID 1 แบบซอฟต์แวร์มิเรอร์บน Debian 12 จากดิสก์เปล่าสองแผ่น ให้ติดตั้งโปรแกรมmdadmตรวจสอบชื่ออุปกรณ์ให้ถูกต้อง สร้างดิสก์/dev/md0และสร้างระบบไฟล์บนอุปกรณ์อาร์เรย์ ในตัวอย่างนี้ ดิสก์/dev/sdbและ/dev/sdcเป็นดิสก์ข้อมูลเฉพาะ ให้แทนที่ด้วยเส้นทางอุปกรณ์ที่คุณตรวจสอบแล้ว อย่าเรียกใช้คำสั่งสร้างหรือฟอร์แมตบนดิสก์ที่มีข้อมูลที่คุณต้องการ
ขั้นตอนนี้ใช้สำหรับสร้างวอลุ่มข้อมูลใหม่ ไม่ใช่สำหรับไดเร็กทอรีรูทหรือบูต RAID 1 จะเก็บสำเนาแบบมิเรอร์และสามารถทำงานต่อได้แม้ว่าสมาชิกตัวใดตัวหนึ่งจะเสียหาย แต่จะไม่ป้องกันการลบ ความเสียหายของระบบไฟล์ การโจรกรรม หรือความเสียหายของดิสก์ตัวที่สอง ควรสำรองข้อมูลแยกต่างหากคู่มือ mdadm ของ Debian Bookworm ได้อธิบายถึงตัวเลือกการสร้างและเมตาเดตาที่ใช้ด้านล่าง
ก่อนสร้างอาร์เรย์: ตรวจสอบดิสก์ให้เรียบร้อย
ความจุของ RAID 1 ถูกจำกัดด้วยขนาดของดิสก์ที่มีขนาดเล็กกว่า ควรใช้ดิสก์ที่มีขนาดอย่างน้อยเท่ากับปริมาณข้อมูลที่ต้องการ และควรใช้ดิสก์ที่มีขนาดเท่ากันโดยเชื่อมต่อผ่านพอร์ตอิสระ คุณสามารถใช้ดิสก์ทั้งแผ่นดังที่แสดงในภาพ หรือสร้างพาร์ติชั่นขนาดเท่ากันบนแต่ละดิสก์แล้วทำการมิเรอร์พาร์ติชั่นเหล่านั้น การเลือกใช้ขึ้นอยู่กับแผนการแบ่งพาร์ติชั่นและการจัดเก็บข้อมูลในอนาคต อย่าใช้ดิสก์ทั้งแผ่นร่วมกับพาร์ติชั่นโดยไม่ได้ตั้งใจ
ขั้นแรกให้แสดงรายการอุปกรณ์และระบบไฟล์:
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
sudo wipefs -n /dev/sdb /dev/sdc
lsblkแสดงขนาด พาร์ติชั่น ระบบไฟล์ และจุดเชื่อมต่อwipefs -nรายงานเฉพาะลายเซ็น ไม่ได้ลบข้อมูล ยืนยันโดยใช้รุ่น หมายเลขซีเรียล ความจุ และจุดเชื่อมต่อ ว่าทั้งสองเป้าหมายเป็นดิสก์ที่ยังไม่ได้เชื่อมต่อตามที่ต้องการ ตัวอักษรของอุปกรณ์อาจเปลี่ยนแปลงได้หลังจากมีการเปลี่ยนแปลงฮาร์ดแวร์หรือการบูต ดังนั้นสำหรับเซิร์ฟเวอร์ ให้ระบุไดรฟ์ที่มี/dev/disk/by-id/เส้นทางที่เสถียรและใช้เส้นทางเหล่านั้นอย่างสม่ำเสมอ
หน้าจอเทอร์มินัลแสดงการตรวจสอบสินค้าคงคลังของดิสก์: ยืนยันดิสก์สมาชิกทั้งสองและจุดเชื่อมต่อก่อนที่จะสร้างมิเรอร์
ความเข้าใจผิดที่พบบ่อย: RAID 1 ไม่ได้รวมความจุของดิสก์สองตัวเข้าด้วยกันเป็นวอลุ่มขนาดใหญ่ขึ้น แต่เป็นการทำสำเนาข้อมูลที่เขียนลงไป ดังนั้นพื้นที่ใช้งานได้จึงมีขนาดโดยประมาณเท่ากับดิสก์ที่มีความจุน้อยกว่า ตรวจสอบขนาดที่แสดงในตอนนี้และวางแผนเผื่อไว้สำหรับความจุที่ทำสำเนาไว้ด้วย
สร้างและตรวจสอบอุปกรณ์ RAID 1
ติดตั้งยูทิลิตี้การจัดการ RAID ของ Debian จากนั้นสร้างมิเรอร์แบบสองอุปกรณ์:
sudo apt update
sudo apt install mdadm
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
ตอบคำถามยืนยันหลังจากตรวจสอบเส้นทางสมาชิกอีกครั้งแล้วเท่านั้น คำสั่งนี้--level=1เลือกการทำมิเรอร์ ขณะที่ คำสั่ง --raid-devices=2นี้กำหนดจำนวนสมาชิกที่ใช้งานอยู่ Debian Bookworm mdadmใช้เมตาเดตาเวอร์ชัน 1.2 เป็นค่าเริ่มต้นสำหรับอาร์เรย์ใหม่ ระบุรูปแบบเมตาเดตาอื่นเฉพาะเมื่อข้อกำหนดการบูตหรือความเข้ากันได้ที่ได้รับการตรวจสอบแล้วกำหนดไว้เท่านั้น คำสั่งนี้จะเขียนเมตาเดตา RAID ไปยังอุปกรณ์ที่เลือก ควรปฏิบัติต่ออุปกรณ์เหล่านั้นเสมือนเป็นอุปกรณ์ใช้แล้วทิ้ง และอย่าคิดว่าระบบไฟล์ที่มีอยู่จะยังคงใช้งานได้ต่อไป
คำสั่งนี้จะเริ่มต้น /dev/md0 ให้เป็นอาร์เรย์ RAID 1 สองตัว โดยเส้นทางของดิสก์ต้องตรงกับอุปกรณ์ที่คุณตรวจสอบแล้ว
การสร้างจะเริ่มกระบวนการซิงโครไนซ์ ซึ่งอาจใช้เวลานานขึ้นอยู่กับขนาดของดิสก์และการใช้งาน นี่ไม่ใช่การยืนยันว่าสำเนาทั้งสองซิงโครไนซ์เสร็จสมบูรณ์แล้ว ตรวจสอบความคืบหน้าได้ด้วย:
cat /proc/mdstat
sudo mdadm --detail /dev/md0
มองหาraid1ทั้งสมาชิกที่คาดหวังและ[UU]เมื่ออาร์เรย์ทำงานอย่างเต็มที่โดยมีอุปกรณ์ทั้งสองอยู่ครบถ้วน ในขณะที่การซิงค์กำลังทำงานอยู่/proc/mdstatจะมีการรายงานความคืบหน้า หลีกเลี่ยงการเขียนข้อมูลจำนวนมากจนกว่าจะเสร็จสิ้นหากทำได้ ความเร็วและระยะเวลาที่แน่นอนขึ้นอยู่กับไดรฟ์ ตัวควบคุม และปริมาณงาน ดังนั้นอย่าคาดเดาเวลาเสร็จสิ้นจากผลลัพธ์ของเครื่องอื่น
หน้าจอแสดงสถานะตัวอย่างแสดงว่ากำลังดำเนินการซิงค์ข้อมูล โปรดรอจนกว่าการซิงค์จะเสร็จสมบูรณ์และยืนยันว่าตัวบ่งชี้สมาชิกทั้งสองปรากฏขึ้นแล้ว
ความเข้าใจผิดที่พบบ่อย:อุปกรณ์อาร์เรย์ยังไม่พร้อมสำหรับการฟอร์แมตเพียงเพราะคำสั่งสร้างส่งผลลัพธ์กลับมาแล้ว ตรวจสอบ ให้แน่ใจ /proc/mdstatก่อนmdadm --detailว่ารายชื่อสมาชิกตรงกับดิสก์ทั้งสองของคุณ
จัดรูปแบบ ติดตั้ง และทำให้แอสเซมบลีคงอยู่ถาวร
เมื่อ/dev/md0ระบบทำงานและสมาชิกถูกต้องแล้ว ให้สร้างระบบไฟล์บนอุปกรณ์อาร์เรย์ ไม่ใช่บนดิสก์สมาชิกแต่ละตัว จากนั้นจึงทำการเมานต์ระบบไฟล์นั้น:
sudo mkfs.ext4 /dev/md0
sudo mkdir -p /srv/mirror
sudo mount /dev/md0 /srv/mirror
findmnt /srv/mirror
mkfs.ext4ลบข้อมูลบนเป้าหมาย การฟอร์แมต/dev/md0จะสร้างระบบไฟล์เดียวทั่วทั้งมิเรอร์เชิงตรรกะ ในขณะที่การฟอร์แมต/dev/sdbหรือ/dev/sdcการแยกฟอร์แมตจะข้ามอาร์เรย์ไป ตรวจสอบให้แน่ใจว่า มี findmntการเมานต์/dev/md0อยู่ที่/srv/mirrorก่อนที่จะเขียนไฟล์
เรียกใช้คำสั่งระบบไฟล์และคำสั่งเมานต์กับ /dev/md0 ซึ่งเป็นอุปกรณ์อาร์เรย์ที่ประกอบขึ้น แทนที่จะเรียกใช้กับสมาชิกทางกายภาพใดๆ
เพื่อให้ Debian สามารถจัดเรียงอาร์เรย์ใหม่ตามรหัสประจำตัวเมื่อบูตเครื่องได้ ให้ตรวจสอบรายการที่สร้างขึ้น:
sudo mdadm --detail --scan
เพิ่มARRAYบรรทัดที่ตรงกันจากผลลัพธ์ลงใน/etc/mdadm/mdadm.confไฟล์โดยไม่ต้องแทนที่ส่วนที่เหลือ จากนั้นสร้าง initramfs ใหม่:
sudo nano /etc/mdadm/mdadm.conf
sudo update-initramfs -u -k all
คู่มือของ Debian แนะนำให้ทำการอัปเดต initramfs หลังจากเปลี่ยนแปลงการตั้งค่านี้ด้วย สำหรับการเมานต์อัตโนมัติ ให้รับ UUID ของระบบไฟล์และเพิ่มรายการที่เกี่ยวข้องลงใน/etc/fstab:
sudo blkid /dev/md0
# Example format; replace the UUID with the value from blkid:
UUID=your-filesystem-uuid /srv/mirror ext4 defaults,nofail 0 2
ใช้ UUID จริง ไม่ใช่ตัวอย่างที่กำหนดไว้ จากนั้นตรวจสอบความถูกต้องของไฟล์และกำหนดค่าการเมานต์:
sudo findmnt --verify
sudo mount -a
findmnt /srv/mirror
ตรวจสอบผลลัพธ์และทำความเข้าใจข้อจำกัดของมัน
ยืนยันว่าmdadm --detail /dev/md0รายงาน RAID ระดับ 1 แสดงว่าสมาชิกทั้งสองเป็นไปตามที่คาดไว้ และอยู่ในสถานะที่สะอาดหลังจากซิงโครไนซ์ ยืนยันว่า/proc/mdstatแสดงอุปกรณ์ทั้งสอง จากนั้นตรวจสอบว่าfindmnt /srv/mirrorรายงานแสดงว่าระบบไฟล์ ext4 ถูกเมานต์จากอาร์เรย์แล้ว หลังจากรีบูตตามแผน ให้ทำการตรวจสอบอาร์เรย์และการเมานต์ซ้ำอีกครั้งก่อนจัดเก็บข้อมูลสำคัญ
RAID 1 สามารถรักษาความพร้อมใช้งานของวอลุ่มได้แม้สมาชิกตัวใดตัวหนึ่งเสียหาย แต่ความซ้ำซ้อนไม่ใช่การสำรองข้อมูลและไม่รับประกันว่าทุกไฟล์จะสามารถกู้คืนได้ ควรเก็บสำเนาสำรองที่มีเวอร์ชันไว้ในที่เก็บข้อมูลแยกต่างหาก ตรวจสอบสถานะของอาร์เรย์ และเปลี่ยนสมาชิกที่เสียหายโดยใช้อุปกรณ์และขั้นตอนการกู้คืนที่ระบุไว้ในคู่มือ Bookworm ของ mdadm อย่าง ถูกต้อง คู่มือนี้ไม่ได้กล่าวถึงการแปลงดิสก์รูทของ Debian ที่มีอยู่ให้เป็น RAID ซึ่งต้องใช้แผนการย้ายข้อมูลและบูตโหลดเดอร์เฉพาะสำหรับเครื่องนั้นๆ