آموزش افزایش فضای دیسک در سیستم عامل های مختلف

آموزش افزایش فضای دیسک در سیستم عامل های مختلف

حدود ۶ دقیقه مطالعه

افزایش فضای دیسک یکی از نیازهای رایج در مدیریت سرورها است که ممکن است به دلایل مختلفی مانند افزایش حجم داده‌ها، نیاز به ذخیره‌ سازی بیشتر یا ارتقای سیستم ، مورد نیاز باشد. در این مقاله، روش‌های افزایش فضای دیسک در سیستم‌عامل‌ های لینوکس و ویندوز سرور شرح داده شده است. برای بزرگ کردن یک پارتیشن موجود در ویندوز، extend کردن پارتیشن ویندوز مسیر Disk Management را نشان می‌دهد.

تشخیص پارتیشن بندی lvm  از standard :

برای تشخیص اینکه آیا هارد دیسک یا یک پارتیشن خاص از نوع LVM (Logical Volume Manager) است یا از نوع استاندارد (پارتیشن‌های معمولی)، می‌توانید از دستورات زیر در لینوکس استفاده کنید:

۱٫ بررسی لیست دیسک‌ها و پارتیشن‌ها

ابتدا لیست دیسک‌ها و پارتیشن‌ها را مشاهده کنید:

Lsblk

ستون TYPE مشخص می‌کند که آیا پارتیشن‌ها از نوع lvm  هستند یا استاندارد.

۲٫ بررسی وجود ولوم‌های LVM

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

sudo lvdisplay

این دستور اطلاعات مربوط به ولوم‌های LVM (مانند نام ولوم، گروه ولوم، اندازه و وضعیت) را نشان می‌دهد. اگر خروجی نشان داد، سیستم از LVM استفاده می‌کند.

۳٫ بررسی گروه‌های ولوم (Volume Groups)

برای مشاهده گروه‌های ولوم LVM:

sudo vgdisplay

اگر گروه ولومی شناسایی شد (مثل vg-root)سیستم از LVM استفاده می‌کند.

۴٫ بررسی فیزیکی پارتیشن‌های LVM

برای مشاهده دیسک‌های فیزیکی که به LVM اختصاص داده شده‌اند:

sudo pvdisplay

این دستور اطلاعات مربوط به ولوم‌های فیزیکی (Physical Volumes) مانند نام دستگاه و حجم را نشان می‌دهد.

۵٫ استفاده از فایل سیستم

برای بررسی فایل سیستم استفاده‌شده روی یک پارتیشن خاص، از دستور زیر استفاده کنید:

sudo file -s /dev/sda2

اگر خروجی شامل عبارتی مثل LVM2_member بود، آن پارتیشن بخشی از LVM است.

مثال نتیجه‌گیری:

  1. اگر پارتیشن در خروجی lsblk یا file -s به عنوان lvm نشان داده شود، این پارتیشن از نوع LVM است. معرفی کامل‌تر این دستور در معرفی دستور lsblk آمده است.
  2. اگر پارتیشن به عنوان ext4, xfs,  یا نوع دیگری از فایل سیستم نشان داده شود و اطلاعاتی از LVM نباشد، استاندارد است.

افزایش فضای دیسک در لینوکس  بصورت استاندارد

ابتدا وضعیت دیسک فعلی را با کامند زیر بررسی کنید:

lsblk

برای مشاهده پارتیشن‌ها و سیستم فایل‌ها:

df -h

دستورات اصلی fdisk

l – مشاهده لیست پارتیشن ها

p – پرینت جدول پارتیشن

n – ایجاد پارتیشن جدید

d – حذف پارتیشن

q – خروج بدون ذخیره تغییرات

w – نوشتن پارتیشن جدید در دیسک

افزودن دیسک جدید

– نحوه پارتیشن بندی با fdisk :

قبل از این که پارتیشن جدید ایجاد کنیم ،ابتدا میبایست وضعیت دیسک و پارتیشن ها را بررسی کنید تا از میزان فضای خالی دیسک مطمئن شوید.

پس دستور زیر را اجرا کنید:

Sudo fdisk -l

خروجی دستور fdisk -l در ترمینال لینوکس و فهرست دیسک‌ها و پارتیشن‌های سرور

نکته: اگر اسم خود دیسک sda باشد، پارتیشن هایی که برای آن ایجاد خواهند شد  sda1،    sda2 ، sda3  و sda4 نامگذاری می شوند.

