Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม Bash

รวมหลายไดรฟ์เป็นที่จัดเก็บเสมือนเดียวด้วย MergerFS – คู่มือสำหรับผู้เริ่มต้น

mhddfs ถูกทิ้งร้างตั้งแต่ปี 2012 ไม่ได้รับการดูแลรักษาต่อแล้ว และมีปัญหาเรื่องความปลอดภัย – เราแนะนำให้เปลี่ยนมาใช้ mergerfs ซึ่งเป็นทางเลือกสมัยใหม่ที่ยังคงได้รับการดูแลรักษาอย่างต่อเนื่อง และชุมชน home lab ได้ย้ายมาใช้แล้ว เราเขียนคู่มือการตั้งค่าสำหรับผู้เริ่มต้นครบถ้วน 👉 อ่านคู่มือ mergerfs

สมมติว่าคุณมีหนังสือ 30GB และมี 3 ไดรฟ์ แต่ละอันขนาด 20 GB คุณจะจัดเก็บอย่างไร?

ชัดเจนว่าคุณสามารถแยกวิดีโอไว้ 2-3 โวล्यูมต่างกันและจัดเก็บบนไดรฟ์ด้วยตนเอง แต่แน่นอนว่าไม่ใช่วิธีที่ดี เป็นงานที่หนักหนา ต้องดูแลด้วยตนเอง และใช้เวลามาก

อีกทางหนึ่งคือสร้าง RAID array ของดิสก์ RAID เสมอมามั่นคงไว้เรื่องความน่าเชื่อถือของที่จัดเก็บและพื้นที่ดิสก์ที่ใช้งานได้ อีกทางคือ mhddfs

รวมหลายไดรฟ์เป็นที่จัดเก็บเสมือนเดียวด้วย MergerFS – คู่มือสำหรับผู้เริ่มต้น

mhddfs เป็นไดรเวอร์สำหรับ Linux ที่รวม mount points หลายจุดเป็นดิสก์เสมือน (virtual disk) เดียว เป็นไดรเวอร์แบบ FUSE ที่ให้โซลูชันง่ายสำหรับการจัดเก็บข้อมูลขนาดใหญ่ รวมระบบไฟล์ขนาดเล็กทั้งหมดเป็นระบบไฟล์เสมือนขนาดใหญ่เพียงตัวเดียว ที่มีทุกส่วนของระบบไฟล์สมาชิก รวมถึงไฟล์และพื้นที่ว่าง

ทำไมต้อง Mhddfs?

อุปกรณ์จัดเก็บทั้งหมดของคุณจะกลายเป็น pool เสมือนเดียว และสามารถ mount ได้ตั้งแต่บูท ยูทิลิตีเล็กๆ นี้ดูแลว่าไดรฟ์ไหนเต็ม ไหนว่าง และเขียนข้อมูลไปที่ไดรฟ์ไหน อย่างฉลาด หลังสร้าง virtual drives เรียบร้อย คุณสามารถแชร์ virtual filesystem ผ่าน SAMBA ไคลเอนต์จะเห็นดิสก์ขนาดใหญ่และพื้นที่ว่างมาก

คุณสมบัติของ Mhddfs

  1. รับแอตทริบิวต์ของระบบไฟล์และข้อมูลระบบ
  2. ตั้งค่าแอตทริบิวต์ของระบบไฟล์
  3. สร้าง, อ่าน, ลบ และเขียนไดเรกทอรีและไฟล์
  4. รองรับ file locks และ Hardlinks บนอุปกรณ์เดียว
ข้อดีของ mhddfsข้อเสียของ mhddfs
เหมาะสำหรับผู้ใช้ทั่วไปmhddfs driver ไม่ได้ built-in ใน Linux Kernel
รันง่ายต้องใช้ processing power มากระหว่าง runtime
ไม่มีหลักฐานการสูญเสียข้อมูลไม่มีโซลูชัน redundancy
ไม่แยกไฟล์Hardlinks การย้ายไม่รองรับ
เพิ่มไฟล์ใหม่เข้า virtual filesystem ได้
จัดการตำแหน่งที่บันทึกไฟล์
Extended file attributes

การติดตั้ง Mhddfs ใน Linux

บน Debian และระบบคล้ายๆ สามารถติดตั้งแพ็กเกจ mhddfs ด้วยคำสั่ง:

# apt-get update && apt-get install mhddfs

รวมหลายไดรฟ์เป็นที่จัดเก็บเสมือนเดียวด้วย MergerFS – คู่มือสำหรับผู้เริ่มต้น

บนระบบ RHEL/CentOS Linux ต้องเปิด epel-repository ก่อน แล้วรันคำสั่งด้านล่างเพื่อติดตั้งแพ็กเกจ mhddfs:

# yum install mhddfs

บนระบบ Fedora 22+ อาจได้ผ่าน package manager dnf:

# dnf install mhddfs

รวมหลายไดรฟ์เป็นที่จัดเก็บเสมือนเดียวด้วย MergerFS – คู่มือสำหรับผู้เริ่มต้น

