نصائح مفيدة

SWAP - كيفية إنشاء ملف المبادلة على Linux وتمكينه وتنظيفه وتعطيله

  • Nordweb على كيفية عمل نسخة احتياطية من البرامج الثابتة هاتفك؟
  • فيكتور على كيفية إزالة حقوق الجذر؟ - الإزالة الكاملة لحقوق الجذر SuperSU
  • ستاس على تسجيل كيفية النسخ الاحتياطي للبرامج الثابتة هاتفك؟
  • VLADIMIR Zaretskyi على البرامج الثابتة البرامج الثابتة Xiaomi لأوبونتو
  • ساجيت لكتابة البرامج الثابتة الهاتف الذكي Xiaomi في أوبونتو

ما هو Swap (ملف المبادلة)

Swap هي آلية ذاكرة يتم خلالها تفريغ العمليات غير النشطة من ذاكرة الوصول العشوائي إلى القرص الثابت ، وبالتالي تفريغها. يكون هذا مفيدًا إذا كانت مساحة الذاكرة محدودة تمامًا ، بعبارات بسيطة ، إذا كانت الذاكرة صغيرة الحجم أو غير كافية.

يمكن تقديم المبادلة في نسختين:

  1. قسم القرص منفصلة
  2. ملف على القرص.

من الجدير بالذكر أنه إذا كان نظامك يعمل على SSD ، فلن يكون أداء ملف المبادلة أدنى من سرعة الوصول إلى OP.

ما هو SWAP؟

SWAP (المبادلة) هي آلية ذاكرة افتراضية يتم فيها نقل جزء من البيانات من ذاكرة الوصول العشوائي (RAM) إلى التخزين على محرك الأقراص الصلبة (القرص الصلب) أو محرك أقراص الحالة الصلبة (SSD) أو محرك أقراص محمول أو وحدة تخزين ثانوية أخرى. كقاعدة عامة ، يحدث تبادل عندما تكون ذاكرة الوصول العشوائي ممتلئة ، ويتطلب مساحة إضافية للعمل.

اختر حجم ملف المبادلة

كما قال فلاديمير بافلوفيتش - "يجب أن يكون حجم ملف المبادلة مساويًا لمقدار RAM ، أو يتجاوزه مرتين". مما سبق ، نستنتج أنه بحجم ذاكرة يبلغ 1024 ميجابايت ، سيكون حجم ملف الترحيل 1024 ميجابايت / 2048 ميجابايت.

باستخدام الأداة المساعدة dd console ، املأ الملف المنشأ حديثًا بالأصفار:

نقوم بتهيئة ملف Swap باستخدام الأمر mkswap:

مبروك ، ملف Swap جاهز للاستخدام.

قم بتشغيل Swap باستخدام أمر swapon:

تحقق مما إذا كان هذا صحيحًا:

عندما قد تكون هناك حاجة مبادلة

غالبًا ما تعاني قاعدة البيانات أولاً من نقص الذاكرة الخالية. قد تواجه مشاكل مثل:

  1. تعطل ثابت للموقع: خطأ في الاتصال بقاعدة البيانات - يعني ، على سبيل المثال ، تعطل MySQL ،
  2. عند الفحص الدقيق لسجلات /var/log/mysql.log ، تم اكتشاف خطأ InnoDB: خطأ فادح: لا يمكن تخصيص ذاكرة لتجمع المخزن المؤقت. يشير إلى أن قاعدة البيانات لا تحتوي على ذاكرة RAM كافية مخصصة لإنشاء مخزن مؤقت.

مع هذه الأعراض والأخطاء ، يمكن أن يساعد التبادل.

فوائد SWAP

مقارنة تكلفة RAM و SSD
(الأسعار صالحة في 7 يوليو 2017)ايهورFirstVDS
ذاكرة الوصول العشوائي ، في المتوسط ​​ل 1 غيغابايت100 روبل شهريا170 روبل شهريا
SSD ، في المتوسط ​​لكل 1 غيغا بايت10 روبل شهريا13 روبل شهريا

كما يتبين من الجدول ، فإن المدخرات سوف تخرج حوالي 10 مرات.

حدد أولويات لاستخدام الذاكرة في النظام

منذ الآن أصبح لدى النظام بالفعل خياران للذاكرة - RAM و Swap ، سيكون من الجيد تحديد كيفية استخدام النظام لهما. باستخدام الأداة المساعدة sysctl مع معلمة start vm.swappiness ، نحدد في أي مرحلة من مراحل تحميل RAM (RAM) سيتم استخدام Swap. يمكن أن تختلف قيمة sysctl من 0 إلى 100. إذا قمت بتحديد الحد الأقصى للقيمة 100 ، فسيقوم النظام باستخدام OP والعكس بالعكس فقط ، إذا حددت 0 ، فسيستخدم Swap فقط.

أنا أرى أن الأمر يستحق اختيار vm.swappiness = 30. في هذه الحالة ، عند تحميل ذاكرة الوصول العشوائي بنسبة 70٪ ، سيتم إلغاء تحميل العمليات غير النشطة في Swap.