پارتیشن‌بندی دیسک :

برای پارتیشن‌بندی از ابزارهایی مانند fdisk  یا parted  استفاده کنید:

sudo fdisk /dev/sda

اجرای دستور fdisk روی دیسک dev/sda/ و ورود به محیط تعاملی این ابزار

از آنجایی که درنظر داریم تا یک پارتیشن جدید ایجاد کنیم از گزینه n  استفاده کنید.

انتخاب گزینه n در ابزار fdisk برای ایجاد یک پارتیشن جدید

حالا میبایست پارتیشن های primary  را ایجاد نمایید پس p را وارد کنید ، سپس باید از بین اعداد ۲ تا ۴ انتخاب کنید.

انتخاب نوع پارتیشن primary با گزینه p و تعیین شماره پارتیشن در fdisk

بعد ، اولین سکتور را وارد کنید، بهتر است همان مقدار پیش فرض را وارد شود.

تعیین اولین سکتور پارتیشن جدید در fdisk با پذیرش مقدار پیش‌فرض

حال باید سایز پارتیشن را مشخص کنید که میتوان برای اندازه حافظه پارتیشن از مگابایت (M)  یا گیگابایت (G) استفاده کرد.

تعیین اندازه پارتیشن جدید در fdisk بر حسب مگابایت یا گیگابایت

برای مثال اگر بخواهیم پارتیشن ۲ گیگابایتی ایجاد شود باید 2G+ وارد شود.

نوشتن روی دیسک

برای ذخیره تغییرات بر روی دیسک، آپشن w را وارد نمایید.

وارد کردن مقدار G2+ در fdisk برای ساخت پارتیشن دو گیگابایتی و نوشتن روی دیسک

برای بررسی موفقیت آمیز بودن ایجاد پارتیشن جدید می توانیم از دستور زیر استفاده کنید.

sudo fdisk -l

افزایش فضای دیسک درلینوکس بصورت lvm

در لینوکس قبل از هر اقدامی حتما از سرور خود بکاپ تهیه نمایید تا دچار مشکل نشوید.
برای ارتقا دیسک به شرح ذیل اقدام میکنیم برای مثال در مثال پایین هارد قبلی ۳۵ گیگ بود که به ۶۰ گیگ ارتقا می یابد و قرار است تا به پوشه / اضافه شود.

خروجی دستور fdisk -l پس از ارتقای فضای هارد از ۳۵ به ۶۰ گیگابایت

با این گزارش میبینیم که centos-root مقدار ۳۷ گیگ هست و باقی وجود دارد ولی پارتیشن بندی نشده است :

خروجی نشان‌دهنده اینکه پارتیشن centos-root حدود ۳۷ گیگابایت است و باقی فضا پارتیشن‌بندی نشده

پارتیشن کلی /dev/sda است پس ابتدا انتخاب میکنیم و سپس print میکنیم و وضعیت را مشاهده میکنیم :

انتخاب دیسک dev/sda/ در ابزار parted و اجرای دستور print برای مشاهده وضعیت پارتیشن‌ها

اقدام به ایجاد پارتیشن میکنیم :

ایجاد پارتیشن جدید در ابزار parted روی دیسک سرور لینوکس

پارتیشن پرایمری را انتخاب میکنیم :

انتخاب نوع پارتیشن primary در ابزار parted

به صورت دیفالت Enter را میزنیم :

پذیرفتن مقدار پیش‌فرض نقطه شروع پارتیشن با زدن کلید Enter در parted

دوباره به صورت دیفالت Enter را میزنیم :

پذیرفتن مقدار پیش‌فرض پایان پارتیشن با زدن دوباره کلید Enter در parted

پارتیشن ساخته شد و میبایست پارتیشن بندی لینوکسی بکنیم که به شرح ذیل خواهد بود :

انتخاب شماره ۴ به عنوان مقدار پیش‌فرض برای پارتیشن‌بندی لینوکسی

دیفالت را انتخاب میکنیم که شماره ۴ هست :

تعیین نوع پارتیشن لینوکس با کد e8 برای استفاده در LVM

نوع پارتیشن لینوکس برای اضافه کردن e8 باید باشد:

پیغام تایید انجام شدن تنظیم نوع پارتیشن در ترمینال لینوکس

انجام شد :

