ค้นหาเว็บไซต์

วิธีสร้างและจัดการระบบไฟล์ Btrfs ใน Linux


ระบบไฟล์ Btrfs หรือ B-tree เป็นระบบคัดลอกเมื่อเขียน (COW) ที่ได้รับอนุญาตจาก GPL ได้รับการพัฒนาโดยบริษัทหลายแห่งดังต่อไปนี้ Oracle, Redhat, Fujitsu, Intel, Facebook , Linux Foundation, Suse ฯลฯ Brtfs จะรองรับสูงสุด 16 exbibyte และขนาดไฟล์สูงสุด 8 exbibyte เนื่องจากข้อจำกัดของเคอร์เนล

ไฟล์สามารถสร้างเป็นอักขระใดก็ได้ ยกเว้น “/” และ NULL Btrfs มีคุณสมบัติการรักษาตัวเองและมีความสามารถในการขยายหลายวอลุ่ม ใน Btrfs เราสามารถย่อขนาด ขยายระบบไฟล์ เพิ่มหรือลบอุปกรณ์บล็อกในโหมดออนไลน์

นอกจากนี้ยังมีไดรฟ์ข้อมูลย่อยด้วย ไดรฟ์ข้อมูลย่อยไม่ใช่อุปกรณ์บล็อกแยกต่างหาก เราสามารถสร้างสแน็ปช็อตและกู้คืนสแน็ปช็อตสำหรับไดรฟ์ข้อมูลย่อยเหล่านั้นได้ แทนที่จะใช้ LVM เราสามารถใช้ btrfs ได้ ระบบไฟล์ Btrfs ยังอยู่ระหว่างการทดสอบซึ่งยังไม่รวมอยู่ในการใช้งานจริง หากเรามีข้อมูลสำคัญใดๆ ไม่แนะนำให้ใช้ btrfs ในสภาพแวดล้อมการผลิตในขณะนี้

Btrfs เปิดตัวเวอร์ชัน 3.18 ภายในเดือนที่แล้ว ธันวาคม 2014 พร้อมด้วยคุณลักษณะใหม่หลายประการ

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

btrfs เวอร์ชันใหม่นี้เต็มไปด้วยคุณสมบัติใหม่มากมายดังนี้:

  1. โดยค่าเริ่มต้น คุณลักษณะ mkfs skin-metadata จะพร้อมใช้งานจากเคอร์เนล 3.10
  2. เพื่อซ่อมแซมระบบไฟล์ที่เสียหายอย่างรุนแรงด้วยความระมัดระวัง
  3. เพิ่มตัวเลือกการแปลงเพื่อแสดงความคืบหน้า
  4. ความสามารถในการเชื่อมโยงไฟล์ที่สูญหายไปยัง Lost+found นี่คือการแก้ไขข้อผิดพลาดเคอร์เนลล่าสุด
  5. เพื่อดูภาพรวมการใช้งานระบบไฟล์มากกว่า df
  6. และการแก้ไขข้อบกพร่องอื่นๆ อีกมากมายพร้อมและปรับปรุงเอกสารประกอบ
  7. วอลุ่มย่อยสำหรับระบบไฟล์
การตั้งค่าสภาพแวดล้อมของฉัน
Hostname	:	btrfs.tecmintlocal.com
IP addrress 	:	192.168.0.120
Disk Size Used	:	8GB [/dev/sdb]

ขั้นตอนที่ 1: การติดตั้งและสร้างระบบไฟล์ Btrfs

1. ใน Linux รุ่นล่าสุดส่วนใหญ่ในปัจจุบัน แพ็คเกจ btrfs มาพร้อมกับการติดตั้งล่วงหน้า ถ้าไม่เช่นนั้น ให้ติดตั้งแพ็คเกจ btrfs โดยใช้คำสั่งต่อไปนี้

