Swap File چیست و آموزش ساخت و حذف آن چگونه است؟ سواپ فایل فضایی برروی یک هارد درایو یا دیگر دستگاههای ذخیره سازی است که برای ذخیره موقت دادهها در زمان پر شدن حافظه اصلی سیستم (RAM) استفاده میشود.
سواپ فایل این امکان را برای سیستم عامل فراهم میآورد تا از فضای هارد دیسک برای شبیه سازی حافظه اضافی استفاده کند. زمانی که سیستمعامل لینوکس فضای RAM را مصرف کرده و به فضای بیشتری نیاز داشته باشد، حافظه Swap وارد عمل میشود.
در این آموزش قصد داریم به شما نحوه ساخت و حذف Swap فایل را آموزش دهیم. با استفاده از این آموزش، میتوانید سواپ فایل خود را به طور دقیق تنظیم کنید و به بهترین نحو از حافظهی خود استفاده نمایید. قبل از پرداختن به این آموزش، شما را با مفهوم سواپ فایل و نحوه عملکرد آن آشنا خواهیم کرد.
سواپ فایل چیست
هنگامی که حافظه سیستم کم است، سواپ بخشی از فضای RAM را که یک برنامه غیرفعال از آن استفاده میکند، روی هارد دیسک تغییر میدهد تا حافظه را برای برنامههای دیگر آزاد کند.
ترکیب RAM و Swap File به عنوان حافظه مجازی شناخته میشود. استفاده از حافظه مجازی این امکان را برای شما فراهم میآورد تا برنامههای بیشتری را نسبت به آنچه که تنها در RAM اجرا می شود، اجرا کند.
بیشتر بدانید : نصب محیط گرافیکی در اوبونتو سرور
حافظه مجازی راهی برای استفاده موثرتر از حافظه کامپیوتر است. درواقع، سواپ فضایی در سیستمعامل است که باعث میشود کمبود فضای RAM در سیستمعامل کمتر شود.
این فضای میتواند به شکل یک پارتیشن swap اختصاصی یا یک فایل سواپ باشد. در بیشتر موارد، هنگام اجرای لینوکس برروی سرور مجازی، پارتیشن سواپ وجود ندارد، بنابراین لازم است آن را ایجاد نمایید.
Swap چگونه کار میکند
هنگامی که رم سیستم پر شود، سیستم عامل شروع به انتقال برخی از دادهها از RAM به فایل swap میکند. این فرآیند paging نامیده میشود.
دادههایی که به فایل سواپ منتقل میشوند همچنان برای سیستم قابل دسترس هستند، اما دسترسی به آنها کندتر خواهد بود، زیرا روی یک هارد دیسک یا سایر دستگاههای ذخیرهسازی کندتر ذخیره میشوند.
هنگامی که سیستم نیاز به دسترسی به دادههایی دارد که به سواپ فایل منتقل شدهاند، آنها را از فایل سواپ بازیابی کرده و دوباره در RAM ذخیره میکند.
فایل سواپ به عنوان یک فضای ذخیره سازی موقت برای سیستم عامل استفاده میشود تا در صورت نیاز دادهها را به آن منتقل کند.
بیشتر بدانید : آموزش افزودن دیسک به سرورهای ابری آسیاتک
مقدار فایل سواپ معمولاً توسط سیستم عامل بر اساس میزان حافظه فیزیکی موجود در سیستم تنظیم میشود.
به طور کلی، هر چه Swap File بزرگتر باشد، سیستم میتواند دادههای بیشتری را به طور موقت ذخیره کند و احتمال کمی وجود دارد که حافظه آن پر شود.
با این وجود، داشتن یک فایل سواپ بزرگ نیز میتواند سیستم را کند نماید، زیرا دسترسی به دادهها از فایل سواپ کندتر از دسترسی به دادهها از RAM است.
Swap File استاندار پیشنهادی برای RAM
در جدول زیر سواپ فایل استاندارد پیشنهادی را براساس میزان حافظه رم مشاهده خواهید کرد. Hibernation به فضای بیشتری نیاز دارد.
Hibernate یک فرآیند نرمافزاری است که در زمان خاموش شدن سیستم عامل، محتویات حافظه رم را بصورت پایدار در دیسک ذخیره میکند و در زمان روشن شدن سیستم، این محتویات را بازیابی میکند تا بتواند سیستم را به حالت قبلی بازگرداند.
در واقع، Hibernate به کاربر اجازه میدهد که به صورت پویا بین حالت Standby و Shutdown سوئیچ کند، به طوری که هیچ اطلاعاتی از بین نروند.
مقدار RAM | مقدار Swap File بدون Hibernation | مقدار Swap File با Hibernation |
256MB | 256MB | 512MB |
512MB | 512MB | 1GB |
1GB | 1GB | 2GB |
2GB | 1GB | 3GB |
3GB | 2GB | 5GB |
4GB | 2GB | 6GB |
6GB | 2GB | 8GB |
8GB | 3GB | 11GB |
نحوه اضافه کردن Swap File
حال که با نحوه عملکرد و مفهوم سواپ فایل آشنا شدید، همراه ما باشید تا یک فایل سوپ به سرور مجازی اضافه نماییم.
برای افزودن 1 گیگابایت swap به سرور ابری خود، مراحل زیر را دنبال کنید. درصورتیکه قصد دارید بهجای یک گیگابایت از مقدار فضای سواپ بیشتری استفاده کنید، میتوانید مقدار موردنیاز را به جای 1G جایگزین کنید.
ابتدا فایلی ایجاد کنید که برای سواپ استفاده شود.
sudo fallocate -l 1G /swapfile
در صورتی که با پیام خطایی مبنیبر پشتیبانینشدن عملیات مواجه شدید یا اگر faillocate نصب نشده باشد، میتوانید با استفاده از دستور زیر یک سواپ فایل ایجاد کنید.
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
با توجه به اینکه فقط کاربر root باید قادر به خواندن و نوشتن فایل سواپ باشد، برای تنظیم نوع دسترسی، دستور زیر را اجرا کنید.
sudo chmod 600 /swapfile
با اجرای دستور زیر از ابزار mkswap برای تنظیم فایل به عنوان ناحیه Linux Swap استفاده کنید.
sudo mkswap /swapfile
فعال سازی Swap File
پس از مشخص کردن ناحیه Linux Swap، اکنون با اجرای دستور زیر سواپ را فعال سازی کنید.
sudo swapon /swapfile
برای دائمی کردن تغییر ایجاد شده، فایل /etc/fstab را باز کنید و دستور زیر را اجرا نمایید.
/swapfile swap swap defaults 0 0
بررسی Swap File فعال شده
برای بررسی فعال بودن سواپ، از دستور swapon استفاده کنید.
sudo swapon --show
NAME TYPE SIZE USED PRIO
/swapfile file 1024M 507.4M -1
همچنین، میتوانید با اجرای دستور free فعال بودن را سواپ بررسی کنید.
sudo free -h
total used free shared buff/cache available
Mem: 488M 158M 83M 2.3M 246M 217M
Swap: 1.0G 506M 517M
تنظیم مقدار Swappiness
Swappiness یکی از ویژگیهای هسته لینوکس است که مشخص میکند سیستم چند وقت یکبار از فضای swap استفاده میکند و میتواند مقداری بین 0 تا 100 داشته باشد.
هرچه این مقدار کم باشد، هسته سعی میکند از swap اجتناب کند، در حالی که هر چه میزان Swappiness بالاتر و نزدیک به 100 باشد، هسته با شدت بیشتری از فضای مبادله استفاده کند.
مقدار swappiness به صورت پیشفرض 60 تنظیم شده است. میتوانید با اجرای دستور زیر، مقدار swappiness فعلی را بررسی کنید.
cat /proc/sys/vm/swappiness
60
مقدار شصت swappiness برای اکثر سیستم عاملهای لینوکس مطلوب است.
اما اگر میخواهید مقدار Swappiness را به فرض مثال 10 تنظیم کنید، دستور زیر را اجرا نمایید.
sudo sysctl vm.swappiness=10
توجه داشته باشید، این پارامتر با راهاندازی مجدد سیستم از بین میرود و به حالت پیش فرض تغییر میکند، به همین منظور برای ثابت نگه داشتن این پارامتر، دستور زیر را به فایل /etc/sysctl.conf اضافه کنید.
vm.swappiness=10
مقدار swappiness به حجم کاری سیستم شما و نحوه استفاده از حافظه بستگی دارد.
حذف فایل Swap File
اگر به هر دلیلی بخواهید سواپ فایل را غیرفعال و حذف کنید، در ادامه مطلب Swap File چیست، همراه ما باشید.
ابتدا با اجرای دستور زیر، swap را غیرفعال کنید.
sudo swapoff -v /swapfile
اکنون ورودی /swapfile swap swap defaults 0 0 را از فایل /etc/fstab حذف کنید.
در نهایت فایل swapfile را با استفاده از دستور rm حذف کنید.
sudo rm /swapfile
جمع بندی
swap file ابزار ارزشمندی برای سیستمهایی است که حافظه فیزیکی محدودی دارند تا با ارائه حافظه مجازی اضافی در صورت نیاز، به کار خود ادامه دهند. زمانی که سیستم با مشکل کمبود حافظه روبرو میشود، فایل swap به عنوان یک جایگزین برای حافظه RAM قابل استفاده است. اندازه و محل فایل swap میتواند بر عملکرد سیستم تاثیر بگذارد، اما به طور کلی بهتر است آن را فعال و به درستی پیکربندی کنید تا مطمئن شوید که سیستم حافظه کافی برای مدیریت حجم کاری خود دارد.
[yasr_overall_rating]