Linux Logical Volume Manager (LVM) เป็นเครื่องมือสำหรับการจัดการระบบไฟล์และพาร์ติชั่นในระบบ Linux ทำให้สามารถปรับขนาดและจัดการพื้นที่ดิสก์ได้ง่ายขึ้น โดยมีองค์ประกอบหลักดังนี้:
องค์ประกอบของ LVM
File System
ระบบไฟล์อยู่บน Logical Volume โดยจะถูกฟอร์แมตให้เป็นชนิดไฟล์ระบบเฉพาะ เช่น vfat, xfs, ext4 และถูกเมาท์ได้ทุกที่ในระบบ
- ตัวอย่าง: /home, /mnt/backups
Logical Volumes (LV)
Logical Volume เป็นหน่วยที่กำหนดให้กับไฟล์ระบบ โดยแต่ละ LV จะอยู่ใน Volume Group หนึ่ง
- ตัวอย่าง: lv_home, lv_root, lv_backups
Volume Groups (VG)
Volume Group เป็นกลุ่มของ Physical Volume หนึ่งหรือหลายอัน
- ตัวอย่าง: vg_system, vg_others
Physical Volumes (PV)
Physical Volume เป็นดิสก์หรือพาร์ติชั่นที่ถูกกำหนดให้เป็น PV
- ตัวอย่าง: /dev/vda1, /dev/vda2, /dev/vda3, /dev/vda4, /dev/vda5
Partitions
พาร์ติชั่นเป็นส่วนที่แบ่งจากดิสก์และสามารถกำหนดให้เป็น PV ได้
- ตัวอย่าง: /dev/vda1, /dev/vda2
คำสั่งจัดการ Volume Group
คำสั่ง | คำอธิบาย |
---|---|
vgcreate | สร้าง Volume Group |
vgscan | ค้นหา Volume Group ทั้งหมด |
vgdisplay, vgs | แสดงข้อมูลของ Volume Group |
vgextend | เพิ่ม Physical Volume ให้กับ Volume Group |
vgremove | ลบ Volume Group |
vgrename | เปลี่ยนชื่อ Volume Group |
vgchange | เปลี่ยน Attribute ของ Volume Group |
vgck | ตรวจสอบความถูกต้องของ Volume Group |
vgmerge | รวม Volume Group |
vgsplit | ย้าย Physical Volume ไปยัง Volume Group ใหม่หรือตามที่มีอยู่ |
vgcfgbackup | สำรองการตั้งค่า Volume Group |
vgcfgrestore | กู้คืนการตั้งค่า Volume Group |
vgconvert | แปลงรูปแบบเมตาดาต้าของ Volume Group |
vgexport | ยกเลิกการลงทะเบียน Volume Group จากระบบ |
vgimport | ลงทะเบียน Volume Group ที่ส่งออกไว้กับระบบ |
vgimportclone | นำเข้า Volume Group จาก Physical Volume ที่โคลน |
vgmknodes | สร้างไฟล์พิเศษสำหรับอุปกรณ์ Volume Group ใน /dev |
คำสั่งจัดการ Physical Volume
คำสั่ง | คำอธิบาย |
---|---|
pvcreate | เริ่มต้นดิสก์หรือพาร์ติชั่นเพื่อใช้เป็น Physical Volume |
pvscan | สแกนดิสก์ทั้งหมดเพื่อหา Physical Volume |
pvdisplay, pvs | แสดงข้อมูลของ Physical Volume |
pvresize | ปรับขนาด Physical Volume |
pvmove | ย้าย extents จาก Physical Volume หนึ่งไปยังอีกอัน |
pvck | ตรวจสอบเมตาดาต้าบน Physical Volume |
pvremove | ลบ LVM label จาก Physical Volume |
pvchange | เปลี่ยน Attribute ของ Physical Volume |
คำสั่งจัดการ Logical Volume
คำสั่ง | คำอธิบาย |
---|---|
lvcreate | สร้าง Logical Volume |
lvscan | สแกนดิสก์ทั้งหมดเพื่อหา Logical Volume |
lvdisplay, lvs | แสดงข้อมูลของ Logical Volume |
lvextend | ขยายขนาด Logical Volume |
lvremove | ลบ Logical Volume |
lvrename | เปลี่ยนชื่อ Logical Volume |
lvchange | เปลี่ยน Attribute ของ Logical Volume |
lvreduce, lvresize | ลดและปรับขนาดของ Logical Volume |
lvconvert | แปลง Logical Volume จากแบบ linear เป็น mirrored |
ตัวอย่างการใช้คำสั่ง
สร้าง Physical Volumes
bash
$ sudo pvcreate /dev/vda1 /dev/vda2 /dev/vda3 /dev/vda4 /dev/vda5
สร้าง Volume Groups
bash
$ sudo vgcreate vg_system /dev/vda1 /dev/vda2
$ sudo vgcreate vg_others /dev/vda3 /dev/vda4 /dev/vda5
สร้าง Logical Volumes
bash
$ sudo lvcreate -L 20GB -n lv_home vg_system
$ sudo lvcreate -L 35GB -n lv_root vg_system
$ sudo lvcreate -L 70GB -n lv_backups vg_others
การใช้ LVM ทำให้สามารถจัดการพื้นที่ดิสก์ในระบบ Linux ได้ยืดหยุ่นและสะดวกยิ่งขึ้น ช่วยให้คุณสามารถปรับขนาดและจัดการพาร์ติชั่นได้อย่างง่ายดาย