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

رضا عسگری 15 سپتامبر 2023 زمان خواندن: ~1 دقیقه

توجه: این مطلب قدیمی است و صرفا جهت آرشیو حفظ شده است. ممکن است امروزه برخی موارد یکسان نباشند.

swap فضایی روی هارد درایو که سیستم عامل لینوکس در صورتی که کل فضای رم پر بشه برای جلوگیری از کرش سیستم از اون استفاده میکنه. و مقداری از اطلاعاتی که قرار بود روی رم باشه رو روی اون نگه داری میکنه. قطعا اولین چیزی که به ‌‌ذهن میرسه اینه که این کار باعث کند شدن سیستم عامل میشه. اما اگر کمی دقت کنید کند شدن سیستم خیلی بهتر از اینه که سیستم کرش کنه و احتمالا شما مقداری از اطلاعات رو از دست بدید. در حالت کلی بهتره که swap کاملا خالی باشه مخصوصا اگر روی سرور باشه. با توجه به این که swap رو یا با فرمت و یا با ریبوت باید خالی کرد ، در نتیجه بهتره هر از مدتی چک کنید ببینید چیزی واردش شده یا نه. اگر swap شما استفاده شده بود اساسا به این معنیه که برای مدتی رم شما پر شده بوده و مقداری از اطلاعات رو به swap منتقل کرده . این اتفاق میتونه با اجرای نرم‌افزارهای سنگین رخ بده. مثلا استفاده از ماشین های مجازی. اگر این swap شما مرتبا پر میشه این به این معنیه که مقدار رم شما برای کاری که انجام میدید کافی نیست و بهتره رم جدید تهیه کنید.

اما اگر شما لینوکس رو نصب کردید و فضای swap برای سیستم عامل تعریف نکردید. 2 راه دارید برای ساخت این فضا:

1- از یک دیسک زنده استفاده کنید ،سیستم رو با اون بوت کنید و بعد از اون یکی از پارتیشن هارو تغییر حجم بدید و یک پارتیشن جدید برای swap بسازید.

2- از یک فایل به عنوان swap استفاده کنید!

در این جا من روش دوم رو توضیح میدم...

اول یک فایل به کمک دستور dd درست میکنیم. حجم این فایل بهتره 2 برابر حجم رم و کمتر از 8 گیگ باشه. یعنی اگر 2 گیگ رم دارید این فایل رو به اندازه 4 گیگ درست کنید ولی اگر رم شما 16 گیگه اون رو به اندازه 8 گیگ درست کنید. من شک دارم اگر 8 گیگ از اطلاعاتی که قرار بوده روی رم نوشته بشه رو روی هارد قرار بدیم سیستم اصلا بتونه کار کنه!

 dd if=/dev/zero of=/swap.img bs=1024 count=<اندازه فایل به کیلو بایت>

بعد فایل رو به عنوان swap فرمت می کنیم. ( از این دستور میشه برای خالی کردن swap هم استفاده کرد. البته قبل از اون باید swap رو غیر فعال کنید. و جلوی دستور آدرس پارتیشن رو به صورت /dev/sdX وارد کنید

 mkswap /swap.img

بعد از اون کافیه فایل رو به عنوان swap به سیستم عامل معرفی کنیم

 swapon /swap.img

برای غیر فعال کردنش هم کافیه دستور زیر رو وارد کنید

 swapoff -a

پ.ن:

تمام دستورات بالا باید با دسترسی روت اجرا بشه

اولین نفری باشید که دیدگاهی ارسال می کند!




حاصل سر و کله زدن های من با لینوکس