ملخص لقاء مجموعة مستخدمي لينكس في جدة

ملخص لقاء مجموعة مستخدمي لينكس في جدة



كما عودتكم مجموعة مستخدمي لينكس في جدة بلقائها الشهري، تم انعقاد اجتماع المجموعة بالأمس في مقر التدريب بشركة الزاهد و كان عنوان اللقاء "إعادة بناء النواة في اللينكس" و هو ما يعرف بـ (Kernel Compilation).

دقت دقائق الساعة الثامنة مساءا و كان هناك تقريبا 6 من الحضور ينتظرون بدء اللقاء الشيق و الذي سيقدمه الأخ فيصل يوسف مؤلف أحد الكتب العربية عن ريد هات. للأسف لم أعلم أن هناك مباراة للمنتخب في نفس الوقت و أعتقد أن هذا هو أحد أسباب تغيب معظم المهتمين حيث أننا أغلب مجتمعنا يلعبون كرة القدم "من قلبهم" إلا من رحم ربي.

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

كان اللقاء يرتكز على ثلاث نقاط رئيسية:

تثبيت البرامج من شفرة المصدر (Source Code). تثبيت البرامج من حزم (RPM) بناء الكرنل من شفرة المصدر

تثبيت البرامج من الشفرة المصدرية

بدأ الأخ فيصل بعملية تثبيت البرامج و كيف أن البرامج المصدرية (Source Code) ينتهي تنسيقها إما بـ (gz) أو (bz2) و لتثبيتها ينبغي عليك أولا فك الضغط و من ثم البدأ في خطوات التثبيت.

فإذا كان اسم البرنامج (program-x.y.tar.gz) يمكنك استخدام الأمر:

tar zxvf program-x.y.tar.gz

أما إذا كان اسم البرنامج (program-x.y.tar.bz2) يمكنك استخدام الأمر:

tar jxvf program-x.y.tar.bz2

بعد ذلك يتوجب عليك دائما قراءة الملفين (README) و (INSTALL) اللذين ستجدهما داخل المجلد الخاص بالبرنامج المراد تثبيته. حيث أنهما سيوضحان لك ما هي المتطلبات للتثبيت و غالبا ما ستجد أن خطوات التثبيت موجودة هناك و هي باختصار ثلاث خطوات:

./configure make make install

ما هي مميزات استخدام الشفرة المصدرية في تثبيت البرامج؟

سرعة أداء البرنام الذي تم تثبيته لأنه سيعمل بنفس سرعة المعالج الموجود التخصيص و اختيار خصائص معينة عند تثبيت البرنامج

ما هي عيوب استخدام الشفرة المصدرية في تثبيت البرامج؟

وقت أطول للبناء كتابة أكثر من أمر كيفية معرفة ما هي البرامج الموجودة المتطلبة للتثبيت كيفية إلغاء البرنامج في حالة حذف المجلد بعد التثبيت

تثبيت البرامج من حزمة (RPM)

قامت شركة ريدهات بعمل ما يسمى مدير حزم ريدهات (RedHat Package Manager) و اختصارها (RPM) و هي صيغة للبرامج المبنية و المعدة مسبقا إما عن طريق شركة ريدهات أو أحد المبرمجين. و البرامج التي تنتهي بنسق (RPM) تحتوي على

البرامج التشغيلية (Executables) معلومات (Information) مواقع الملفات (Locations)

لتثبيت حزمة (RPM) كل ما عليك كتابته هو:

rpm -Uhv program-x.y.z-i386.rpm

ما هي مميزات استخدام حزمة (RPM) في تثبيت البرامج؟

سرعة في عملية التثبيت سهولة عملية حذف و إضافة البرامج

ما هي عيوب استخدام حزمة (RPM) في تثبيت البرامج؟

مشاكل الإعتمادية (Dependencies) بطء أداء البرامج حيث أنه يتم بناؤها غالبا على معالجات 386 أو 586 لدعم أكبر عدد من المعالجات. قد لا تتوفر حزمة (RPM) لبرنامج معين حتى تصدر من شركة ريدهات أو يقوم أحد المبرمجين بعملها لك.

