یہ ٹیوٹوریل لینکس میں سویپ فائل کے تصور پر بحث کرتا ہے ، اسے کیوں استعمال کیا جاتا ہے اور روایتی سویپ پارٹیشن پر اس کے فوائد۔ آپ تبادلہ فائل بنانے یا اس کا سائز تبدیل کرنے کا طریقہ سیکھیں گے۔
لینکس میں سویپ فائل کیا ہے؟
ایک تبادلہ فائل لینکس کو ڈسک کی جگہ کو بطور رام نقل کرنے کی اجازت دیتی ہے۔ جب آپ کا سسٹم ریم ختم ہونا شروع کردیتا ہے ، تو یہ تبادلہ کی جگہ استعمال کرتا ہے اور رام کے کچھ مواد کو ڈسک کی جگہ پر تبدیل کرتا ہے۔ یہ زیادہ اہم عمل کی خدمت کے لیے رام کو آزاد کرتا ہے۔ جب رام دوبارہ آزاد ہوجاتا ہے ، تو یہ ڈسک سے ڈیٹا واپس لے لیتا ہے۔ میں تجویز کرتا ہوں لینکس پر تبادلہ کے بارے میں مزید جاننے کے لیے یہ مضمون پڑھیں۔ .
روایتی طور پر ، تبادلہ کی جگہ ڈسک پر علیحدہ تقسیم کے طور پر استعمال ہوتی ہے۔ جب آپ لینکس انسٹال کرتے ہیں تو ، آپ صرف تبادلہ کے لیے علیحدہ پارٹیشن بناتے ہیں۔ لیکن حالیہ برسوں میں یہ رجحان بدل گیا ہے۔
تبادلہ فائل کے ساتھ ، اب آپ کو علیحدہ تقسیم کی ضرورت نہیں ہے۔ آپ جڑ کے نیچے ایک فائل بناتے ہیں اور اپنے سسٹم کو کہتے ہیں کہ اسے بطور تبادلہ جگہ استعمال کریں۔
وقف شدہ تبادلہ تقسیم کے ساتھ ، تبادلہ کی جگہ کا سائز تبدیل کرنا ایک ڈراؤنا خواب ہے اور بہت سے معاملات میں ایک ناممکن کام ہے۔ لیکن تبادلہ فائلوں کے ساتھ ، آپ اپنی مرضی کے مطابق ان کا سائز تبدیل کرسکتے ہیں۔
اوبنٹو کے حالیہ ورژن اور کچھ دیگر لینکس کی تقسیم شروع ہو گئی ہے۔ ڈیفالٹ کی طرف سے تبادلہ فائل کا استعمال . یہاں تک کہ اگر آپ سویپ پارٹیشن نہیں بناتے ہیں تو ، اوبنٹو اپنے طور پر تقریبا 1 جی بی کی سویپ فائل بناتا ہے۔
یہ کیسے چیک کریں کہ کمپیوٹر 32 ہے یا 64
آئیے تبادلہ فائلوں پر کچھ اور دیکھیں۔

