یکی از راه های کاربردی در برابر خطاها کمبود حافظه در برنامه است که شما می توانید برای حل آن مقداری فضای Swap به سرور خود اضافه کنید. Swap در واقع بخشی از فضا ذخیره سازی هارد دیسک است که برای ذخیره موقت داده هایی به کار می رود که دیگر نمی توان در رم ذخیره کرد و برای سیستم عامل کنار گذاشته شده است و می توانید مقدار اطلاعاتی را که سرور می تواند در حافظه کاری شما نگهداری کند را افزایش دهید. پس همراه آذرسیس باشید تا آموزش افزودن فضای Swap در Rocky Linux را بررسی کنیم.
فهرست مطالب
فضای Swap چیست؟
در حالت کلی فضای Swap روی هارد دیسک عموماً زمانی استفاده می شود که دیگر فضا کافی در Ram وجود نداشته باشد. این موضوع را می توان با یک مثال روشن کرد. فرض کنید شما دارای 2 گیگابایت رم در سیستم خود هستید و ناگهان با فرآیندی مواجه می شوید که 3 گیگابایت رم نیاز دارد ولی حافظه سیستم شما کافی نیست! اگر حافظه سیستم در دسترس باشد از Swap استفاده می شود. اگر فضای Swap تخصیص داده نشده باشد احتمالاً سیستم شما به دلیل نشت حافظه از کار می افتد. در کل داشتن فضای تعویض به عنوان جایگزین برای زمانی استفاده می شود که Ram سیستم شما تخلیه شده و می تواند یک شبکه ایمنی خوب در برابر موارد استثنایی خارج از حافظه در دسترس باشد.
مراحل افزودن Swap در راکی لینوکس
حالا که تا حدودی با فضای ذخیره سازی Swap آشنا شدید، در بخش بعدی به مراحل اضافه کردن فضای Swap در راکی لینوکس خواهیم پرداخت:
مرحله 1: بررسی سیستم برای مشاهده اطلاعات Swap
پیش از شروع فرآیند اصلی می توانیم بررسی کنیم که آیا سیستم از قبل این فضا را در دسترس دارد یا خیر؟ زیرا شما در سیستم ممکن است چندین فایل Swap یا پارتیشن داشته باشید ولی یک مورد کافی است. با دستور زیر می توانید پی ببرید که آیا در سیستم فضای Swap پیکربندی شده است یا خیر:
Interest Swapan --Show
اگر خروجی دریافت کنید این به این معنا است که فضای Swap در دسترس ندارید. همچنین می توانید با ابزار Free تایید کنید در حال حاضر Swap فعالی وجود ندارد:
free -h
مرحله 2: بررسی فضا موجود در پارتیشن هارد دیسک
پیش از ایجاد فایل Swap ابتدا فضای ذخیره سازی موجود دیسک را بررسی کنید تا مطمئن شوید فضای کافی در دیسک دارید. می توانید این کار را با دستور زیر انجام دهید:
df -h
با اینکه نظرات زیادی درباره فضای مناسب Swap وجود دارد ولی در واقع میزان آن به ترجیحات شخصی شما و نیازهای برنامه شما بستگی دارد، در کل میزان مساوی یا دو برابر Ram موجود روی سیستم اندازه خوبی است. مورد خوب دیگری این است که هر برنامه ای که به بیش از 4 گیگ نیاز داشته باشد، احتمالاً غیر ضروری است البته اگر از آن فقط به عنوان Ram استفاده می کنید.
مرحله 3: ایجاد یک فایل Swap
اکنون با اطلاع از فضای موجود هارد درایو در سیستم فایل، می توانید یک فایل Swap در سیستم فایل خود ایجاد کنید. بنابراین می توانید یک فایل به اندازه دلخواه خود به نام Swapfile در دایرکتوری اصلی (/) درست کنید. بهترین راه برای ایجاد یک فایل Swap با برنامه Fallocate امکان پذیر است. این دستور به راحتی و بلافاصله یک فایل با اندازه مشخص ایجاد می کند. دقت کنید از آن جایی که در مثال فوق سرور دارای 2 گیگ Ram است، فایل ایجاد شده 2 گیگ خواهد بود:
sudo fallocate -l 1G /swapfile
می توانید با تایپ تایید کنید که میزان صحیح رزرو شده است:
ls -lh /swapfile
در نهایت، خواهید دید که فایل شما با فضای مناسب ایجاد شده است.
مرحله 4: فعال سازی فایل Swap
حالا که فایلی با مقدار صحیح فضا در اختیار دارید می توانید آن را به فضای Swap تبدیل کنید. توجه داشته باشید که در ابتدا مجوزهای فایل را قفل کنید تا فقط کاربرانی که دارای اختیارات Root هستند بتوانند محتویات را بخوانند. این کار مانع دسترسی کاربران معمولی به فایل می شود که پیامدهای امنیتی قابل توجه ای دارد. برای انجام این کار و محدود کردن دسترسی دستور زیر را اجرا کنید:
sudo chmod 600 /swapfile
حال اعمال تغییرات را با تایپ دستور زیر شناسایی کنید:
ls -lh /swapfilels -lh /swapfile
در نهایت می توانید فایل را به عنوان فضای Swap با دستور زیر علامت گذاری کنید:
sudo mkswap /swapfile
با دستور زیر هم می توانید تایید کنید که Swap در حال حاضر در دسترس است:
Interest Swapan --Show
برای بررسی دوباره خروجی و تایید یافته خود می توانید از ابزار Free استفاده کنید:
free -h
تا به این قسمت شما توانستید با موفقیت فایل Swap خود را راه اندازی کنید! در نتیجه سیستم عامل در صورت نیاز می تواند به راحتی از این فضای ذخیره سازی استفاده کند.
مرحله 5: دائمی کردن فایل Swap
تغییراتی که به وسیله بخش های پیشین ایجاد کردید، فایل Swap را در Session فعلی فعال کرده است. با این حال اگر راه اندازی مجدد انجام دهید، سرور تنظیمات Swap را به طور خودکار حفظ نمی کند و تنظیمات از بین می رود. بنابراین می توان با افزودن فایل Swap به فایل etc/fstab/خود، این مورد را تغییر داد. توجه داشته باشید که حتما یک نسخه پشتیبان از فایل etc/fstab/ برای احتیاط، تهیه کنید:
sudo cp /etc/fstab /etc/fstab.bak
اطلاعات فایل Swap را به آخر فایل etc/fstab/ اضافه کرده و دستور زیر را تایپ کنید:
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
در ادامه، به بررسی تنظیماتی خواهیم پرداخت که می توانیم با آن بروز رسانی های Swap خود را تنظیم کنید.
نحوه انجام دادن تنظیمات فضا Swap در Rocky Linux
گزینه هایی وجود دارد که می توانید پیکره بندی کنید که بر عملکرد سیستم در هنگام انجام فرآیند Swap تاثیر می گذارد. پس برای بررسی بیشتر تیتر های زیر را مطالعه نمایید:
1- تنظیم ویژگی Swappiness در فضای Swap
با استفاده از پارامتر Swappiness می توانید تنظیم کنید که چند وقت یکبار سیستم شما داده ها را از Ram به فضای Swap انتقال دهد. این مقدار بین 0 تا 100 پیکربندی می شود که درصدی را نشان می دهد. در مقادیری که نزدیک به صفر است، هسته داده ها را به دیسک مبادله نمی کند مگر اینکه بسیار ضروری باشد. در نظر داشته باشید که تعامل با فایل Swap گران است زیرا بسیار طولانی تر از تعامل با Ram است و می تواند به طور قابل توجهی باعث کاهش عملکرد شود. پس زیاد به Swap تکیه نکنید! با تایپ دستور زیر می توانید Swappiness فعلی را ببینید:
cat /proc/sys/vm/swappiness
برای یک سیستم دسکتاپ، تنظیم Swap به 60 مقدار بدی نیست ولی در یک سرور ممکن است بخواهید آن را به 0 برسانید. در این مثال ما مقدار 10 را تنظیم کرده ایم:
sudo sysctl vm.swappiness=10
می توان از ویرایشگر متن vi در راکی لینوکس استفاده کرد که بسیار قدرتمند است، اما کاربرانی که تجربه کافی ندارند می توانند از ویرایشگر کاربر پسند Nano استفاده کنند. پس دستور زیر را به کار گیرید:
sudo dnf install nano
حال برای ویرایش فایل Sysctl.Conf از Nano استفاده کنید:
Sudona no /etc/sysctl. con f
شما می توانید با کلید Ctrl+X و تایپ Y فرآیند را ذخیره کرده و به اتمام برسانید.
2- انجام تنظیمات Cache Pressure در فضای Swap
مقدار دیگری که امکان دارد تغییر دهید Vfs_Cache_Pressure است. این تنظیم میزان انتخابی را که سیستم برای ذخیره اطلاعات Inode و Dentry نسبت به سایر داده ها انتخاب می کند پیکربندی می کند. این فرآیند بسیار پر هزینه است و به طور مکرر درخواست می شود. بنابراین ذخیره سازی Cache برای سیستم شما کار مفیدی خواهد بود. با پرس و جو مجدد از سیستم فایل Proc می توانید مقدار فعلی را مشاهده کنید که پس از پیکربندی سیستم سریعاً اطلاعات Inode را از Cache پاک می کند:
cat /proc/sys/vm/vfs_cache_pressure
انعطاف پذیری و پایداری بالا در سرویس های یک شرکت میزبانی موجب رضایت شما از نحوه عملکرد سیستم و امکان برنامه ریزی درست در نحوه انجام نصبیات و پیکربندی های لازم خواهد بود. برای بررسی بیشتر به سرور مجازی لینوکس و سرور مجازی ویندوز ارائه شده در وب سایت آذرسیس سر بزنید.
سخن آخر
ما در مقاله “آموزش افزودن فضای Swap در Rocky Linux” سعی بر این داشتیم تا شما را با فضای Swap و نحوه افزودن آن در راکی لینوکس آشنا کنیم. همان طور که می بینید این فضای اضافی می تواند بسیار برای شما مفید باشد و مشکل کمبود حافظه شما را تا حدودی جبران کند. پس پیشنهاد می کنیم نسبت به شرایط خود از فضای Swap استفاده کنید و لذت ببرید. از همراهی گرانقدر شما بسیار ممنونیم. هم اکنون پاسخگو سوالات فنی شما خواهیم بود …