CH-J Server Managerการจัดการเซิร์ฟเวอร์ผ่าน SSH
เมนู
คู่มือและบทความทั้งหมด →

LVM หรือพาร์ทิชันมาตรฐาน: ควรเลือกแบบใดสำหรับเซิร์ฟเวอร์

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

ความแตกต่างโดยสรุป

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

ดูว่าเซิร์ฟเวอร์ใช้อะไรอยู่ในขณะนี้

เริ่มจากอ่านผังการจัดเก็บปัจจุบัน คอลัมน์ TYPE และ FSTYPE แสดงพาร์ทิชัน, LVM, การเข้ารหัส และ RAID คำสั่ง LVM แสดงพื้นที่ว่างที่เหลือในกลุ่มโวลุ่ม เพราะ df ไม่แสดงพื้นที่ว่างในส่วนนั้น

lsblk -f
sudo pvs
sudo vgs
sudo lvs

เมื่อใดพาร์ทิชันมาตรฐานก็เพียงพอ

สำหรับ VPS ขนาดเล็กที่มีดิสก์เสมือนหนึ่งลูก พาร์ทิชันเรียบง่ายกว่าและมีจุดที่อาจเกิดปัญหาน้อยกว่า เมื่อผู้ให้บริการขยายดิสก์ ให้ขยายพาร์ทิชันสุดท้ายด้วย growpart แล้วจึงขยายระบบไฟล์ ข้อจำกัดคือพาร์ทิชันจะขยายได้เฉพาะเข้าไปในพื้นที่ว่างที่อยู่ถัดจากมันโดยตรง ดังนั้นพาร์ทิชัน swap หรือพาร์ทิชันอื่นที่อยู่ตรงนั้นจะขวางการขยาย

เมื่อใด LVM จึงคุ้มค่า

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

สร้างโวลุ่ม LVM

คำสั่งเหล่านี้ใช้ดิสก์ว่างและทำลายทุกอย่างที่อยู่บนดิสก์นั้น จึงต้องตรวจชื่ออุปกรณ์ซ้ำสองครั้งด้วย lsblk ควรเหลือพื้นที่บางส่วนในกลุ่มโวลุ่มไว้โดยไม่จัดสรร เพราะการขยายโวลุ่มภายหลังทำได้ง่าย แต่การย่อทำได้ยากกว่า XFS ไม่สามารถย่อได้เลย ส่วน ext4 จะย่อได้เมื่อยกเลิกการเมานต์แล้วเท่านั้น

sudo pvcreate /dev/sdX
sudo vgcreate data /dev/sdX
sudo lvcreate -L 20G -n app data
sudo mkfs.ext4 /dev/data/app

หากเปลี่ยนใจในภายหลัง

โดยทั่วไปไม่สามารถแปลงพาร์ทิชันที่มีข้อมูลเป็น LVM ณ ตำแหน่งเดิมด้วยเครื่องมือมาตรฐานได้ วิธีที่ใช้กันคือเพิ่มดิสก์ใหม่ สร้าง LVM บนนั้น คัดลอกข้อมูล แล้วเปลี่ยนไปใช้งาน ซึ่งต้องแก้ fstab และอาจต้องแก้การตั้งค่าบูตด้วย วางแผนโดยมีข้อมูลสำรองที่ตรวจสอบแล้วและทางเข้าคอนโซล รายละเอียดการบูตต่างกันตามดิสทริบิวชัน จึงมีโปรแกรมติดตั้งจำนวนมากที่เก็บ /boot ไว้นอก LVM

ดิสก์ใน CH-J Server Manager

Disk Manager ใน Alpha 0.1.1 แสดงดิสก์พร้อมชั้นต่าง ๆ รวมถึง LUKS, LVM, RAID และ ZFS หากไม่มี root รายการอุปกรณ์จะอ่านได้อย่างเดียวและไม่ครบถ้วน โดยสามารถโหลดใหม่ด้วย sudo ได้ การเปลี่ยนแปลงจะเข้าคิวเป็นแผนให้ตรวจทานก่อน และงานจะหยุดโดยไม่เปลี่ยนสิ่งใดหากผังการจัดเก็บเปลี่ยนไปนับตั้งแต่สร้างแผน ขั้นตอนที่อาจทำให้ข้อมูลสูญหายมีคำเตือนให้ทำข้อมูลสำรองแยกไว้ก่อน รองรับเฉพาะอุปกรณ์บล็อกของ Linux เท่านั้น

เอกสารโดยละเอียด

man: lvm →

man: lvcreate →

การปลดล็อกด้วยไบโอเมตริกและความปลอดภัย →