بناء الكرنل من الشفرة المصدرية

من المعروف في عالم اللينكس أن موقع www.kernel.org هو الموقع الرئيسي لبناء الكرنل و الذي يشرف عليه و على عملية تطوير الكرنل لينس تورفالدز. لذلك إن أردت أن تستخدم آخر إصدار للكرنل، قم بتنزيله من الموقع المذكور. فمثلا الكرنل الحالي هو (2.6.0) و هو آخر إصدار مستقر للكرنل.

أما إن كنت من هواة حزم الـ (RPM)، فيمكنك تنزيل حزمة (RPM) للكرنل المراد تحميله من موقع الشركة الخاصة بتوزيعتك مثل ريدهات أو ماندريك أو حتى سوز.

قد يتبادر إلى ذهنك سؤال، لماذا أحتاج إلى كل هذا العناء أو المشاكل لإعادة بناء النواة أو الكرنل؟

هناك عدة أسباب في الحقيقة منها:

لدعم أجهزة معينة غير مدعومة في الكرنل المستخدم لتخصيص خصائص الكرنل المستخدم للتجربة لتصغير حجم الكرنل

المتطلبات قبل بناء الكرنل:

عليك أن تعلم أخي أنك بصدد التعمق في عالم لينكس الواسع، لذا يتوجب عليك أن تتسلح و تستعد و تحضر ورقة و قلم و تكتب مواصفات جهازك بالتفصيل. حدد ما يلي على الأقل: نوع المعالج مقدار الذاكرة العشوائية (RAM) نوع نظام الملفات المستخدم (File System) نوع الـ USB نوع بطاقة الصوت نوع بطاقة الشاشة نوع بطاقة الشبكة نوع بطاقة المودم

أعتقد هذه أهم الأشياء التي تحتاج إلى تحديدها.

خطوات تثبيت الكرنل من الشفرة المصدرية هي:

make mrproper make xconfig make dep make bzImage make modules make modules_install

لا تنسى أن تعدل في مدير الإقلاع (Boot Manager) الذي تستخدمه سواء كان جرب (GRUB) أو لايلو (LILO).

الخطوة الأول (make mrproper) تقوم هذه الخطوة بتنظيف النظام من أي تثبيتات سابقة و هي خطوة غير ضرورية ولكن ينصح بها دائما.

الخطوة الثانية (make xconfig) xconfig هنا تعني أنك تريد استخدام الواجهة X في عملية بناء الكرنل، هناك خيارات أخرى ستجدها في الملفات المساعدة لتثبيت الكرنل إذا أردت المزيد. طبعا هذه الخطوة أساسية حيث أنها ستفتح لك نافذة لتختار منها ما تريد تثبيته بشكل رئيسي في الكرنل أو استخدامه عند الحاجة كـ موديول (Module).

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

الخطوة الثالثة (make dep) في هذه الخطوة سيقوم البرنامج بعمل قراءة سريعة لاختياراتك و التأكد من الإعتمادية في الإختيارات.

الخطوة الرابعة (make bzImage) هذه هي خطوة بناء النواء و التي تستغرق أطول وقت حتى تفرغ منها إعتمادا على خياراتك طبعا.

الخطوة الخامسة (make modules) هذه الخطوة ضرورية في حال اخترت أي دعم على شكل موديول (Module) حتى يتم بناؤه، أما في حال عدم قيامك باختيار أي موديول (Module) فلا تحتاج إلى هذه الخطوة و الخطوة التي تليها و لكني أستبعد ذلك!.

الخطوة السادسة (make modules_install) تقوم هذه الخطوة بتثبيت جميع الموديولز (Modules) التي تم بناؤها.

بالطبع هناك تفصيل أكثر من هذا و هناك وثائق تساعدك على ذلك و لكن هذا كان ملخص اللقاء و نحن نرحب بأي استفسارات على منتدى لبنكس لكل العرب أو عنوان المجموعة البريدي [email protected]

أحب أن أشكر الأخ فيصل على المحاضرة الشيقة كما أحب أن أشكر الحضور على تفاعلهم.


شارك الموضوع