آشنایی با سیستم مدیریت منطقی دیسک LVM

مدیریت منطقی دیسک LVM

Logical Volume Manager یا همان سیستم مدیریت منطقی دیسک LVM یک سیستم مدیریت دیسک انعطاف‌پذیر و پویا است که به کاربران اجازه می‌دهد تا به جای استفاده از پارتیشن‌های سنتی، فضای دیسک در لینوکس را به شکل منطقی مدیریت کنند.

با استفاده از سیستم مدیریت منطقی دیسک LVM، می‌توان به راحتی فضای دیسک را بین چندین پارتیشن تقسیم کرد یا پارتیشن‌ها را به صورت پویا تغییر اندازه داد و حتی دیسک‌های جدید را بدون نیاز به تغییرات بزرگ در سیستم فایل به آن اضافه کرد.

تفاوت سیستم مدیریت منطقی دیسک LVM با مدل‌های سنتی

سیستم مدیریت منطقی دیسک LVM یک مدل دیسک نیست، بلکه روشی برای مدیریت دیسک‌های فیزیکی است. دیسک‌های فیزیکی (مثل /dev/sda) به عنوان Physical Volume (PV) در LVM استفاده می‌شوند.

همچنین سیستم مدیریت منطقی دیسک LVM یک مدل جدیدی از پارتیشن‌ نیست، اما جایگزینی برای پارتیشن‌بندی سنتی ارائه می‌دهد. سیستم مدیریت منطقی دیسک LVM به جای پارتیشن‌بندی مستقیم دیسک‌های فیزیکی، از Logical Volumes (LV) استفاده می‌شود که می‌توانند روی یک یا چند دیسک فیزیکی توزیع شوند.

سیستم مدیریت منطقی دیسک LVM یک سیستم مدیریت برای ساخت و مدیریت Logical Volumes (LV) است. این والیوم‌ها را می‌توان مانند پارتیشن‌های سنتی استفاده کرد، اما با قابلیت‌های بیشتر مانند تغییر اندازه والیوم‌ها بدون نیاز به توقف سیستم.

کاربردهای اصلی سیستم مدیریت منطقی دیسک LVM

سیستم مدیریت منطقی دیسک LVM به شما اجازه می‌دهد تا پارتیشن‌ها (یا به عبارت دقیق‌تر “volume”) را به راحتی کوچک یا بزرگ کنید.
همچنین می‌توانید چندین دیسک فیزیکی را به یک فضای واحد منطقی (Volume Group) تبدیل کنید.
با LVM می‌توانید فضای دیسک را بدون ایجاد مشکل به دیسک‌های منطقی موجود اضافه کنید.
LVM امکان ایجاد اسنپ‌شات از داده‌ها برای پشتیبان‌گیری یا بازگشت به حالت قبلی را فراهم می‌کند.

اجزای اصلی سیستم مدیریت منطقی دیسک LVM

Physical Volume (PV): دیسک‌ها یا پارتیشن‌های فیزیکی که به LVM اضافه می‌شوند.
Volume Group (VG): گروهی از دیسک‌های فیزیکی که در کنار هم ترکیب شده و یک فضای منطقی را تشکیل می‌دهند.
Logical Volume (LV): پارتیشن‌های منطقی که از فضای موجود در Volume Group ایجاد می‌شوند.
مثال کاربردی:
فرض کنید می‌خواهید یک دیسک جدید به سرور خود اضافه کنید و آن را به یک Volume Group موجود در LVM اضافه کنید. برای این کار مراحل زیر را باید انجام دهید:

ایجاد یک Physical Volume (PV):

sudo pvcreate /dev/sdb

این دستور دیسک /dev/sdb را به یک PV تبدیل می‌کند.

ایجاد یک Volume Group (VG):

sudo vgcreate my_vg /dev/sdb

این دستور یک Volume Group جدید به نام my_vg با استفاده از دیسک فیزیکی /dev/sdb ایجاد می‌کند.

ایجاد یک Logical Volume (LV):

sudo lvcreate -L 10G -n lv-1 my-vg

پس از ساخت LV، می‌توانید با دستور زیر ساختار logical volume خود را تایید کنید:

sudo lvs

این دستور یک Logical Volume به نام my_lv با اندازه 10 گیگابایت در Volume Group my_vg ایجاد می‌کند.

فرمت و استفاده از Logical Volume:

sudo mkfs.ext4 /dev/my_vg/lv-1
sudo mount /dev/my_vg/lv-1 /mnt

این دستورات یک سیستم فایل ext4 روی Logical Volume ایجاد کرده و آن را در مسیر /mnt مانت می‌کنند.

روش ایجاد سیستم مدیریت منطقی دیسک LVM

برای ایجاد یک Linux Logical Volume Manager (LVM) و مدیریت دیسک‌های منطقی در لینوکس، باید مراحل زیر را انجام دهید. این روش شامل ایجاد Physical Volume (PV)، Volume Group (VG)، و سپس Logical Volume (LV) است. در این راهنما از یک دیسک جدید برای مثال استفاده می‌کنیم، اما شما می‌توانید از هر دیسکی که در اختیار دارید استفاده کنید.

مراحل ایجاد LVM

شناسایی دیسک جدید
قبل از شروع، مطمئن شوید که دیسک مورد نظر شما به سیستم متصل است. می‌توانید از دستور lsblk برای لیست کردن دیسک‌ها و پارتیشن‌ها استفاده کنید:

