ليلو
| ليلو (بالانجليزية LILO) | |
|---|---|
نموذج اظهار قائمة ليلو |
|
| المطور | ورنر المسبرجر (1992–1998), جون كوفمان (1999–2007), جوشيم ويدورن (من 2010) |
| آخر إصدار | 23.2 / 9 ابريل 2011 |
| حالة التطوير | محفوظ و يتم التطوير عليه |
| الترخيص | رخصة بي.إس.دي |
| موقع وب | http://lilo.alioth.debian.org |
ليلو (بالإنجليزية: LILO) هو برمجية إقلاع أو ما يعرف ايضاً بمدير إقلاع مخصصة لانظمة التشغيل التي تعتمد على نواة لينكس ، الاسم ليلو (بالإنجليزية: LILO) يمثل أول حرفين للمصطلح (LInux LOader) والتي تعني حرفيا "محمل لينكس" حيث يتم تحميل نظام التشغيل على الذاكرة الرئيسية للجهاز.
محتويات |
نظرة عامة [عدل]
اعتبر ليلو مدير الإقلاع الافتراضي الاول في معظم توزيعات لينكس و ذلك في السنوات التي لحقت شهرة البرمجية لودلين (بالإنجليزية: Loadlin) ، و اليوم فإن معظم التوزيعات اللينكسية تقوم باستخدام (جنو جرب) لإقلاع نظام التشغيل.
المعلومات الوحيدة المتوفرة لبرمجية الاقلاع ليلو في بداية عملية اقلاع النظام هي المعلومات المخزنة في البيوس و هذه المعلومات هي التي تمكن ليلو من القيام بالولوج الى القرص الصلب اللذي يحوي بدوره على نظام التشغيل اللازم تحميله في الذاكرة الرئيسية لجهاز الحاسوب، و لهذا السبب و مع قطع البيوس القديمة جدا فإن المساحة المخصصة لحفظ معلومات نظام التشغيل في هذه القطع تكون محدودة بالقطاعات المرمزة من 0 الى 1023 في أول قرصين صلبين للنظام.
أما بالنسبة لقطع البيوس الحديثة فإن ليلو يستطيع استخدام ما مقداره (32 بت) من ما يسمى ب "عنونة القطاعات المنطقية" (بالإنجليزية: logical block addressing) للولوج الى جميع الاقراص الصلبة المخزنة في البيوس والتي تسمح البيوس بالولوج اليها.
تجدر الاشارة ايضا الى ان ليلو لا يعتمد على نظام ملفات معين و يستطيع القيام بعملية الاقلاع من عدة مصادر مثل القرص المرن او القرص الصلب، و من الاهمية بمكان ان نذكر ان ليلو لا يدعم ظهور اكثر من 16 نظام تشغيل في قائمته الرئيسية لاختيار نظام واحد و تحميله.
و توجد ايضا قائمة كبيرة بالمعلمات التي يمكن التحكم بها بشكل منفصل لكل نظام يظهر على القائمة الرئيسية لبرمجية الاقلاع ليلو ، على سبيل المثال يمكنك القيام بتحديد جذر النظام بشكل منفصل و منفرد لكل نظام تشغيل يظهر على هذه القائمة.
يضاف الى السابق ذكره انه يمكن تخزين ليلو في واحد من الاماكن التالية:
- سجل الإقلاع الرئيسي أو ما يعرف بال (MBR (Master Boot Record
- قطاع الإقلاع و هو قطاعٌ على القرص الصلب مخصص لعملية الاقلاع (و في هذه الحالة يجب تخزين برمجية دلالية لتؤشر الى قطاع الاقلاع في سجل الإقلاع الرئيسي)
ملفات ليلو [عدل]
الملف lilo.conf [عدل]
يتواجد هذا الملف في المسار etc/lilo.conf/ و يحوي نوعين رئيسيين من القطاعات:
- النوع الاول يتضمن الخيارات العامة مثل المعلمات التي تحدد سمات الموقع التمهيدي.
- النوع الثاني يتضمن خيارات مرتبطة بنظم التشغيل التي تظهر على القائمة الرئيسية، من الاهمية بمكان ان نذكر ان هذه الخيارات يمكن تكرارها الى 16 تكرار و في هذا اشارة الى ما سبق ذكره من ان ليلو يدعم الى حد 16 نظام تشغيل يمكن اظهاره على القائمة الرئيسية لبرمجية الاقلاع.
ويمكن ايضا الرجوع الى صفحات التوثيق للمزيد من المعلومات. التالي هو مثال للملف التعريفي lilo.conf:
large-memory lba32 boot=/dev/hda install=menu map=/boot/map prompt default=Linux image=/boot/vmlinuz-2.6.26 label="Linux" root=/dev/hda1 append="" read-only optional other=/dev/hda3 label="FreeBSD"
ملاحظة: بعد التنصيب السليم لليلو ستظهر قائمة لانظمة التشغيل لينكس و فري بي إس دي
المسار /boot/ [عدل]
يقوم ليلو بتخزين عدد من الملفات في هذا المسار.
قطاع الإقلاع - Master Boot Record [عدل]
يستطيع ليلو ايضا الكتابة على قطاع الإقلاع :
sbin/lilo -M/
المخرجات [عدل]
عندما يقوم ليلو بتحميل نفسه سوف يظهر الكلمة “LILO” و كل حرف تتم طباعته قبل أو بعد نشاط أو سلوك معين، و ان فشل ليلو في اي مرحلة من مراحل عملية الاقلاع فإن مقدار ما يتم طباعته من الاحرف من كلمة “LILO” يدلل على المشكلة، التالي هو توضيح للفكرة السابقة الذكر:
- في حال عدم طباعة اي حرف على الشاشة فذلك يعني انه لم يتم تحميل اي جزء من ليلو.
- في حال طباعة الحرف (L) فذلك يعني ان المرحلة الاولى من عملية الاقلاع قد تمت بنجاح و لكن المرحلة الثانية فشلت و عادة ما يعني ذلك حدوث خطأ في الاجزاء الصلبة للنظام أو وجود خطأ في المعلمات المخصصة للقرص الصلب في البيوس و لكن ليس بالضرورة ان يكون هذا السبب.
- في حال طباعة الأحرف (LI) فذلك يعني ان المرحلة الاولى من عملية الاقلاع قد تمت بنجاح و قامت بتحميل - Load المرحلة الثانية من عملية الاقلاع و لكنها -اي المرحلة الاولى- فشلت في تنفيذ - Execute المرحلة الثانية و عادة ما يحدث ذلك لوجود معلمات خاطئة عن القرص الصلب في البيوس
- في حال طباعة الأحرف (LIL) فذلك يعني ان المرحلة الثانية من عملية الاقلاع قد تم تحميلها - Loaded و لكنها لا تستطيع القيام بتحميل جدول التوصيف (descriptor table) من ملف الربط (map file) و عادة ما يعني ذلك حدوث خطأ في الاجزاء الصلبة للنظام أو وجود خطأ في المعلمات المخصصة للقرص الصلب في البيوس و لكن ليس بالضرورة ان يكون هذا السبب.
- في حال طباعة الأحرف (?LIL) فذلك يعني ان المرحلة الثانية من عملية الاقلاع قد تم تحميلها - Loaded في عنوان ذاكرة رئيسي خاطىء و عادة ما يعني ذلك وجود معلمات خاطئة عن القرص الصلب في البيوس
- في حال طباعة الأحرف (-LIL) ذلك يعني ان جدول التوصيف (descriptor table) غير سليم.
- في حال طباعة الأحرف (LILO) فذلك يعني ان جميع اجزاء مدير الاقلاع تم تحميلها بنجاح.
رموز الأخطاء [عدل]
من الامثلة على رموز الأخطاء التي قد يظهرها ليلو: (L 01 01 01, L 07 07 07 الخ ...) ، نسرد تاليا قائمة بأخطاء ليلو مربوطة برموزها الرقمية:
| رمز الخطأ | إسم الخطأ | وصف الخطأ |
| 0x00 | خطأ داخلي (Internal Error) | يتم اصدار هذا الخطأ عن طريق برمجية قراءة القطاع الموجودة كجزء من برمجية الاقلاع ليلو و هذا في حالة وجود تضارب داخلي و هذا بدوره يمكن ان يحدث نتيجة وجود تلف في بعض الملفات المتعلقة بليلو و لذلك ننصح باعادة بناء ملف الربط (map file) ، ويمكن ايضا حدوث هذا الخطأ في حالة محاولة الولوج الى قطاعات تتجاوز الترميز رقم 1024 و ذلك عند القيام بانتقاء الخيار (LINEAR). |
| 0x01 | أمر غير مسموح بتنفيذه (Illegal Command) | هذا الخطأ غير وارد الحدوث! (ولا حتى اي نوع من الأخطاء يجب ان يحدث!) و لكن ان حدث هذا الخطأ فهناك احتمالية ان يكون ذلك مؤشر على محاولة للولوج الى قرص صلب غير مدعوم عن طريق البيوس و البتالي تأكد من ان البيوس تستطيع رؤية هذا القرص الصلب (و تأكد ايضا من تفاصيل البيوس لديك!). |
| 0x02 | علامة عنوانية غير موجودة (Address mark not found) | عادة ما يعني هذا وجود مشكلة داخلية ، ننصحك في هذه الحالة بإعادة محاولة الاقلاع عدة مرات. |
| 0x03 | قرص محمي من الكتابة (Write-protected disk) | يحصل ذلك فقط في حالات الحاجة الى الكتابة على القرص الصلب. |
| 0x04 | القطاع غير موجود (Sector not found) | يشير هذا الخطأ عادة الى عدم حصول تطابق هندسي في قطاعات القرص الصلب، ان كنت تقوم بالاقلاع من منصة ( سكزي SCSI) أو من (مقبس الملحقات التقني المتقدم IDE Disk) فعليك التأكد من ان ليلو حصل على معلومات القطاعات الهندسية السليمة من نواة نظام التشغيل و تأكد ايضا من ان تعريف القطاع الهندسي في ليلو يطابق تعريف القرص الصلب، قد تساعدك إزالة الخيار (COMPACT) و/أو اضافة الخيارات (LBA32) و (LINEAR). |
| 0x06 | تغيير المسار النشط (Change line active) | يعتبر هذا خطأ عابر أو عارض ، كل ما تستطيع القيام به هو اعادة الاقلاع مرة اخرى لحل المشكلة. |
| 0x07 | تهيئة خاطئة (Invalid initialization) | يشير هذا الخطأ الى فشل البيوس في تهيئة المتحكم بالقرص الصلب ، راجع معلمات البيوس لديك للتأكد من التهيئة السليمة للبيوس (كما و يمكنك استخدام ما يعرف ب قرص الإنقاذ و اعادة تشغيل ليلو). |
| 0x08 | تجاوز تنفيذ DMA (DMA overrun) | هذا الخطأ يجب ان لا يحصل و ان حصل قم باعادة تشغيل ليلو |
| 0x09 | محاولة تجاوز DMA حدود ال 64 كيلوبايت (DMA attempt across 64k boundary) | هذا الخطأ لا يجب ان يحدث و لكنه قد يكون اشارة الى عدم تطابق هندسي في قطاعات القرص الصلب ، ننصحك ببحث الحلول الواردة في الخطأ المرموز له ب (0x04). |
| 0x0C | قرص غير مهيئ (Invalid media) | لا يجب حصول هذا الخطأ ، قم بالاعادة مرة اخرى. |
| 0x10 | خطأ CRC (CRC error) | يوجد خطأ ما في القرص الصلب ، حاول القيام بالاقلاع عدة مرات. |
| 0x11 | تصحيح ECC ناجح (ECC correction successful) | حدوث خطأ في القراءة و لكن تم تصحيحه ، لا يستطيع ليلو تمييز هذه الحالة و لذلك يقوم بإيقاف عملية الاقلاع و التحميل ، قم بإعادة الاقلاع مرة اخرى. |
| 0x20 | خطأ في المتحكمات (Controller error) | لا يوجد وصف لهذا الخطأ و لكن التعليق الوحيد اللذي نملكه هو ان هذا الخطأ ما كان يجب حدوثه اساسا |
| 0x40 | خطأ في الولوج (Seek failure) | عادة ما تكون هذه مشكلة في القرص الصلب ، حاول اعادة الاقلاع من جديد. |
| 0x80 | انقضاء مهلة الانتظار للقرص (Disk timeout) | هذا الخطأ عادة ما يعني ان القرص غير جاهز للإقلاع وذلك لعدة اسباب محتملة منها ان القرص غير صالح او ان الرأس المدبب لعملية القراءة و الكتابة غير سليمو ان كنت تقوم بمحاولة الاقلاع من قرص مرن فقد تكون نسيت اغلاق باب الجهاز و ان لم تكن هذه الاسباب فعليك القيام باعادة الاقلاع مرة اخرى. |
| 0x99 | المرحلة الثانية من عملية الاقلاع غير سليمة (Invalid Second Stage) | قم بالرجوع الى الخطأ المرموز له ب (0x04) لمحاولة حل المشكلة. |
| 0x9A | ليلو لا يستطيع العثور على المرحلة الثانية للإقلاع (Can't Find Second Stage) | تأكد من وجود أداة الاقلاع السليمة ، على سبيل المثال (boot=/dev/hda1) بينما يجب ان تكون على سجل الإقلاع الرئيسي و تأكد ايضا من عدم وجود خطأ كتابي (boot=/dev/<<NO TYPO IN HERE>>). |
| 0xBB | خطأ في البيوس (BIOS error) | الرجاء مراجعة الخطوات الواردة في الخطأ المرموز له ب (0x04). |
انظر أيضاً [عدل]
وصلات مفيدة [عدل]
- LILO installation instructions
- LILO mini-HOWTO
- LILO error messages
- LILO and GRUB: Boot Loaders Made Simple by Judith Myerson
- From Lilo to Grub
- Lilo tips from the Linux Kernel Howto
وصلات خارجية [عدل]
المراجع [عدل]
- CentOS.org, Chapter 24. Configuring ELILO http://www.centos.org/docs/5/html/5.2/Virtualization/chap-Virtualization-Configuring_ELILO.html
- Managing EFI Boot Loaders for Linux, Rod Smith http://www.rodsbooks.com/efi-bootloaders/index.html