الاتصال بخادم VDS عبر SSH: PuTTY والطرفية والمفاتيح
دليل شامل للاتصال بخادم Linux VDS عبر SSH: PuTTY، الطرفية، المصادقة بالمفتاح، إنشاء قاعدة تصفية Path Panel، تغيير المنفذ ونصائح الأمان الأساسية.
ما هو swap في Linux، كيفية إنشاء ملف swap، ضبط swappiness، مراقبة استخدام swap وتحسين أداء الذاكرة على خادمك.
مساحة Swap هي ذاكرة افتراضية على القرص يستخدمها نظام التشغيل عندما تمتلئ الذاكرة العشوائية (RAM). تمنع تعطل النظام تحت ضغط الذاكرة وتبقي التطبيقات تعمل. يغطي هذا الدليل إنشاء ملف swap وضبطه ومراقبته.
لا يحل Swap محل RAM؛ بل يعمل فقط كمخزن مؤقت للطوارئ. الاستخدام المرتفع المستمر لـ swap علامة على نقص RAM.
يمكن إنشاء مساحة swap بطريقتين:
| الطريقة | الميزة | العيب |
|---|---|---|
| قسم swap | أسرع قليلاً | حجم ثابت |
| ملف swap | مرن، قابل لتغيير الحجم | أبطأ قليلاً |
تُفضَّل ملفات swap على الأنظمة الحديثة لأن حجمها يمكن تغييره ديناميكياً.
متى يكون swap ضرورياً؟
# عرض استخدام swap
swapon --show
# ملخص الذاكرة وswap
free -h
# معلومات تفصيلية عن الذاكرة
cat /proc/meminfo | grep -i swap
# سرد مناطق swap
cat /proc/swaps
# إنشاء ملف swap بحجم 2 جيجابايت (طريقة dd)
sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
# أو باستخدام fallocate (أسرع)
sudo fallocate -l 2G /swapfile
# التحقق من حجم الملف
ls -lh /swapfile
# فقط root يمكنه القراءة/الكتابة
sudo chmod 600 /swapfile
# التحقق من الصلاحيات
ls -la /swapfile
# المخرجات: -rw------- 1 root root 2.0G ...
# تعليم الملف كمساحة swap
sudo mkswap /swapfile
# تفعيل swap
sudo swapon /swapfile
# التحقق
swapon --show
free -h
أضف إلى /etc/fstab لتفعيل swap تلقائياً عند إعادة التشغيل:
# إضافة إلى /etc/fstab
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
# التحقق
cat /etc/fstab | grep swap
لزيادة حجم ملف swap الموجود:
# تعطيل swap
sudo swapoff /swapfile
# إنشاء ملف جديد بحجم أكبر (4 جيجابايت)
sudo fallocate -l 4G /swapfile
# إعادة التهيئة
sudo mkswap /swapfile
# إعادة التفعيل
sudo swapon /swapfile
# التحقق
free -h
Swappiness قيمة بين 0-100 تحدد مدى عدوانية النواة في استخدام swap:
| القيمة | السلوك |
|---|---|
| 0 | استخدام swap بأقل قدر ممكن |
| 10 | موصى به للخوادم |
| 60 | الافتراضي في Linux |
| 100 | استخدام swap بشكل عدواني |
# عرض قيمة swappiness الحالية
cat /proc/sys/vm/swappiness
# تغيير مؤقت (يُعاد تعيينه عند إعادة التشغيل)
sudo sysctl vm.swappiness=10
# تغيير دائم
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
# تطبيق التغييرات
sudo sysctl -p
يُنصح بـ swappiness=10 للخوادم. يقلل هذا من استخدام swap قبل نفاد RAM ويخفض I/O القرص.
# حالة الذاكرة وswap الآنية
free -h
# مراقبة مستمرة (كل ثانيتين)
watch -n 2 free -h
# أي العمليات تستخدم swap؟
for file in /proc/*/status; do
awk '/VmSwap|Name/{printf $2 " " $3 "\n"}' $file
done | sort -k 2 -n -r | head -10
# المراقبة بـ vmstat
vmstat 2 5
# تعطيل مؤقت
sudo swapoff /swapfile
# إزالة دائمة
sudo swapoff /swapfile
sudo rm /swapfile
# أزل أيضاً سطر swap من /etc/fstab
قبل تعطيل swap، تأكد من وجود RAM حر كافٍ. وإلا قد يواجه النظام خطأ OOM (نفاد الذاكرة).
مساحة Swap مهمة لاستقرار النظام، خاصةً على الخوادم ذات RAM المحدود. إنشاء ملف swap وتحسين قيمة swappiness ومراقبة استخدام swap بانتظام يحسّن إدارة الذاكرة في خادمك. لكن swap ليس حلاً دائماً لنقص RAM — إذا رأيت استخداماً مرتفعاً مستمراً لـ swap، فكّر في ترقية RAM.
القاعدة العامة: إذا كان RAM بحجم 2 جيجابايت أو أقل، أنشئ swap بضعف RAM؛ لـ 2-8 جيجابايت RAM، أنشئ swap مساوياً لـ RAM؛ لأكثر من 8 جيجابايت، يكفي 4-8 جيجابايت swap. إذا كنت تستخدم الإسبات، تحتاج على الأقل بقدر RAM.
الاستخدام المرتفع لـ swap علامة على نقص RAM. حدد أولاً أي العمليات تستهلك أكثر ذاكرة (بـ 'top' أو 'htop'). أوقف الخدمات غير الضرورية أو فكر في ترقية RAM. خفض swappiness إلى 10 قد يساعد أيضاً.
SSDs أكثر متانة من HDDs في عمليات الكتابة، لكن الاستخدام المكثف لـ swap قد يقصّر عمر SSD. قلل استخدام swap بـ swappiness=10. على SSDs الحديثة هذا عادةً ليس مشكلة.
تُفضَّل ملفات swap على الأنظمة الحديثة: يمكن تغيير حجمها ديناميكياً وسهلة الإنشاء والفرق في الأداء ضئيل. تُفضَّل أقسام swap فقط على الأنظمة القديمة أو للمتطلبات الخاصة.
دليل شامل للاتصال بخادم Linux VDS عبر SSH: PuTTY، الطرفية، المصادقة بالمفتاح، إنشاء قاعدة تصفية Path Panel، تغيير المنفذ ونصائح الأمان الأساسية.
دليل خطوة بخطوة للاتصال بـ Windows Server VDS عبر RDP: الإعداد الكامل، تفعيل NLA للأمان، إنشاء قاعدة تصفية Path Panel واستكشاف الأخطاء وإصلاحها.
تغيير نظام تشغيل خادم VDS عبر لوحة REXE: نصائح النسخ الاحتياطي قبل التثبيت، توزيعات Linux المدعومة وإصدارات Windows Server المتاحة للتثبيت الآن.