مدیریت پیشرفته دیسک با LVM: ایجاد، گسترش و کوچکسازی Volume ها
پارتیشنبندی سنتی دیسک محدودیتهای زیادی دارد؛ برای مثال تغییر اندازه یک پارتیشن معمولی بدون از دست دادن داده کار سادهای نیست. LVM (Logical Volume Management) با ایجاد یک لایه انتزاعی بین دیسک فیزیکی و فایلسیستم، انعطافپذیری بسیار بیشتری برای مدیریت فضای ذخیرهسازی فراهم میکند.
مفاهیم پایه LVM
| مفهوم | توضیح |
|---|---|
| Physical Volume (PV) | یک دیسک یا پارتیشن فیزیکی که به LVM معرفی میشود |
| Volume Group (VG) | مجموعهای از یک یا چند PV که فضای ذخیرهسازی مشترک را تشکیل میدهند |
| Logical Volume (LV) | بخشی از فضای VG که بهعنوان یک پارتیشن قابل استفاده و فرمتشدنی است |
ایجاد یک LVM از صفر
# شناسایی دیسک به عنوان Physical Volume
sudo pvcreate /dev/sdb
# ایجاد Volume Group
sudo vgcreate data_vg /dev/sdb
# ایجاد Logical Volume با حجم مشخص
sudo lvcreate -L 50G -n data_lv data_vg
# فرمت و مانت کردن
sudo mkfs.ext4 /dev/data_vg/data_lv
sudo mount /dev/data_vg/data_lv /mnt/dataگسترش (Extend) یک Logical Volume
یکی از بزرگترین مزایای LVM، امکان افزایش فضای یک Volume بدون نیاز به خاموش کردن سیستم است:
# افزودن دیسک جدید به Volume Group
sudo vgextend data_vg /dev/sdc
# افزایش حجم Logical Volume
sudo lvextend -L +20G /dev/data_vg/data_lv
# اعمال تغییر روی فایلسیستم (برای ext4)
sudo resize2fs /dev/data_vg/data_lvکوچکسازی (Shrink) یک Logical Volume
کوچکسازی نسبت به گسترش پرخطرتر است و باید با احتیاط و پس از بکاپگیری کامل انجام شود:
sudo umount /mnt/data
sudo e2fsck -f /dev/data_vg/data_lv
sudo resize2fs /dev/data_vg/data_lv 30G
sudo lvreduce -L 30G /dev/data_vg/data_lvاستفاده از Snapshot برای بکاپ لحظهای
LVM امکان گرفتن Snapshot از یک Volume را در یک لحظه مشخص فراهم میکند که برای بکاپگیری بدون توقف سرویس بسیار کاربردی است:
sudo lvcreate -L 5G -s -n data_snap /dev/data_vg/data_lvارتباط LVM با پارتیشنبندی پایه
پیش از کار با LVM، آشنایی با مفاهیم پایه پارتیشنبندی و فرمت دیسک در لینوکس ضروری است؛ این مبانی در مقاله آموزش پارتیشنبندی و فرمت کردن دیسک در لینوکس پوشش داده شده است. همچنین در کنار استفاده از Snapshot، داشتن یک استراتژی بکاپ خارج از سرور نیز توصیه میشود که در مقاله بکاپگیری و Disaster Recovery در سرورهای لینوکسی شرح داده شده است.
جمعبندی
LVM با ارائه انعطافپذیری در گسترش، کوچکسازی و گرفتن Snapshot از فضای دیسک، ابزاری ضروری برای مدیران سیستم در محیطهای تولیدی است که نیاز به تغییر مداوم ظرفیت ذخیرهسازی دارند.
زمانبندی خودکار عملیات LVM
بسیاری از عملیات LVM مانند گرفتن Snapshot دورهای میتوانند بهجای اجرای دستی، از طریق ابزارهای زمانبندی لینوکس بهصورت خودکار در بازههای مشخص اجرا شوند. مقایسه کامل Cron Jobs و Systemd Timers برای این منظور در مقاله زمانبندی وظایف در لینوکس آمده است.