−25%

على الدفع السنوي لـ Windows حتى 31 أكتوبر. عرض الخطط

EQVPS

كيف تضيف ملف swap على VPS بنظام Linux

أنشئ ملف swap في خمسة أوامر، واجعله يصمد بعد إعادة التشغيل، واضبط swappiness، مع كم swap تضيف ومتى يكون الحل الحقيقي مزيدًا من RAM.

الخوادم الصغيرة تنفد ذاكرتها في أسوأ اللحظات: ‏apt upgrade، أو بناء Docker، أو نسخ احتياطي ليلي. بدون swap يختار OOM killer في النواة عملية وينهيها، وغالبًا تكون قاعدة بياناتك. ملف swap حزام أمان رخيص يمنح تلك الذروات مكانًا تذهب إليه. يستغرق خمسة أوامر.

1. تحقق مما لديك

swapon --show
free -h

إن لم يُخرج swapon --show شيئًا، فلا يوجد swap بعد.

2. أنشئ ملف الـ swap

fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

‏chmod 600 مهم: قد يحتوي الـ swap على أجزاء من أي شيء في الذاكرة، بما فيها الأسرار، لذا لا يجوز أن يقرأه إلا root. إن فشل fallocate برسالة «operation not supported»، فاستخدم dd بدلًا منه:

dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress

3. اجعله دائمًا

بدون هذه الخطوة يختفي الـ swap بعد إعادة التشغيل:

echo '/swapfile none swap sw 0 0' >> /etc/fstab

4. اضبط swappiness

اطلب من النواة تفضيل RAM واستخدام الـ swap أساسًا تحت الضغط:

echo 'vm.swappiness=10' > /etc/sysctl.d/99-swap.conf
sysctl --system

5. تحقق

swapon --show
free -h

يجب أن ترى جهاز swap بحجم 2 GB، ويجب أن يطبع cat /proc/sys/vm/swappiness القيمة 10.

كم يجب أن يكون حجمه؟

لا تجعل حجم الـ swap «ضعف RAM». على الخادم، يوجد الـ swap لامتصاص الذروات القصيرة، لا لتشغيل أعمال لا تتسع للذاكرة.

حين لا يكون الـ swap هو الحل

راقبه بضعة أيام:

vmstat 5

العمودان si وso يعرضان الصفحات المقروءة من الـ swap والمكتوبة إليه في الثانية. النشاط العرضي طبيعي. أما القيم غير الصفرية الدائمة فتعني أن الخادم يعاني نقصًا في الذاكرة وأن كل شيء ينتظر القرص. عندها يكون الحل مزيدًا من RAM: راجع كم RAM يحتاج VPS. على EQVPS يمكنك الانتقال إلى خطة أكبر دون إعادة التثبيت؛ وتبقى بياناتك في مكانها.

ذو صلة

الأسئلة الشائعة

كم swap يجب أن أضيف؟

على خوادم بذاكرة 1–2 GB، ملف swap بحجم 1–2 GB قيمة افتراضية جيدة. وعلى الخوادم الأكبر، 1–2 GB تظل كافية كشبكة أمان: نصيحة «ضعف حجم RAM» تعود إلى أيام أجهزة 256 MB.

هل سيجعل الـ swap خادمي أسرع؟

لا. الـ swap يمنع الانهيار فقط حين تنفد الذاكرة للحظات: ترقية حزمة، بناء Docker، نسخ احتياطي. صفحات الذاكرة على القرص أبطأ من RAM بآلاف المرات. إن كان الخادم يستخدم الـ swap باستمرار، فهو يحتاج مزيدًا من RAM.

ماذا يفعل swappiness؟

يتحكم في مدى حرص النواة على نقل الذاكرة الخاملة إلى الـ swap. القيمة الافتراضية 60 تنقل مبكرًا نسبيًا؛ والقيمة 10 تطلب من النواة إبقاء الأشياء في RAM واستخدام الـ swap أساسًا تحت ضغط حقيقي، وهذا يناسب معظم الخوادم.

لماذا ملف swap بدل قسم swap؟

يمكن إنشاء الملف وتغيير حجمه وحذفه على خادم يعمل في ثوانٍ دون لمس جدول الأقسام. والأداء على أنظمة الملفات الحديثة هو نفسه.

كيف أزيل الـ swap لاحقًا؟

شغّل 'swapoff /swapfile'، واحذف سطر /swapfile من /etc/fstab، ثم 'rm /swapfile'.

التعليقات

لا تعليقات بعد. كن الأول.

اترك تعليقًا

تُراجَع التعليقات قبل ظهورها.