กรณีที่แพ็กเกจ mhddfs ไม่อยู่ใน epel repository ต้องแก้ dependencies ต่อไปนี้เพื่อติดตั้งและคอมไพล์จากซอร์ส:

  1. FUSE header files
  2. GCC
  3. libc6 header files
  4. uthash header files
  5. libattr1 header files (optional)

ดาวน์โหลดซอร์สแพ็กเกจล่าสุดและคอมไพล์:

# wget https://mhddfs.uvw.ru/downloads/mhddfs_0.1.39.tar.gz
# tar -zxvf mhddfs*.tar.gz
# cd mhddfs-0.1.39/
# make

ควรเห็นไบนารี mhddfs ในไดเรกทอรีปัจจุบัน ย้ายไป /usr/bin/ และ /usr/local/bin/ เป็น root:

# cp mhddfs /usr/bin/
# cp mhddfs /usr/local/bin/

พร้อมแล้ว mhddfs พร้อมใช้งาน

วิธีใช้ Mhddfs?

1. ดู HDD ทั้งหมดที่ mount อยู่ในระบบ:

$ df -h

รวมหลายไดรฟ์เป็นที่จัดเก็บเสมือนเดียวด้วย MergerFS – คู่มือสำหรับผู้เริ่มต้น

ตัวอย่างเอาต์พุต

Filesystem Size Used Avail Use% Mounted on
/dev/sda1 511M 132K 511M 1% /boot/efi
/dev/sda2 451G 92G 336G 22% /
/dev/sdb1 1.9T 161G 1.7T 9% /media/avi/BD9B-5FCE
/dev/sdc1 555M 555M 0 100% /media/avi/Debian 8.1.0 M-A 1

สังเกตชื่อ 'Mount Point' ที่นี่ เราจะใช้ในภายหลัง

2. สร้างไดเรกทอรี /mnt/virtual_hdd ที่จะรวมระบบไฟล์ทั้งหมด:

# mkdir /mnt/virtual_hdd

3. จากนั้น mount ระบบไฟล์ทั้งหมด ไม่ว่าจะเป็น root หรือ user ที่เป็นสมาชิกกลุ่ม FUSE:

# mhddfs /boot/efi, /, /media/avi/BD9B-5FCE/, /media/avi/Debian\ 8.1.0\ M-A\ 1/ /mnt/virtual_hdd -o allow_other

รวมหลายไดรฟ์เป็นที่จัดเก็บเสมือนเดียวด้วย MergerFS – คู่มือสำหรับผู้เริ่มต้น

หมายเหตุ: เราใช้ชื่อ Mount Point ของ HDD ทั้งหมด ในกรณีของคุณจะต่างออกไป สังเกตตัวเลือก "-o allow_other" ทำให้ virtual file system นี้มองเห็นได้โดยทุกคน ไม่ใช่แค่ผู้สร้าง

4. รัน "df -h" ดูระบบไฟล์ทั้งหมด ควรมี virtual filesystem ที่เพิ่งสร้าง

$ df -h

รวมหลายไดรฟ์เป็นที่จัดเก็บเสมือนเดียวด้วย MergerFS – คู่มือสำหรับผู้เริ่มต้น

คุณสามารถทำทุกอย่างกับ Virtual File System ที่สร้างได้เหมือนกับ Mounted Drive ปกติ

5. เพื่อสร้าง Virtual File system นี้ทุกครั้งที่ boot ให้เพิ่มบรรทัดด้านล่าง (ในกรณีของคุณจะต่างออกไป ขึ้นอยู่กับ mount point) ที่ท้ายไฟล์ /etc/fstab เป็น root:

mhddfs# /boot/efi, /, /media/avi/BD9B-5FCE/, /media/avi/Debian\ 8.1.0\ M-A\ 1/ /mnt/virtual_hdd fuse defaults,allow_other 0 0

6. หากต้องการเพิ่ม/ลบไดรฟ์ใหม่ใน Virtual_hdd ให้ mount ไดรฟ์ใหม่ คัดลอกเนื้อหาจาก mount point /mnt/virtual_hdd, un-mount โวล्यูม, Eject ไดรฟ์ที่ต้องการลบ และ/หรือ mount ไดรฟ์ใหม่ที่ต้องการเพิ่ม Mount ระบบไฟล์ทั้งหมดภายใต้ Virtual_hdd ด้วยคำสั่ง mhddfs และเสร็จสิ้น

วิธี Un-Mount Virtual_hdd?

การ unmount virtual_hdd ง่ายมาก:

# umount /mnt/virtual_hdd

รวมหลายไดรฟ์เป็นที่จัดเก็บเสมือนเดียวด้วย MergerFS – คู่มือสำหรับผู้เริ่มต้น

สังเกตว่าเป็น umount ไม่ใช่ unmount ผู้ใช้หลายคนพิมพ์ผิด

ขอจบครับ ตอนนี้ผมกำลังทำบทความอีกเรื่องที่คุณจะชอบ อ่านต่อได้ที่ Tecmint ให้ความคิดเห็นมีค่าในคอมเมนต์ด้านล่าง Like และ share ช่วยเราเผยแพร่ได้