![]() |
شرح تركيب باكج ال RPM ومعالجة مشكلة ال dependency من الآلف الى الياء بأمر الله
بــــــسم الله الرحمن الرحيـــــــــــم (هذا هو الموقع المفضل لدى وهو ما سيتم التعامل معه اثناء الشرح بأمر الله)السلام عليكم ورحمة الله وبركاته ### شرح تركيب باكج ال RPM ومعالجة مشكلة ال dependency من الآلف الى الياء بأمر الله ### - تنصيب البرامج او الباكجات packages هو أمر نقوم به كمديرين للسيرفرات وذلك عند حاجتنا الى برنامج لكى يضيف مزايا أكثر للسيرفر ويعطينا أيضا امكانيات أفضل - تنصيب الباكج سهل جدا بامر الله ولكنه فى بعض الاحيان يتطلب الى الصبر - الباكج هى ملف قابل للتنفيذ executable وذلك تحت بيئة لينكس وينتهى دائما بالامتداد rpm - يتم تنصيب الباكجات باستخدام برنامج ال RPM (Redhat Package Manager) وهو الذى يمنحنا التحكم وادارة الباكجات ,مثل تنصيب, تحديث, ازالة, والاستعلام عن باكج وغيرها من مهام ادارية للباكجات الموجودة على الخادم ,,, * ما الذى نحتاجه لكى نستطيع تنصيب باكج ؟؟ 1) معرفة عامة وبسيطة عن ملف الباكج وأجزائه 2) موقع لتنزيل الباكج من خلاله 3) اسم الباكج المراد تنصيبها 4) اختيار وتحديد الباكج المناسبة لسيرفرنا 5) تنصيب الباكج 6) معالجة باكجات ال dependency (ان تم احتياجها) 1) قبل ان يتم التعامل مع ملف الباكج فانه يلزم معرفة مما يتكون ,حيث يتكون ملف الباكج من التالى : كود:
Packagename-version-release.architecture.rpm - ال version , هو رقم اصدار البرنامج (مثل الاصدار الآول , الثانى , ...وهكذا) - ال release , هو رقم نسخة الاصدار (مثل الاصدار الآول النسخة الاولى , الثانية , ... وهكذا) - ال architecture , هو اصدار البروسيسور الخاص بسيرفرك , وفيما يلى الاصدرات التى ستجدها متوفرة : الاصدار Noarch ,بمعنى لا اصدار محدد اى ان الباكج ستعمل على اى اصدار للبروسيسور بدون اى مشاكل بامر الله الاصدار 1386 ,للآنظمة ذات ال 32 bit X68 الاصدار I586 ,للبروسيورز الخاصة بالجيل الآول Pantium I وبروسيسورز من النوع AMD الاصدار I686 ,للبروسيسورز الخاصة بالجيل الآول, الثانى ,الثالث, والرابع Intel® Pentium® II, Intel Pentium III, Intel Pentium 4 , وايضا بروسيسورز من النوعAMD® Athlon, و AMD Duron الاصدار X86_64 ,للآنظمة ذات ال 46 bit مثل البروسيسورز AMD Athlon64, AMD Opteron, Phenom and Intel EM64T (Core 2 Duo, Core 2 Quad) الاصدار Ppc ,للآنظمة ذات ال 32 bit من النوع IBM® POWER, IBM eServer™ pSeries®, and IBM eServer iSeries 3) لكى تقوم بانزال باكج فانه يجب عليك ايضا معرفة اسم الباكج المطلوب تنصيبه 4) الآن لا ينقصنا لتنزيل اى باكج سوى تحديد اى باكج المناسبة للسيرفر الخاص بنا , من خلال ما سبق شرحه فالمكتمل لدينا الآن هو التالى كود:
Packagename(ok)-verson(ok)-release(ok).architecture(no).rpm(ok) لمعرفة ذلك ولتحديد الباكج المناسبة لنا ,فانه يلزمنا تحديد نوع البروسيسور الخاص بالخادم, وذلك من خلال الآمر التالى : كود:
uname –p ولمعرفة اسم نسخة نظام التشغيل الخاص بالسيرفر حتى يسهل علينا اكثر فى اختيار الباكج , نستخدم الامر التالى كود:
cat /etc/redhat-release 5) الآن نذهب الى الموقع http://rpm.pbone.net/ , ونقوم بالبحث عن الباكج المطلوبة ومن ناتج البحث نختار الباكج المتوافقة مع التالى : - نظام التشغيل الخاص بنا - نوع البروسيسور الخاص بالسيرفر عند استخدام الموقع فى البحث عن باكج فانه هناك عدة خيارات للبحث ,كما هو موضح فى الصورة التالية - الاختيار الآول ,تحدده فى حالة اردت ان تحصل على باكج تحتوى على ملف معين او برنامج معين ,مثال , libname.so او libname - الاختيار الثانى ,تحدده فى حالة اذا اردت ان تبحث عن روابط اف تى بى لتزيل الباكج من خلالها مثال , packagename او libname او filename - الاختيار الثالث ,تحدده فى حالة اذا اردت ان تبحث عن اسم باكج محدد اى انك ستقوم بادخال اسم باكج وليس مكتابات او ملفات خاصة بالباكج, مثال packagename - الاختيار الرابع , تحدده فى حالة اذا اردت ان تبحث عن روابط اف تى بى لتزيل الباكج من خلالها ولكن البحث يكون باسم الباكج فقط, مثال packagename بعد البحث سنجد نسخ عديدة من الباكج , قم باختيار الباكج المناسبة لسيرفرك ونسخة نظام التشغيل الخاصة بك, بعد اختيار الباكج ستجد روابط عديدة لتنزيل الباكج من خلالها , على سبيل المثال اخترت التالى الان لكى نقوم بتنصيب الباكج لدينا اختيارين : الآول , هو انزال الباكج الى الخادم ومن ثم تنصيبها الثانى , هو تنصيب الباكج مباشرة من خلال الرابط (وهذا افضل وهو ما ساعتمد عليه بأمر الله) لتنصيب الباكج من خلال الرابط نستخدم الامر التالى : هذا الامر سيقوم بتنصيب الباكج مباشرة على الموقع الموجود به ,دون الحاجة الى انزالها ومن ثم تنصيبها تحليل الآمر rpm –Uvh - برنامج ال rpm ,هو البرنامج المسؤل عن ادارة الباكج كما رأينا سابقا - اوبشن ال U ,معناه تحديث او Upgrade وهو سيقوم باعادة تنصيب الباكج مرة اخرى فى حالة اذا كانت موجودة ولكن بنسخة اقدم او تنصيبها اذا كانت غير موجودة - اوبشن ال v ,معناه جعل عملية التنصيب مرئية او verbose ,وهو مفيد جدا لكى تكون على علم بما يتم عمله اثناء التنصيب - اوبشن ال h ,معناه الهاش او hash حيث يقوم باظهار هاشات (#) اثناء عملية التنصيب الان المفترض ان يتم تنصيب البرنامج بدون اى مشاكل الا فى حالات مثل : - وجود نسخة تطابق النسخة التى يتم تنصيبها مما يؤدى الى ظهرو خطأ عدم التوافق او conflicts , ولكى تجبر عملية التنصيب على الاكتمال واهمال هذا الخطأ فانك ستحتاج الى استخدام اوبشن اخر وهو --force ,لكى يصبح الآمر كالتالى : - احتياج البرنامج الى برنامج أخر يسمى dependency ,وهو برنامج يعتمد عليه برنامج أخر (فى مثالنا هو flvtool2 ) بشكل اساسى فى عمله, لذلك لا يتم تنصيبه الا بعد ان يكون ال dependency موجود ومثبط على النظام, ولكن لتجبر عملية التنصيب على الاستكمال واهمال عدم وجود ال dependency فاننا سنحتاج الى اوبشن --nodeps ,لكى يصبح الآمر بالشكل التالى : 6) كيف يتم معالجة او تنصيب برامج ال dependencies ؟؟ - المشكلة الآولى التى تواجها عند تنصيب اى باكج (ذات الامتداد rpm ) تكمن فى احتياج الباكج لآكثر من برنامج dependency والتى لا توجد عندما يتم تنصيب برنامج فى صيغة المصدر او source ذات الامتداد .tar.gz او غيرها من امتدادات اخرى - لحل مشكلة ال dependencies فانه يوجد حلين لا ثالث لهما : الحل الآول , هو ان يتم تنصيب كل dependency يدويا ,وهو امر شاق وياخذ وقت طويل وذلك لآن كل dependency قد تعتمد على برامج او dependencies اخرى الحل الثانى ,هو اضافة مسار الموقع يسمى repository الى برنامج ال yum واستخدام برنامج ال yum فى تنصيب الباكج حيث بعد اضافة ال repository اليها فان برنامج ال yum سيقوم بتنصيب الباكج وايضا سيقوم بتنصيب كل ما يحتاجه الباكج من dependencies بشكل اوتوماتيكيا ,وبالتالى سيوفر وقت وجهد ولهذا فانه أفضل حل لمشكلة ال dependencies كيف يتم حل مشكلة ال dependencies باستخدام ال repository فى برنامج yum ؟؟؟ - لاضافة مسار ال reposritory الخاص بموقع http://rpm.pbone.net/ الى برنامج ال yum سنحتاج الى : 1) ايجاد ال repository ,وهذا نستطيع الحصول عليه من الموقع من خلال اختيار YUM REPOمن قائمة الموقع على اليسار ,وبعد الضغط عليها ستدخل الى صفحة تقوم بتعبئة النموذج لكى تسجل بالموقع ,والنموذج كالتالى : - بعد اتباع الخطوات من 1 الى 4 نضغط على زر register لكى يتم ارسال رسالة التفعيل الى حسابك البريدى الذى قمت بادخالة, حيث ستجد الرسالة باسم PBONE email validation ,بعد الدخول الى الرسالة ستجد رابط بعد الضغط عليه ستجد الرسالة التالية : كود:
- بعد الضغط على كلمة yum conf ستذهب الى صفحة من خلالها يتم اعداد وضبط مسار ال repository وذلك بتحديد نقطتين فقط : الآولى ,هى نوع او اصدار البروسيسور على السيرفر الذى سيتم اضافة مسار ال repository الى برنامج ال Yum عليه الثانية ,هى اسم نسخة نظام التشغيل الخاصة بالسيرفر فمثلا ,البروسيسور الخاص بى هو I386 واسم نسخة نظام التشغيل هو CentOS واصدارها 5 ,اذا اختيارى سيكون كالتالى : بعد ذلك سنقوم بالضغط على كلمة generate ,وبعدها سيتم توليد مسار ال repository المتوافق مع السيرفر ويكون كالتالى : الآن لكى نقوم باضافة مسار ال repository الى برنامج ال yum سنقوم باتباع الآتى ولكن بالترتيب : 1) نضيف مسار ال repository الى برنامج ال Yum وذلك بفتح كونفيج البرنامج واضافة المسار ,باستخدام التالى : كود:
vi /etc/yum.conf كود:
ثم بعد ذلك نضغط على زر Esc ثم نكتب :wq ثم نضغط Enter, لكى نقوم بحفظ ما تمت اضافته الى كونفيج برنامج ال yum 2) نستخدم برنامج ال yum فى تنصيب الباكج المطلوبة وذلك باستخدام الآمر التالى كود:
yum –y install flvtool2 بعض الآوبشنز المهمة لبرنامج ال rpm , - اوبشن ال i ,يستخدم فى التنصيب install ,مثال : كود:
rpm –ivh packagename.version.release.architecture.rpm كود:
rpm –e packagename كود:
rpm –e --allmatches packagename كود:
rpm –q packagename كود:
rpm –qa كود:
rpm –qa | more كود:
rpm –qa | grep packagename تم بفضل الله العلى العظيم أتمنى الاستفادة من جميع اخوتى المسلمين, وارجو معذرتى ان قد أطالت عليكم او تم الاغفال عن نقطة او التقصير فى الشرح هذا الشرح خاص بى وليس منقولا ,لذلك يرجى ممن يقوم بنقله ان يذكر اسم صاحب الموضوع وهو Human.bieng@hotmail.com لا تنسونى من دعائكم وتقبلوا وافر تقديرى واحترامى وترقبوا المزيد بامر الله والسلام عليكم ورحمة الله وبركاته خاص بشركة الرحمة للاستضافة www.ALR4H.com للعمل وليس للدردشة او التعارف human.bieng@hotmail.com |
مشكوووووووووووووووووووور
|
العفو اخى الكريم
|
ما شاء الله تبارك الله
درس بسيط وميسر ومرتب |
إقتباس:
هلا اخى الكريم جزاك الله خيرا ولقد شرفنى كثيرا مرورك العطر تقبل تحياتى لك اخى الكريم والسلام عليكم ورحمة الله وبركاته |
جميع الأوقات بتوقيت مكة المكرمة. الساعة الآن » 06:18 PM. |
Powered by vBulletin
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © ArabWebTalk.Com 2004-2012