Linux Server Deployment & SSH Mastery · บทเรียน

การจัดการโวลุ่มเชิงตรรกะ (LVM)

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

บทเรียน 4 จาก 413 ขั้นตอน

การจัดการโวลุ่มเชิงตรรกะ (LVM) เป็นบทเรียน Linux Server Deployment & SSH Mastery ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Linux Server Deployment & SSH Mastery และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Linux Server Deployment & SSH Mastery มีบทเรียนทั้งหมด 4 บทเรียน

ข้อจำกัดของพาร์ทิชันแบบตายตัว

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

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

สามชั้นของ LVM

LVM มีแนวคิดสามอย่างที่ซ้อนต่อกัน:

  • Physical Volume (PV) — ดิสก์หรือพาร์ทิชันที่มอบให้ LVM จัดการ
  • Volume Group (VG) — พื้นที่รวมที่ประกอบด้วย PV อย่างน้อยหนึ่งรายการ
  • Logical Volume (LV) — 'พาร์ทิชัน' ที่ยืดหยุ่นซึ่งแบ่งออกมาจาก VG

คุณสามารถฟอร์แมตและเมานต์ LV ได้เหมือนพาร์ทิชันทั่วไป

การสร้าง Physical Volume

ขั้นตอนแรกคือกำหนดให้ดิสก์เป็น PV ด้วย pvcreate คำสั่งนี้จะเขียนข้อมูลเมทาดาทาของ LVM ลงในดิสก์

pvs ใช้แสดงรายการ physical volume ของคุณ

sudo pvcreate /dev/sdb /dev/sdc
sudo pvs

การสร้าง Volume Group

ถัดไป ให้รวม PV เป็น VG ด้วย vgcreate และกำหนดชื่อให้กับกลุ่ม ความจุของ VG เท่ากับผลรวมความจุของ PV ทั้งหมด

vgs ใช้แสดง volume group และพื้นที่ว่างของแต่ละกลุ่ม

sudo vgcreate data_vg /dev/sdb /dev/sdc
sudo vgs

การสร้าง Logical Volume

ตอนนี้ให้แบ่ง logical volume จากกลุ่มด้วย lvcreate ระบุขนาดด้วย -L (หรือใช้ -l 100%FREE เพื่อใช้พื้นที่ว่างที่เหลือทั้งหมด) และระบุชื่อด้วย -n

sudo lvcreate -L 20G -n web_lv data_vg
sudo lvs

การฟอร์แมตและเมานต์ LV

LV ทำงานเหมือนอุปกรณ์บล็อกทั่วไป โดยมีพาธเป็น /dev/<vg>/<lv> ให้ฟอร์แมตอุปกรณ์ก่อน แล้วจึงเมานต์ไว้ในตำแหน่งที่ต้องการใช้พื้นที่จัดเก็บ

sudo mkfs.ext4 /dev/data_vg/web_lv
sudo mkdir -p /srv/web
sudo mount /dev/data_vg/web_lv /srv/web

การขยาย Logical Volume

นี่คือคุณสมบัติเด่นของ LVM หาก VG มีพื้นที่ว่าง ให้ขยาย LV ด้วย lvextend และขยายระบบไฟล์ไปพร้อมกันโดยใช้ -r ได้ โดยที่ระบบยังคงเมานต์อยู่

sudo lvextend -L +10G -r /dev/data_vg/web_lv

การเพิ่มดิสก์ในพื้นที่รวม

VG ไม่มีพื้นที่ว่างแล้วใช่หรือไม่ ให้เพิ่มดิสก์ใหม่โดยกำหนดให้เป็น PV แล้วขยาย VG ด้วย vgextend ความจุใหม่จะพร้อมใช้งานสำหรับ LV ทั้งหมดในกลุ่ม

sudo pvcreate /dev/sdd
sudo vgextend data_vg /dev/sdd
sudo vgs

สแนปช็อต