ذخیره تغییرات جدول پارتیشن روی دیسک با وارد کردن گزینه w

باید تغییرات ایجاد شده را با w ذخیره کنیم :

نمایش خطا هنگام ذخیره تغییرات و لزوم خروج از این حالت با ctrl+c

همینطور که میبینید ارور داد و باید از این mode با ctrl+c خارج بشویم(ممکنه خودش به حالت خارج شده در بیاد پس نیاز نیست بزنیم اگر از حالت قبلی خارج شد ) و دستور partprobe را بزنیم :

اجرای دستور partprobe برای اعمال جدول پارتیشن جدید بدون ریستارت سرور

در این حالت انجام شد و مشکلوجود نداشت اما اگر ارور داد یکبار باید reboot میکنیم و ادامه مراحل را انجام میدهیم.

پس از ساخت پارتیشن میبایست مراحل زیر را انجام دهیم:

ابتدا میبایست ببینیم پارتیشن قبلی ساخته شده چه چیزهایی بوده است اگر ببینید sda1 تا sda3 را داشتیم و اکنون یک fdisk -l میزنیم ببینیم چه چیزی اضافه شده است :

خروجی نشان‌دهنده اضافه شدن پارتیشن dev/sda4/ به دیسک سرور

همانطور که میبینید /dev/sda4 اضافه شده است و باید pv مربوطه را بسازیم :

ساخت Physical Volume روی پارتیشن dev/sda4/ با دستور pvcreate

با دستور vgs مقدار اسم voluge group را مشاهده میکنیم :

خروجی دستور vgs برای مشاهده نام Volume Group موجود روی سرور

همانطور که میبینید volume group که داریم centos است .

اکنون باید pv ساخته شده را به volume group مربوطه بدهیم :

افزودن Physical Volume جدید به Volume Group با نام centos

اکنون اگر مجدد vgs بگیرید خواهید دید که اضافه شده است :

خروجی دستور vgs پس از افزوده شدن ۲۵ گیگابایت فضای آزاد به مقدار VFree

۲۵گیگ که اضافه شده است به بخش VFree اضافه شده است و این مرحله به اتمام میرسد.

پس از ساخت پارتیشن و سپس ایجاد pv وlv  میبایست به شرح ذیل اقدام بکنید :

ابتدا volume group ها را مشاهده میکنیم :

مشاهده Volume Group ها که نشان می‌دهد تنها root عضو گروه centos است

همانطور که میبینید فقط root را داریم که عضو centos هم هست .

اگر df -h بگیریم هم همین root را خواهیم دید :

خروجی دستور df -h که تنها پارتیشن root را نمایش می‌دهد

مقدار centos-root که میبینید همین مقداریست که میخواهیم افزایش بدهیم ، اکنون باید به شرح ذیل volume group را نیز اکستند بکنیم.

ابتدا باید جزئیات بیشتری را مشاهده بکنیم :

مشاهده جزئیات Volume Group پیش از گسترش آن در سرور لینوکس

همانطور که میبینید Free  PE / Size       ۶۳۹۹ / <25.00 GiB را داریم :

نمایش مقدار Free PE / Size برابر ۶۳۹۹ و حدود ۲۵ گیگابایت فضای آزاد در Volume Group

انجام شد و اکنون باید این موارد را اعمال بکنیم :

گسترش Logical Volume و اختصاص فضای آزاد به پارتیشن root

اکنون میتوانید مشاهده بکنید که هارد اضافه شد :

خروجی df -h پس از اعمال تغییرات که افزایش فضای دیسک را نشان می‌دهد

افزایش فضای دیسک در ویندوز سرور

برای این کار بر روی start در ویندوز کلیک راست کرده و بر رویDisk Management کلیک کنید.

نکته: در سرور های ورژن ۲۰۰۸ و ۲۰۰۳ باید Computer management را جستجو کرده و از طریق پنجره ی جدید بر روی بخش disk management را کلیک نمایید.

سپس بر روی قسمت Unallocated درایوی که قصد extend کردن آن را داریم کلیک راست کرده و گزینه Extend volume را انتخاب کنید.

کلیک راست روی فضای Unallocated در Disk Management ویندوز سرور و انتخاب گزینه Extend Volume

سپس بر روی  Next و در انتها بر روی Finish کلیک میکنیم.

آموزش‌های مرتبط

ارسال نظر