لتعطيل ملف المبادلة ، استخدم الأمر:

في هذا ، يمكن اعتبار مسألة كيفية إنشاء ملف المبادلة Swap على Linux مغلقة.

تحقق من وجود مبادلة في النظام

للبدء ، تحتاج إلى التأكد من أن التبادل غير متصل حتى الآن:

إذا أرجع الأمر نتيجة فارغة أو شيء من هذا القبيل:

- هذا يعني أن المقايضة غائبة على الأرجح.

بالإضافة إلى ذلك ، تحقق من الأمر:


إذا كان الجدول يحتوي على 0 في خط المبادلة ، فلا يوجد تبديل.

ما حجم لخلق مبادلة

انطلق من المبدأ - بقدر ما تحتاج ، قم بتخصيص ذلك. كقاعدة عامة ، يمكنك أن تبدأ بحجم ذاكرة الوصول العشوائي ، أو مقدارها المضاعفة. على سبيل المثال ، إذا كان لديك 2 غيغابايت من ذاكرة الوصول العشوائي في النظام ، فيمكنك إجراء مبادلة بحجم 2-4 غيغابايت ، كقاعدة عامة ، يجب أن يكون هذا كافيًا. ولكن ، يمكنك ضبط حجمها لنفسك.

إنشاء ملف SWAP

لنفترض أننا نريد إنشاء ملف مبادلة سعة 4 غيغابايت.
علاوة على ذلك ، هناك طريقتان ، التقليدية البطيئة والجديدة:

طريقة سريعة نستخدم fallocate:

ستكون النتيجة عبارة عن سلسلة فارغة ، وهذا طبيعي.
على عكس dd ، سيتم الحصول على النتيجة على الفور تقريبًا ، وأنا أوصي بها. الطريقة التقليدية البطيئة أو استخدم الأمر:

بناء جملة الأمر بسيط:

  • دد - تم تصميم الفريق لنسخ شيء ما بايت في مكان ما ،
  • إذا = / ديف / صفر - يشير إلى المصدر ، أي إلى حيث نقوم بالنسخ من ، في هذه الحالة من / dev / zero - هذا ملف خاص على أنظمة تشبه UNIX ، وهو مصدر صفر بايت ،
  • من = / swapfile - يشير إلى مسار الوجهة حيث نقوم بنسخ البيانات ،
  • bs = 1G - عدد البايتات المراد كتابتها في وقت واحد. في حالتنا ، 1 غيغا بايت. التعيينات: G- غيغا بايت ، M - ميغا بايت ، K - كيلو بايت ، وهكذا ،
  • العد = 4 - كم عدد الكتل بحجم bs سيتم إنشاؤها ، في حالتنا 4.

كن حذرًا جدًا في بناء جملة الأمر ، لأنه إذا ارتكبت ، على سبيل المثال ، خطأً في تحديد مسار = (حيث يمكنك حفظ الملف) ، فيمكنك إتلاف البيانات الموجودة على القرص.

الآن وبعد إنشاء الملف ، تحقق من النتيجة:

نتيجة لذلك ، سوف نرى:
-rw-r - r-- 1 الجذر الجذر 4.0G يوليو 07 16:16 / swapfile
كما ترون ، تم إنشاء الملف بشكل صحيح وبالحجم الصحيح.

كيفية توصيل ملف SWAP

بادئ ذي بدء ، سنقوم بتقييد حقوق الوصول إلى الملف المنشأ حديثًا.

سيكون السماح للمستخدمين الآخرين بالقراءة أو الكتابة إلى هذا الملف مخاطرة أمنية كبيرة ، لذا فإن تحديد الأمر أدناه ضروري للغاية:

نتيجة لذلك ، يجب أن نرى شيئًا مثل هذا:
-RW ------- 1 الجذر الجذر 4.0G يوليو 07 16:16 / swapfile
يتم توضيح الحقوق بشكل صحيح.

أنت الآن بحاجة إلى إنشاء ملف مبادلة من swapfile:

نتيجة لذلك ، سنرى شيئًا مما يلي:
إعداد swapspace الإصدار 1 ، الحجم = 4193300 KiB
لا تسمية ، UU>

الآن ، الملف جاهز كمقايضة. قم بتوصيله بالنظام:

إذا حدث خطأ مشابه في هذه المرحلة ، فهذا يعني على الأرجح أنه لا يُسمح بتبادل التبادل بالنظام. غالبًا ما يتم وضع هذا القيد على VDS مع ظاهرية OpenVZ. أوصي باستخدام IHOR ، الخوادم من 100 روبل في الشهر والظاهرية KVM تسمح لك بتمكين SWAP.

هذا كل شيء ، الآن المبادلة قيد التشغيل. يبقى التحقق من التشغيل الصحيح للأمر الأول:

سيكون التبادل مرئيًا أيضًا في الأوامر القياسية:

كل شيء ، الآن على وجه اليقين ، فإن المبادلة في النظام جاهزة وسيتم استخدامها إذا لزم الأمر.

شاهد الفيديو: طريقة اضافة رامات لاجهزة اندرويد عن طريق برنامج ram expander (شهر نوفمبر 2019).