در مقاله هاي گذشته نحوه اضافه كردن حافظه swap در اوبونتو را مورد بررسي قرار داديم امروز قصد داريم ، شما كاربران عزيز را با اضافه كردن حافظه Swap در CentOS 8 آشنا كنيم. با ما در شتابان هاست همراه باشيد.
همانطور كه مي دانيم swap قسمتي از هارد سيستم است که بعد از حافظه RAM فیزيکی مورد استفاده قرار می گیرد؛ بنابراين مي توان Swap را به عنوان يك حافظه مكمل در نظر گرفت، زماني كه حافظه RAM یک سیستم لینوکس پر شود از حافظه swap استفاده مي كند همچنين می تواند به صورت یک پارتیشن اختصاصی یا یک فايل باشد. توجه داشته باشيد هنگام اجرای CentOS بر روی یک ماشین مجازی ، به طور معمول پارتیشن swap وجود ندارد ، بنابراین تنها گزینه ایجاد یک فایل swap است.
مراحل زیر را به عنوان root یا كاربري با امتیازات sudo انجام دهید تا حافظه swap را در سیستم CentOS 8 اضافه کنید.
با ایجاد فایلی که به عنوان حافظه swap عمل می کند شروع کنید:
sudo fallocate -l 1G /swapfile
در این مثال ، ما در حال ایجاد یک فایل swap با اندازه ۱G هستیم. اگر به حافظه بیشتری نیاز دارید ،بجاي ۱G از حافظه دلخواه خود استفاده كنيد.
اگر برنامه Fallocate در سیستم شما در دسترس نیست یا پیغام خطایی دریافت می کنید مبنی بر عدم موفقیت Fallocate: عملیات پشتیبانی نمی شود ، برای ایجاد فايل swap از دستور dd استفاده کنید:
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
مجوزهای فايل را طوری تنظیم کنید که فقط کاربر اصلی بتواند فایل swap را بخواند و بنویسد:
sudo chmod 600 /swapfile
سپس ، یک قسمت swap لینوکس را روی فايل تنظیم کنید:
sudo mkswap /swapfile
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=0abdb8ba-57d6-4435-8fd8-5db9fc705045
با اجرای دستور زیر swap را فعال کنید:
sudo swapon /swapfile
همانطور که در زیر نشان داده شده است ، با استفاده از دستور swapon یا free تأیید کنید که swap فعال است:
sudo swapon --show
NAME TYPE SIZE USED PRIO /swapfile file 1024M 507.4M -1
sudo free -h
total used free shared buff/cache available Mem: 488M 158M 83M 2.3M 246M 217M Swap: 1.0G 506M 517M
با اضافه کردن ورودی swap در فايل/ etc / fstab ، تغییر را هميشگي کنید:
sudo nano /etc/fstab
خط زیر را جای گذاری کنید
/swapfile swap swap defaults 0 0
Swappiness یک ویژگی هسته لینوکس است که تعریف می کند سیستم هر چند وقت یکبار از حافظه swap استفاده می کند. swappiness می تواند مقداری بین ۰ و ۱۰۰ داشته باشد. یک مقدار کم باعث می شود تا هسته سعی کند تا جایی که امکان دارد از swap جلوگیری کند ، در حالی که مقدار بالاتر باعث می شود هسته با شدت بیشتری از حافظه swap استفاده کند.
مقدار ۳۰ swappiness بصورت خودكار در CentOS 8 است. با تایپ دستور زیر می توانید مقدار swappiness فعلی را بررسی کنید:
cat /proc/sys/vm/swappiness
۳۰
در حالی که مقدار swappiness 30 برای دسک تاپ و ماشین های توسعه مناسب است ، اما برای سرورهای تولیدی ، ممکن است لازم باشد مقدار کمتری تعیین کنید.
برای مثال ، برای تنظیم مقدار swappiness روی ۱۰ ، دستور زير را تایپ کنید:
sudo sysctl vm.swappiness=10
برای ماندگاری این پارامتر در هنگام راه اندازی مجدد ، خط زیر را به فايل /etc/sysctl.conf اضافه کنید:
vm.swappiness=10
مقدار swappiness بهینه به میزان کار سیستم شما و نحوه استفاده از حافظه بستگی دارد. برای یافتن مقدار بهینه باید این پارامتر را به اعداد كوچكتر تنظیم کنید.
برای غیرفعال کردن و حذف فایل swap ، این مراحل را دنبال کنید:
۱) با تایپ کردن دستور زير، حافظه swap را غیرفعال کنید:
sudo swapoff -v /swapfile
۲) /swapfile swap swap defaults 0 0 را از فايل / etc / fstab حذف کنید.
۳) فایل swapfile را با rm حذف کنید
sudo rm /swapfile
ما را در شتابان هاست دنبال كنيد.