System recovery (العربية)

From ArchWiki

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

عملية الإقلاع

عند بدء عملية الإقلاع، يبدأ الحاسوب بتنفيذ الشبفرة الموجودة في ذاكرة ال ROM (وهي تكون ال BIOS عادةً)، فينظر إلى القطاع 0 والأسطوانة 0 من قرص الإقلاع (الذي قد يكون القرص الصلب أو قرصاً مرناً ‎/dev/fd0

  • أو أي شيء آخر). أما ما يحتويه هذا القطاع (المدعو MBR) فهو أحد اثنين:
  • شيفرة برنامج إقلاع مثل LILO أو Grub، مهمته تحديد موقع النواة وتحميلها ثم تنفيذها لبدء عملية الإقلاع الصحيحة.
  • بداية نواة نظام تشغيل، مثل لينكس.

عندما يبدأ تنفيذ النواة، سواءً عن طريق تحميلها مباشرة أو من خلال برنامج الإقلاع، وبعد عملية التعرف على العتاد، تستشير النواة شيئاً يسمى ramdisk لتعرف مكان نظام ملفات الجذر **rootfs**، وهو النظام الذي تضمه النواة في الموقع '/'. أما إن فشلت النواة في إيجاد نظام ملفات الجذر، فإنها تتوقف عن العمل.

والآن وبعد إيجاد نظام ملفات الجذر، يُنفذ البرنامج **init** (الموجود عادة في ‎/bin‎ أو ‎/sbin‎)، ومهمته هي تحديد البرامج والخدمات التي ينبغي أن تبدأ مع إقلاع النظام، أما ملف إعداده فهو ‎/etc/inittab‎. يستطيع برنامج **init** الإقلاع عادة وفق 7 أنماط مختلفة (من النمط 0 حتى النمط 6)، وتختلف هذه الأنماط بين توزيعة وأخرى، ولكنها تتفق في أن النمط 0 يعني إيقاف التشغيل والنمط 1 يعني الإقلاع في النمط الفردي (من أجل إصلاح النظام) والنمط 6 من أجل إعادة الإقلاع. يمكن بالطبع تغيير مفاهيم أرقام الأنماط من خلال تعديل الملف inittab، أما برامج وسكربتات الإقلاع فهي موجودة غالباً ضمن المجلد ‎/etc/rc.d‎.

وأخيراً تسلم سكربتات بداية التشغيل القياد إلى البرنامج **login**، والذي يطلب من المستخدم إدخال اسمه وكلمة مروره.

قرص إقلاع

هو قرص يحتوي على نواة النظام مع/بدون برنامج الإقلاع (مثل LILO أو Grub). وفي هذه الحالة، يطلب هذا القرص قرصاً آخر هو قرص الجذر (الذي يحتوي على نظام ملفات الجذر)، أو يبحث عنه في القرص الصلب إن كان مُعداً لذلك (تحصل هذه الحالة عند تجربة الانوية الجديدة، حيث توضع النواة الجديدة على قرص إقلاع وتُجرّب من خلاله).

قرص جذر

هو قرص يحتوي على نظام ملفات الجذر، ولا يحتوي بالضرورة على نواة النظام أو برنامج الإقلاع.

يمكن لقرص الجذر أن يكون مستقلاً عن بقية الأقراص. عند تحميل النواة، يُنسخ قرص الجذر إلى ال ramdisk مما يجعل الوصول إلى واستخدام قرص الجر أسرع.

قرص إقلاع/جذر

هو قرص يحتوي كلاً من قرص إقلاع وقرص جذر، وبما أنّ حجم القرص محدود، فإنّ ذلك يتطلب تضمين القرص نواة محدودة ونظام ملفات جذر صغير الحجم. فائدته أنه يتضمن نظام الإنقاذ في قرص واحد فقط.

قرص أدوات

وهو قرص يحتوي نظام ملفات لا يُضمّ بالضرورة كجذر. يُستخدم هذا القرص لتضمين المزيد من الأدوات والبرامج التي لم تتسع في قرص الجذر.

بناء نظام ملفات الجذر

محتويات نظام ملفات الجذر العامة

  • بنية نظام الملفات الأساسية.
  • المجلدات المطلوبة الاساسية: ‎/bin‎ و ‎/etc‎ و ‎/lib‎ و ‎/proc‎ و ‎/usr‎ و ‎/dev‎ و ‎/tmp‎.
  • مجموعة الأدوات الاساسية: sh و ls و cp و mv و rm و ...
  • الحد الأدنى من ملفات الإعدادات: rc و inittab و fstab، إلخ.
  • ملفات الأجهزة: ‎/dev/hd*‎ و ‎/dev/tty*‎ و ‎/dev/fd0‎، إلخ.
  • مكتبة التشغيل لتزويد الوظائف الأساسية التي تستخدمها الأدوات.

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

إنشاء نظام الملفات

لبناء نظام الملفات، عليك استخدام جهاز كبير كفاية ليتسع للملفات قبل ضغطها. سيكون حجم ٤ ميغابايت كافياً في الغالب، ولديك أحد الخيارات الثلاثة كأماكن وضعها:

  • استخدام ramdisk (أي الجهاز ‎/dev/ram0‎ مثلاً). في هذه الحالة تقوم الذاكرة بمحاكاة الجهاز. إن لم تجد لديك جهازاً يُدعى ‎/dev/ram‎ أو ‎/dev/ram0‎ أو حتى ‎/dev/ramdisk‎، فعليك إنشاؤه بتُعنى هذه المقالة بإنشاء أقراص إنقاذ للنظام. حيث تُستخدم في الحالات الطارئة لإصلاح النظام أو للتجربة. يتطلب منك بناء قرص إنقاذ أن تكون على دراية بالمهام الإدارية.
  • إن كان لديك قسم (partition) غير مستعمل من قرصك الصلب، فلا ضرر في استخدامه.
  • استخدام جهاز loopback، وذلك إما عن طريق الأمر losetup أو الخيار ‎-o loop‎ مع الأمر mount عند ضمّ نظام الملفات.