−25%

Windows کی سالانہ ادائیگی پر، 31 اکتوبر تک۔ پلانز دیکھیں

EQVPS

Linux VPS پر swap فائل کیسے شامل کریں

پانچ کمانڈز میں 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

آپ کو 2 GB کا swap ڈیوائس نظر آنا چاہیے، اور cat /proc/sys/vm/swappiness کو 10 پرنٹ کرنا چاہیے۔

کتنا بڑا ہو؟

swap کا سائز «RAM کا دُگنا» نہ رکھیں۔ سرور پر swap مختصر اضافوں کو جذب کرنے کے لیے ہے، ایسے کام چلانے کے لیے نہیں جو میموری میں نہ سمائیں۔

جب swap جواب نہیں

چند دن اس پر نظر رکھیں:

vmstat 5

si اور so کالم فی سیکنڈ swap میں آنے اور جانے والے صفحات دکھاتے ہیں۔ کبھی کبھار کی سرگرمی ٹھیک ہے۔ مسلسل غیر صفر قدریں بتاتی ہیں کہ سرور کی میموری کم ہے اور سب کچھ ڈسک کا انتظار کر رہا ہے۔ تب حل زیادہ RAM ہے؛ دیکھیں VPS کو کتنی RAM چاہیے۔ EQVPS پر آپ دوبارہ انسٹال کیے بغیر بڑے پلان پر جا سکتے ہیں؛ آپ کا ڈیٹا وہیں رہتا ہے۔

متعلقہ

عمومی سوالات

کتنا swap شامل کروں؟

1–2 GB RAM والے سرورز پر 1–2 GB کی swap فائل اچھا ڈیفالٹ ہے۔ بڑے سرورز پر بھی حفاظتی جال کے طور پر 1–2 GB کافی ہے؛ «RAM کا دُگنا» والا مشورہ 256 MB مشینوں کے زمانے کا ہے۔

کیا swap میرا سرور تیز کرے گا؟

نہیں۔ swap صرف تب کریش روکتا ہے جب میموری لمحے بھر کو ختم ہو: پیکیج اپ گریڈ، Docker بلڈ، بیک اپ۔ ڈسک پر میموری کے صفحات RAM سے ہزاروں گنا سست ہوتے ہیں۔ اگر سرور مسلسل swap کرتا ہے تو اسے زیادہ RAM چاہیے۔

swappiness کیا کرتا ہے؟

یہ طے کرتا ہے کہ کرنل کتنی بے تابی سے غیر فعال میموری کو swap میں منتقل کرے۔ ڈیفالٹ 60 کافی جلد swap کرتا ہے؛ 10 کرنل کو کہتا ہے کہ چیزیں RAM میں رکھے اور swap زیادہ تر حقیقی دباؤ میں استعمال کرے، جو زیادہ تر سرورز کے لیے موزوں ہے۔

swap پارٹیشن کے بجائے swap فائل کیوں؟

فائل کو چلتے سرور پر سیکنڈوں میں، پارٹیشن ٹیبل چھوئے بغیر، بنایا، سائز بدلا اور ہٹایا جا سکتا ہے۔ جدید فائل سسٹمز پر کارکردگی ایک جیسی ہے۔

بعد میں swap کیسے ہٹاؤں؟

'swapoff /swapfile' چلائیں، /etc/fstab سے /swapfile والی لائن حذف کریں، پھر 'rm /swapfile'۔

تبصرے

ابھی کوئی تبصرہ نہیں۔ پہلے بنیں۔

ایک تبصرہ چھوڑیں

تبصرے ظاہر ہونے سے پہلے moderate کیے جاتے ہیں۔