yum install btrfs-progs -y		[On RedHat based Distro's]
sudo apt-get install btrfs-tools -y	[On Debian based Distro's]

2. หลังจากติดตั้งแพ็คเกจ btrfs บนระบบแล้ว ตอนนี้เราจำเป็นต้องเปิดใช้งานโมดูลเคอร์เนลสำหรับ btrfs โดยใช้คำสั่งด้านล่าง

modprobe btrfs

3. ที่นี่ เราใช้ดิสก์เพียงดิสก์เดียว (เช่น /dev/sdb) ในดิสก์นี้ เราจะตั้งค่าโลจิคัลวอลุ่มและสร้างไฟล์ btrfs- ระบบ. ก่อนที่จะสร้างมัน เรามาตรวจสอบดิสก์ที่เชื่อมต่อกับระบบก่อน

ls -l /dev | grep sd

4. เมื่อคุณได้ยืนยันว่าดิสก์เชื่อมต่อกับระบบอย่างถูกต้องแล้ว ตอนนี้ก็ถึงเวลาสร้างพาร์ติชันสำหรับ LVM เราจะใช้คำสั่ง 'fdisk' เพื่อสร้างพาร์ติชันบนดิสก์ /dev/sdb ทำตามคำแนะนำตามที่อธิบายด้านล่างเพื่อสร้างพาร์ติชันใหม่บนไดรฟ์

fdisk -c /dev/sdb
  1. กด 'n' เพื่อสร้างพาร์ติชันใหม่
  2. จากนั้นเลือก 'P' สำหรับพาร์ติชันหลัก
  3. จากนั้นเลือกหมายเลขพาร์ติชันเป็น 1
  4. กำหนดค่าเริ่มต้นโดยเพียงกดปุ่ม Enter สองครั้ง
  5. จากนั้นกด 'P' เพื่อพิมพ์พาร์ติชันที่กำหนด
  6. กด 'L' เพื่อแสดงรายการประเภทที่มีอยู่ทั้งหมด
  7. พิมพ์ 't' เพื่อเลือกพาร์ติชัน
  8. เลือก '8e' สำหรับ Linux LVM แล้วกด Enter เพื่อใช้
  9. จากนั้นใช้ 'p' อีกครั้งเพื่อพิมพ์การเปลี่ยนแปลงที่เราได้ทำไว้
  10. ใช้ 'w' เพื่อเขียนการเปลี่ยนแปลง

5. เมื่อคุณสร้างพาร์ติชันสำเร็จแล้ว คุณต้องอัปเดตตารางพาร์ติชันที่เปลี่ยนเป็นเคอร์เนล เพื่อให้เราเรียกใช้คำสั่ง partprobe เพื่อเพิ่มข้อมูลดิสก์ลงในเคอร์เนลและ หลังจากนั้นให้แสดงรายการพาร์ติชั่นตามที่แสดงด้านล่าง

partprobe -s
ls -l /dev | grep sd

ตั้งค่าโลจิคัลวอลุ่ม

6. สร้างฟิสิคัลวอลุ่มและกลุ่มวอลุ่มบนดิสก์ /dev/sdb1 โดยใช้คำสั่ง pvcreate และ vgcreate

pvcreate /dev/sdb1
vgcreate tecmint_vg /dev/sdb1

7. สร้างโลจิคัลวอลุ่มในกลุ่มวอลุ่ม ที่นี่ฉันได้สร้างโลจิคัลวอลุ่มสองวอลุ่ม

lvcreate -L +2G -n tecmint_lv1 tecmint_vg
lvcreate -L +2G -n tecmint_lv2 tecmint_vg

8. แสดงรายการฟิสิคัลวอลุ่ม กลุ่มวอลุ่ม และโลจิคัลวอลุ่มที่สร้างขึ้น

pvs && vgs && lvs

การสร้างระบบไฟล์ Btrfs

9. ให้เราสร้างระบบไฟล์สำหรับโลจิคัลวอลุ่มของเราทันที

mkfs.btrfs /dev/tecmint_vg/tecmint_lv1

10. ถัดไป สร้างจุดเมานท์และเมานต์ระบบไฟล์

mkdir /mnt/tecmint_btrfs1
mount /dev/tecmint_vg/tecmint_lv1 /mnt/tecmint_btrfs1/

11. ตรวจสอบจุดเมานท์ด้วยความช่วยเหลือของคำสั่ง df

df -h

ขนาดที่มีจำหน่ายคือ 2 GB