LVM สามารถสร้าง สแนปช็อต ของ LV ณ ช่วงเวลาใดเวลาหนึ่งได้ เหมาะอย่างยิ่งสำหรับการสำรองข้อมูลอย่างปลอดภัย สแนปช็อตจะเริ่มต้นด้วยขนาดเล็กและจัดเก็บเฉพาะบล็อกที่มีการเปลี่ยนแปลง

สำรองข้อมูลจากสแนปช็อต แล้วลบสแนปช็อตเมื่อเสร็จเรียบร้อย

sudo lvcreate -L 2G -s -n web_snap /dev/data_vg/web_lv
# ...take backup from the snapshot...
sudo lvremove /dev/data_vg/web_snap

การทำให้จุดเมานต์คงอยู่ถาวร

เช่นเดียวกับระบบไฟล์ทั่วไป ให้เพิ่ม LV ลงใน /etc/fstab เพื่อให้ระบบเมานต์อัตโนมัติขณะบูต การใช้พาธของ device-mapper หรือ UUID ของอุปกรณ์ก็ใช้ได้เช่นกัน

/dev/data_vg/web_lv  /srv/web  ext4  defaults  0  2

แนวทางปฏิบัติที่ดี

ใช้ LVM ให้ราบรื่น:

  • เหลือพื้นที่ว่างบางส่วนใน VG สำหรับสแนปช็อตและการขยายพื้นที่
  • ใช้ lvextend -r เสมอ เพื่อให้ระบบไฟล์ขยายตามไปด้วย
  • ตั้งชื่อ VG และ LV ให้สื่อความหมาย (เช่น data_vg/web_lv)
  • สร้างสแนปช็อตก่อนการอัปเกรดที่มีความเสี่ยง

ตรวจสอบความเข้าใจอย่างรวดเร็ว

ทดสอบความเข้าใจเกี่ยวกับ LVM ของคุณ

ทบทวน

ขณะนี้คุณสามารถจัดการพื้นที่จัดเก็บที่ยืดหยุ่นด้วย LVM ได้แล้ว:

  • pvcreate → vgcreate → lvcreate เพื่อสร้างโครงสร้างทั้งหมด
  • lvextend -r เพื่อขยายโวลุมขณะระบบยังทำงานอยู่
  • vgextend เพื่อเพิ่มดิสก์ในพื้นที่รวม
  • ใช้สแนปช็อตสำหรับการสำรองข้อมูลอย่างปลอดภัย

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

เริ่มต้นได้ฟรี

เรียนรู้ Linux Server Deployment & SSH Mastery ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
12
บทเรียน
48

คำถามที่พบบ่อย

บทเรียน “การจัดการโวลุ่มเชิงตรรกะ (LVM)” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การจัดการโวลุ่มเชิงตรรกะ (LVM)” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Linux Server Deployment & SSH Mastery ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Linux Server Deployment & SSH Mastery มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การจัดการโวลุ่มเชิงตรรกะ (LVM)”

ก้าวข้ามพาร์ติชันแบบตายตัวด้วย LVM รวมดิสก์จริงเป็นพูล แบ่งโวลุ่มเชิงตรรกะที่ยืดหยุ่น และปรับขนาดพื้นที่จัดเก็บได้ทันที เพื่อให้เซิร์ฟเวอร์ขยายตัวได้โดยไม่ต้องหยุดทำงานหรือแบ่งพาร์ติชันใหม่ คุณปฏิบัติ Linux Server Deployment & SSH Mastery ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Linux Server Deployment & SSH Mastery หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Linux Server Deployment & SSH Mastery บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “การจัดการโวลุ่มเชิงตรรกะ (LVM)” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Linux Server Deployment & SSH Mastery นี้ได้ไหม

ได้ บทเรียน Linux Server Deployment & SSH Mastery ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การแบ่งพาร์ติชันและจัดรูปแบบดิสก์
  2. การเมานต์ระบบไฟล์
  3. การตรวจสอบการใช้งานดิสก์
  4. การจัดการโวลุ่มเชิงตรรกะ (LVM)
← กลับไปที่ Linux Server Deployment & SSH Mastery