lsblk

خروجی به شما دیسک‌ها و پارتیشن‌های موجود را نشان می‌دهد. به عنوان مثال، فرض کنید دیسک جدید /dev/sdb است.

ایجاد Physical Volume (PV)
Physical Volume اولین لایه در LVM است که باید روی دیسک فیزیکی یا پارتیشن ایجاد شود. برای ایجاد PV روی دیسک جدید از دستور زیر استفاده کنید:

sudo pvcreate /dev/sdb

این دستور دیسک /dev/sdb را به یک Physical Volume تبدیل می‌کند. برای بررسی موفقیت این مرحله، می‌توانید از دستور زیر استفاده کنید:

sudo pvdisplay

این دستور اطلاعات PVهای موجود را نمایش می‌دهد.

ایجاد Volume Group (VG)
Volume Group ترکیبی از چند Physical Volume است که فضای ذخیره‌سازی منطقی را فراهم می‌کند. برای ایجاد VG از دستور زیر استفاده کنید:

sudo vgcreate my_vg /dev/sdb

در این مثال، یک Volume Group به نام my_vg ایجاد می‌شود. شما می‌توانید نام Volume Group را مطابق نیاز خود تغییر دهید. برای بررسی VGها، از دستور زیر استفاده کنید:

sudo vgdisplay

ایجاد Logical Volume (LV)
Logical Volume به عنوان پارتیشن‌های منطقی عمل می‌کند که از فضای Volume Group ساخته می‌شوند. برای ایجاد LV از دستور زیر استفاده کنید:

sudo lvcreate -L 10G -n lv-1 my_vg

این دستور یک Logical Volume به نام my_lv با اندازه 10 گیگابایت در Volume Group my_vg ایجاد می‌کند. برای بررسی LVها، می‌توانید از دستور زیر استفاده کنید:

sudo lvdisplay

sudo mkfs.ext4 /dev/my_vg/lv-1

بعد از فرمت کردن، می‌توانید آن را مانت کنید:

فرمت و مانت کردن Logical Volume
حالا که Logical Volume ایجاد شده است، باید آن را فرمت کنید و روی یک دایرکتوری مانت کنید. در این مثال از سیستم فایل ext4 استفاده می‌کنیم:

sudo mkdir /mnt/my_mount
sudo mount /dev/my_vg/lv-1 /mnt/my_mount

مانت خودکار Logical Volume در بوت
برای اینکه LV به صورت خودکار در هنگام بوت سیستم مانت شود، باید آن را به فایل /etc/fstab اضافه کنید. UUID مربوط به LV را می‌توانید با دستور زیر پیدا کنید:

sudo blkid /dev/my_vg/lv-1

سپس اطلاعات مربوطه را به فایل /etc/fstab اضافه کنید:

/dev/my_vg/lv-1 /mnt ext4 defaults 0 0

لغو مانت کردن LV

برای جدا کردن یک Logical Volume (LV) از سیستم، باید مراحل زیر را دنبال کنید:

ابتدا اطمینان حاصل کنید که LV شما مانت نیست. اگر مانت شده، آن را با دستور زیر لغو مانت کنید:

sudo umount /mnt

(به‌جای /mnt، مسیر مانت واقعی خود را جایگزین کنید).

حذف LV از فایل /etc/fstab
اگر LV به فایل /etc/fstab اضافه شده، باید خط مربوط به LV را حذف کنید تا هنگام بوت سیستم به‌صورت خودکار مانت نشود. فایل را با ویرایشگر مورد علاقه خود باز کنید:

sudo vi /etc/fstab

و خط مربوط به LV را حذف کنید.

غیرفعال کردن Logical Volume

پس از لغو مانت کردن، باید LV را غیرفعال کنید. برای این کار از دستور زیر استفاده کنید:

sudo lvchange -an /dev/my_vg/lv-1

این دستور LV را غیرفعال می‌کند.

حذف Logical Volume
برای حذف LV از سیستم، دستور زیر را اجرا کنید:

sudo lvremove /dev/my_vg/lv-1

این دستور LV مورد نظر شما را از Volume Group حذف می‌کند.

حذف Volume Group (در صورت نیاز)
اگر دیگر به Volume Group (VG) نیاز ندارید، می‌توانید آن را نیز حذف کنید:

sudo vgremove my_vg

حذف Physical Volume (در صورت نیاز)
در نهایت، اگر نیاز به حذف Physical Volume (PV) دارید، دستور زیر را وارد کنید:

sudo pvremove /dev/sdX

(در اینجا /dev/sdX باید با دیسک یا پارتیشن فیزیکی شما جایگزین شود).

با این مراحل، Logical Volume از سیستم جدا شده و منابع مربوطه آزاد می‌شوند.

نتیجه‌گیری:
با استفاده از سیستم مدیریت منطقی دیسک LVM، شما انعطاف‌پذیری بیشتری در مدیریت فضای ذخیره‌سازی خواهید داشت. این روش به شما امکان می‌دهد تا به راحتی دیسک‌های جدید اضافه کنید، اندازه‌ی پارتیشن‌ها را تغییر دهید و از امکاناتی مانند اسنپ‌شات‌ها بهره‌مند شوید.