لینکس میں تبادلہ کی جگہ چیک کریں۔
اس سے پہلے کہ آپ جائیں اور سویپ اسپیس شامل کرنا شروع کریں ، یہ چیک کرنا اچھا خیال ہوگا کہ آیا آپ کے سسٹم میں پہلے سے ہی سوئپ اسپیس موجود ہے یا نہیں۔
آپ اسے کے ساتھ چیک کر سکتے ہیں۔ لینکس میں مفت کمانڈ۔ . میرے معاملے میں ، میرا ڈیل ایکس پی ایس۔ 14GB کا تبادلہ ہے۔
free -h total used free shared buff/cache available Mem: 7.5G 4.1G 267M 971M 3.1G 2.2G Swap: 14G 0B 14G
مفت کمانڈ آپ کو سوئپ اسپیس کا سائز دیتا ہے لیکن یہ آپ کو نہیں بتاتا کہ یہ اصلی سویپ پارٹیشن ہے یا سوئپ فائل۔ اس سلسلے میں سویپ کمانڈ بہتر ہے۔
swapon --show NAME TYPE SIZE USED PRIO /dev/nvme0n1p4 partition 14.9G 0B -2
جیسا کہ آپ دیکھ سکتے ہیں ، میرے پاس 14.9 جی بی سویپ اسپیس ہے اور یہ ایک الگ پارٹیشن پر ہے۔ اگر یہ ایک تبادلہ فائل ہوتی تو قسم تقسیم کے بجائے فائل ہوتی۔
swapon --show NAME TYPE SIZE USED PRIO /swapfile file 2G 0B -2
اگر آپ کے پاس اپنے نظام پر تبادلہ کی جگہ نہیں ہے ، تو اسے کچھ اس طرح دکھانا چاہیے:
free -h total used free shared buff/cache available Mem: 7.5G 4.1G 267M 971M 3.1G 2.2G Swap: 0B 0B 0B
سویپان کمانڈ کوئی آؤٹ پٹ نہیں دکھائے گا۔
لینکس پر سویپ فائل بنائیں۔
اگر آپ کے سسٹم میں تبادلہ کی جگہ نہیں ہے یا اگر آپ کو لگتا ہے کہ تبادلہ کی جگہ کافی نہیں ہے تو آپ لینکس پر تبادلہ فائل بنا سکتے ہیں۔ آپ ایک سے زیادہ تبادلہ فائلیں بھی بنا سکتے ہیں۔
آئیے دیکھتے ہیں کہ لینکس پر سویپ فائل کیسے بنائی جائے۔ میں اس ٹیوٹوریل میں اوبنٹو 18.04 استعمال کر رہا ہوں لیکن اسے لینکس کی دیگر تقسیم پر بھی کام کرنا چاہیے۔
مرحلہ 1: ایک نیا تبادلہ فائل بنائیں۔
سب سے پہلے سب سے پہلے ، اپنی پسند کی جگہ کے سائز کے ساتھ ایک فائل بنائیں۔ آئیے کہتے ہیں کہ میں اپنے سسٹم میں 1 جی بی سویپ اسپیس شامل کرنا چاہتا ہوں۔ 1 GB سائز کی فائل بنانے کے لیے فالوکیٹ کمانڈ استعمال کریں۔
sudo fallocate -l 1G /swapfile
یہ تجویز کیا جاتا ہے کہ صرف روٹ کو پڑھنے اور سوئپ فائل میں لکھنے کی اجازت دی جائے۔ یہاں تک کہ جب آپ اس فائل کو سویپ ایریا کے لیے استعمال کرنے کی کوشش کریں گے تو آپ کو غیر محفوظ اجازت 0644 ، 0600 جیسی وارننگ بھی نظر آئے گی۔
sudo chmod 600 /swapfile
نوٹ کریں کہ تبادلہ فائل کا نام کچھ بھی ہو سکتا ہے۔ اگر آپ کو ایک سے زیادہ تبادلہ خالی جگہوں کی ضرورت ہو تو ، آپ اسے کوئی مناسب نام دے سکتے ہیں جیسے swap_file_1 ، swap_file_2 وغیرہ۔ یہ صرف ایک فائل ہے جو پہلے سے طے شدہ سائز کی ہے۔
مرحلہ 2: نئی فائل کو تبادلہ جگہ کے طور پر نشان زد کریں۔
آپ کو لینکس سسٹم کو بتانے کی ضرورت ہے کہ یہ فائل سویپ اسپیس کے طور پر استعمال ہوگی۔ آپ اس کے ساتھ کر سکتے ہیں۔ mkswap ٹول
sudo mkswap /swapfile
آپ کو اس طرح ایک آؤٹ پٹ دیکھنا چاہئے:
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=7e1faacb-ea93-4c49-a53d-fb40f3ce016a
مرحلہ 3: تبادلہ فائل کو فعال کریں۔
اب آپ کا سسٹم جانتا ہے کہ فائل سویپ فائل کو سویپ اسپیس کے طور پر استعمال کیا جا سکتا ہے۔ لیکن یہ ابھی تک نہیں کیا گیا ہے۔ آپ کو سویپ فائل کو فعال کرنے کی ضرورت ہے تاکہ آپ کا سسٹم اس فائل کو سویپ کے طور پر استعمال کرنا شروع کر سکے۔
sudo swapon /swapfile
اب اگر آپ تبادلہ کی جگہ چیک کرتے ہیں تو آپ کو دیکھنا چاہیے کہ آپ کا لینکس سسٹم اسے پہچانتا ہے اور اسے تبادلہ علاقے کے طور پر استعمال کرتا ہے۔
swapon --show NAME TYPE SIZE USED PRIO /swapfile file 1024M 0B -2
مرحلہ 4: تبدیلیاں مستقل کریں۔
آپ نے اب تک جو کچھ کیا ہے وہ عارضی ہے۔ اپنے سسٹم کو دوبارہ شروع کریں اور تمام تبدیلیاں ختم ہو جائیں گی۔
آپ نئی تخلیق شدہ سویپ فائل کو /etc /fstab فائل میں شامل کرکے تبدیلیوں کو مستقل بنا سکتے ہیں۔
بہترین نیا لینکس ڈسٹرو
/etc /fstab فائل میں کوئی تبدیلی کرنے سے پہلے بیک اپ بنانا ہمیشہ اچھا خیال ہے۔
sudo cp /etc/fstab /etc/fstab.back
اب آپ /etc /fstab فائل کے آخر میں درج ذیل لائن شامل کر سکتے ہیں۔
/swapfile none swap sw 0 0
آپ اسے a سے دستی طور پر کر سکتے ہیں۔ کمانڈ لائن ٹیکسٹ ایڈیٹر۔ یا آپ صرف درج ذیل کمانڈ استعمال کریں:
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
اب آپ کے پاس سب کچھ ہے۔ آپ کے لینکس سسٹم کو ریبوٹ کرنے کے بعد بھی آپ کی سویپ فائل استعمال ہوگی۔
تبادلہ کو ایڈجسٹ کریں۔
تبادلے کے پیرامیٹرز اس بات کا تعین کرتے ہیں کہ تبادلہ کی جگہ کتنی بار استعمال ہونی چاہیے۔ تبادلہ قدر 0 سے 100 تک ہوتی ہے۔ زیادہ قیمت کا مطلب ہے کہ تبادلہ کی جگہ زیادہ کثرت سے استعمال کی جائے گی
اوبنٹو ڈیسک ٹاپ میں ڈیفالٹ تبادلہ 60 ہے جبکہ سرور میں یہ 1 ہے۔ آپ درج ذیل کمانڈ سے تبادلہ چیک کر سکتے ہیں۔
cat /proc/sys/vm/swappiness
سرورز کو کم تبادلہ کیوں استعمال کرنا چاہئے؟ کیونکہ سویپ رام سے سست ہے اور بہتر کارکردگی کے لیے ، رام کو زیادہ سے زیادہ استعمال کیا جانا چاہیے۔ سرورز پر ، کارکردگی کا عنصر بہت اہم ہے اور اس وجہ سے تبادلہ جتنا ممکن ہو کم ہے۔
آپ مندرجہ ذیل systemd کمانڈ کا استعمال کرتے ہوئے فلائی پر تبادلہ تبدیل کر سکتے ہیں۔
sudo sysctl vm.swappiness=25
یہ صرف عارضی طور پر تبدیل کرتا ہے۔ اگر آپ اسے مستقل بنانا چاہتے ہیں تو آپ /etc/sysctl.conf فائل میں ترمیم کر سکتے ہیں اور فائل کے آخر میں تبادلہ قدر شامل کر سکتے ہیں۔
vm.swappiness=25
لینکس پر تبادلہ جگہ کا سائز تبدیل کرنا۔
لینکس پر تبادلہ جگہ کا سائز تبدیل کرنے کے کچھ طریقے ہیں۔ لیکن اس سے پہلے کہ آپ اسے دیکھیں ، آپ کو اس کے ارد گرد کچھ چیزیں سیکھنی چاہئیں۔
میرا اسٹارٹ مینو ونڈوز 10 کہاں گیا؟
جب آپ اپنے سسٹم سے سوئپ ایریا کے لیے سویپ فائل کا استعمال روکنے کے لیے کہتے ہیں تو یہ تمام ڈیٹا (صفحات کو عین مطابق) کو رام میں واپس منتقل کرتا ہے۔ سوئپ آف کرنے سے پہلے آپ کے پاس کافی مفت ریم ہونی چاہیے۔
یہی وجہ ہے کہ ایک اور عارضی تبادلہ فائل بنانا اور فعال کرنا ایک اچھا عمل ہے۔ اس طرح ، جب آپ اصل سویپ ایریا کو تبدیل کرتے ہیں ، آپ کا سسٹم عارضی سویپ فائل استعمال کرے گا۔ اب آپ اصل تبادلہ جگہ کا سائز تبدیل کر سکتے ہیں۔ آپ دستی طور پر عارضی تبادلہ فائل کو ہٹا سکتے ہیں یا اسے جیسا ہے اسے چھوڑ سکتے ہیں اور یہ اگلے بوٹ پر خود بخود حذف ہو جائے گی۔
اگر آپ کے پاس کافی مفت ریم ہے یا اگر آپ نے عارضی تبادلہ کی جگہ بنائی ہے تو اپنی اصل فائل کو تبدیل کریں۔
sudo swapoff /swapfile
اب آپ فائل کا سائز تبدیل کرنے کے لیے فالوکیٹ کمانڈ استعمال کر سکتے ہیں۔ آئیے کہتے ہیں ، آپ اسے 2 جی بی سائز میں تبدیل کرتے ہیں:
sudo fallocate -l 2G /swapfile
اب فائل کو دوبارہ تبادلہ جگہ کے طور پر نشان زد کریں:
sudo mkswap /swapfile
اور تبادلہ دوبارہ شروع کریں:
sudo swapon /swapfile
آپ ایک ہی وقت میں ایک سے زیادہ تبادلہ فائلوں کا انتخاب بھی کر سکتے ہیں۔
لینکس میں سویپ فائل ہٹانا
آپ لینکس پر سویپ فائل استعمال نہ کرنے کی اپنی وجوہات رکھ سکتے ہیں۔ اگر آپ اسے ہٹانا چاہتے ہیں تو یہ عمل ویسا ہی ہے جیسا کہ آپ نے تبادلہ کا سائز تبدیل کرنے میں دیکھا۔
پہلے ، اس بات کو یقینی بنائیں کہ آپ کے پاس کافی مفت ریم ہے۔ اب فائل کو تبدیل کریں:
sudo swapoff /swapfile
اگلا مرحلہ متعلقہ اندراج کو /etc /fstab فائل سے ہٹانا ہے۔
اور آخر میں ، آپ جگہ کو خالی کرنے کے لیے فائل کو ہٹا سکتے ہیں:
میں اپنے بھاپ کے کھیل کیوں نہیں کھیل سکتا
sudo rm /swapfile
کیا آپ تبادلہ کرتے ہیں؟
میرے خیال میں اب آپ کو لینکس میں تبادلہ فائل کے تصور کی اچھی سمجھ ہے۔ اب آپ آسانی سے تبادلہ فائل بنا سکتے ہیں یا اپنی ضرورت کے مطابق ان کا سائز تبدیل کر سکتے ہیں۔
اگر آپ کے پاس اس موضوع پر کچھ شامل کرنا ہے یا اگر آپ کو کوئی شک ہے تو براہ کرم ذیل میں ایک تبصرہ کریں۔
جیسا کہ آپ نے پڑھا ہے؟ براہ کرم اسے دوسروں کے ساتھ شیئر کریں۔