الحزم و التحزيم في سلاكوير

14
لمبتدئينر لينكس ل سلكوي ا و التحزيم لحزم سلكويرن قيلمبتدئي ل سلكوير إدارة الحزم فيلد حداني خا30/07/2012 النسخة اﻷولى

Upload: khalid-hamdani

Post on 25-Jun-2015

132 views

Category:

Education


1 download

DESCRIPTION

إدارة الحزم في سلاكوير

TRANSCRIPT

Page 1: الحزم و التحزيم في سلاكوير

ينتدئ

لمبس ل

ينكر ل

كويسل

لحزم و التحزيماللمبتدئين قي سلكوير

إدارة الحزم في سلكوير

خالد حداني

30/07/2012

النسخة األولى

Page 2: الحزم و التحزيم في سلاكوير

I- الحزم الرسمية في سلكوير

I

A .أدواة إدارة الحزم الرسمية في سلكوير

نظام إدارة الحزم:عريفت� ) (اختصارا بـPackage Management Systemنظام إدارة الحزم ( (بالنجليزية:

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

بيونكس تقوم بإدارة اللف من الحزم. الحزم هي توزيعات من التطبيقات والبرمجيات وبيانات ميتاداتا مثل اسم البرنامج الكامل ووصف الغرض منه ورقم النسخة ووقائمة التبعيات اللزمة لتشغيل البرنامج

بالشكل الصحيح. بعد التنصيب، تخزن البيانات الوصفية في قاعدة بيانات محليةللحزم ( عن ويكيبديا) .

كانت دئماd الصعوبة الساسية و التي تؤرق المبتدئين في سلكوير هي إدارة الحزم،

dependencesلن الدوات الصلية لدارة الحزم في سلكوير ل تأخذ بعين العتبار (التبعات،الرتباطات،العلقات لم أجد المصطلح المعرب المؤكد لهذه الكلمة)بين

بالنسبة لفيدورا وyum بالنسبة للتوزيعات الدبيانية أو aptمختلف الحزم كما تعمل سانتوس

يجب عليك أن تنصب حزم أخرى ترتبطaudacityفمثل إذا أردت أن تنصب حزمة :13.1.0بها و هي في سلكوير

Audacity requires libsndfile and either wxPython or wxGTK, and optional

dependencies are ffmpeg, soundtouch, and twolame.

6

Page 3: الحزم و التحزيم في سلاكوير

مدير الحزم الصلي في سلكوير

أول مدير للحزم في سلكوير بحيث ظهر في الصدارة الولى ،pkgtoolتعتبر الداة لهذا البرنامج واجهة شبه رسومية تمكن من تنصيب ،حذف و تحديث الحزم و ذلك

بفضل التطبيقات التنفيذية التالية المتضمنة في الداة:installpkg يستخدم هذا التطبيق لتنصيب حزمة جديدة

removepkg يستخدم هذا التطبيق لحذف حزمة من نظامك

upgradepkg يستخدم في ترقية الحزمة من النسخة القديمة إلى الحدث

explodepkg . لسلكوير في الدليل الحالي tar هذه الداة تفك الضعط على تحزيم

هذا التطبيق يتم إستخدامه لعمل حزمة سلكوير جديدة من محتويات الدليل الحاليmakepkg

هذه الدوات أو التطبيقات ما هي إل سكربتات باش تلعب دوراd محددأd و التي يمكنإستغللها عن طريق الواجهة شبه الرسومية كالتالي:

otherتنصيب الحزمة من مجلد اخر =

removeإلغاء وحذف الحزم المنصبة = viewمعاينة لئحة متفات توجد بالحزمة =

setupإذا كنت تريدإعادة تنفيذ سكريبت من السكريبات التي تنفذ في نهاية= التنصيب لعدادعنصر معين في النظام

لكن أغلب مستخدمي سلكوير يفظلون إستعمال هذه الدوات عن طريق سطرالوامر و ذلك كالتالي :

installpkg libreoffice-3.3.2-i486-1alien.txz

libreofficeإسم الحزمة =

الحزم الرسمية في سلكوير

7

Page 4: الحزم و التحزيم في سلاكوير

=الصدارة3.3.2i486المعمارية=architecture

alienإسم الباني= خلل عملية التنصيب هاته يتم إضافة إسم هذه الحزمة الى لئحة الحزم المنصبة

/var/log /packagesالمخزنة في /ls /var/log/packages | grep libreofficelibreoffice-3.3.2-i486-1alien

كالتالي :removepkgلحذف حزمة يستعمل المر removepkg libreoffice

و تضاف الحزمة المحذوفة الى لئحة تخزن في المجلد التالي

/var/log/removed_packages/ls /var/log/removed_packages | grep libreofficelibreoffice-3.3.2-i486-1alien

وتضاف الحزمة الى لئحةupgradepkgلتحديث حزمة يستعمل المر /var/log/removed_packagesتخزن في نفس المجلد السابق /

upgradepkg libreoffice-3.3.2-i486-1alien.txz

slackpkgالداة. 1

و هو عدم قدرة هذا الخيرpkgtoolلسد نقص في9,1ظهرت هذه الداة في سلكوير

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

pkgtool؟ تستعمل نفس التطبيقات التنفيذية المسنعملة منslackpkgطبعا  الجواب هو ل لن

و هيpkgtoolطرف installpkgremovepkgupgradepkg

. تمكنك هذه الداة من التعامل فقط مع الحزم الرسمية في سلكوير،أي الحزم

أي قرص تنصيب سلكويرslackDVDالموجودة على

الحزم الرسمية في سلكوير

8

Page 5: الحزم و التحزيم في سلاكوير

.للتعامل مع هذه الداة يجب أول  فتح الملف التالي/ بصلحيات المستخدم الجذر كالتاليetc/slackpkg/mirrorsإفتح الملف

vim /etc/slackpkg/mirrors

ثم أزل العلمة # على المرات القريبة من بلدك بلجيكا مثل،واحدة فقط لن هذهالداة ل تتعامل ال مع عنوان واحد

Finland,# ftp://ftp.funet.fi/pub/mirrors/ftp.slackware.com/pub/slackware-13.1/# Belgium, 2x1Gbit#http://ftp.belnet.be/packages/slackware/slackware-13.1/ftp://ftp.belnet.be/packages/slackware/slackware-13.1 /# Bulgaria, 5Mbit# http://mirrors.unixsol.org/slackware/slackware-13.1/# ftp://mirrors.unixsol.org/slackware/slackware-13.1/# Slovakia, 100Mbit

كما يجب منع ترقية وتحديث بعض الحزم المهمة وذلك بفتخ الملف /etc/slackpkg/blacklistوتغيره ليصبح كالتالي /

kernel-generic-smpkernel-huge-smpkernel-modules-smpkernel-sourcekernel-headers

...ثم طبق الوامر التالية

slackpkg update gpgslackpkg updateslackpkg install-newslackpkg upgrade-all

slackpkgو هذ بعض أهم أوامر

update gpgupdatesearch packagenameinstall packagenameupgrade packagenamereinstall packagename

الحزم الرسمية في سلكوير

9

Page 6: الحزم و التحزيم في سلاكوير

remove packagenameclean-systemupgrade-allinstall-newnew-configblacklist packagenamedownload packagenameinfo packagename

rpm2tgzالداة . 2

شكل التحزيم عند ريد هات )red hat package manager وهي (rpmهذه الداة تحول

) أي شكل التحزيم في سلكوير،و من المعروفtgzو التوزيعات المبنية عليها، الى ( متوفرة بشكل كبير و بالتالي يمكنك عند القتضاء الستعانة بهذه الداةrpmsأن

أو ترقيها بالمرinstallpkg ثم تنصبها بواسطة المر tgz الى rpmلتحويل حزمة من upgradepkg

الحزم الرسمية في سلكوير

10

Page 7: الحزم و التحزيم في سلاكوير

II- الحزم الغير الرسمية في سلكوير

II

A .)أدوات إدارة الحزم الغير الرسمية في سلكويرslackbuilds;

sbopkg(

السلكبيلد :الطريقة اليدويةفي كثير من الحيان قد ل يجد مستخدم لينكس حزمة معينة على توزيعته المفظلة

إنطلقا  من الكودcompilationفي هذه الحالة ، عليه أن يقوم بعملية التجميعالمصدري

على جهازكcompilateurهذه العملية قد تكون معقدة، و تتطلب توفرالوقت و مجمع ، و الذي غالبا  ما ينصب إفترضيا  على أشهر توزيعات لينكس، ومن بين أشهرهذه

،و تتمثل عملية التجميع في تحويل الكود الذي كتبهGCCالمجمعات على لينكسbinaireأوبال 0,1النسان الى لغة اللة و هي عبارة عن متتابعات

لكن في سلكوير توجد طريقة خاصة لبناء و تجميع الحزم، إنطلقا  من الكود يسمىbashالمصدري، و ذلك بكتابة سكريبت باش

slackbuild،سلكبيلد عملية التجميع بطريقة خاصة بحيث نحصلautomatiserيمكن السلكبلد من أتمتة

على حزمة سلكوير بجودة عاليةالشيئ الذي يمكن من تنصيبها بعد ذلك عنinstallpkgطريق المر

هل يجب على المبتدأ في سلكوير كتابة السلكبلت؟ طبعا  الجواب على هذا السؤال هو ل، لنه قد يجدها بسهولة على النترنيت كتبها

مستخدمون ا خرون أكثر خبرة لقد قامت مجموعة قليلة العدد من المستخدمين بكتابة سلكبيلدات و تجميعها في

وبمساعدة مستخدمين ا خرين إستطاعو أن يجعلو منهslackbuilds.orgموقع لهم

12

Page 8: الحزم و التحزيم في سلاكوير

مستودع كبير للسلكبيلدات يعتبر شريان مهم لحياة سلكوير أكبرالمساهمين فيEricHameleersكمايجب ذكر مستودع كبير أيضا  لصاحبه

تطوير سلكوير بعدPatrickVolkerdingالراعيالرسمي الوحيد لسلكوير

http://connie.slackware.com/~alien/slackbuilds( . . . راجعكيف تبني حزمة سلكويرإنطلقا  من السلكبيلت و الكود المصدري

inkscapeمثال:بناء حزمة

ملحوظة هامة :قبل بناء أي حزمة و تنصيبها يجب أول¶ فحص التبعاتlesdependencesوالتي ستجدها في نفس الصفحة التي حملت منهاالسلكبلد، فالنسبة

يجب تنصيب كل الحزم المكتوبة بالزرق قبل عملية البناء و التنصيبinkscapeل Inkscape requires gc, gsl, libsigc++, glibmm, cairomm,pangomm, and gtkmm.

lxml and numpy are optionaldependencies, but they are strongly recommended

if you want all ofinkscape's intended functionality. يجب أول¶ تحميل السلكبيلد على شكل ملف أرشيف لذلك أذهب الى موقع

slackbuild.orgأو أي موقع ا خريعرض السلكبيلد فمثل¶ أحمل هذا السلكبيلد inkscape-0.48.1.tar.gz علىالصورة التالية و ذلك:1من الرابط رقم

بالنقرعلى الربط مباشرة وأضع الملف في مجلد جديد في مسار /home/free/packagingمثل ثم أنقر على الملف لفتحه بواسطة أدوات فك الضغط في/

;وستجد الملفات التاليةINKSCAPEنفس المجلد ثم أنتقل الى المجلدالناتج المسمى -doinst.sh-inkscape.info-inkscape.SlackBuild-README-slack-desc

الحزم الغير الرسمية في سلكوير

13

Page 9: الحزم و التحزيم في سلاكوير

وأعطيه صلحيات التطبيقinkscape.SlackBuildوستجدمن بين الملفات execution بواسطةالمرchmodفي طرفية تفتحها في نفس المجلد كالتالي

chmod+x inkscape.SlackBuild

في المجلد2ثم أحمل الكود المصدري من نفس الصفحة السابقة من الرابط رقم inkscape: ثم على الطرفية أقوم بعملية التجميع(التصنيف)بواسطة المر التالي

suيطلب الباسوورد ثم./inkscape.SlackBuild

-inkscape-0.48.1-i486/حزمةبإسم tmpولما تنتهي هذه العملية ستجد في مجلد /1_SBo.tgzوثبتها كالتالي;

installpkg inkscape-0.48.1-i486-1_SBo.tgz

لحصيلةا

cd packagingWget http://slackbuilds.org/slackbuilds/13.37/graphics/inkscape.tar.gztar xvf inkscape-0.48.1.tar.gzcd inkscapewget http://downloads.sourceforge.net/inkscape/inkscape-0.48.1.tar.gzchmod +x inkscape.SlackBuildsu/inkscape.SlackBuild

جاهزة للتنصيب فيinkscape-0.48.1-i486-1_SBo.tgzفيالخير نحصل على حزمة وننصبها كالتالي :tmpالمجلد /

installpkg/tmp/inkscape-0.48.1-i486-1_SBo.tgz

sbopkg بواسطة slackbuilds.orgإستغلل . 1

sbopkgماهية

،و هو حزمة عير رسمية فيslackbuilds.org متصفح لمستودع sbopkgيعتبر سلكوير يتم تطويرهافي مشروع بنفس السم، يصهر عليه شخصين فقط لكنهم

الحزم الغير الرسمية في سلكوير

14

Page 10: الحزم و التحزيم في سلاكوير

يسدون خدمة كبيرة لمجتمع سلكوير ، وهذا رئي الخاص إنطلقا¶ من تجربتي الشخصية بحيث إستعملت سلكوير قبل بزوغ هذا المشروع ، ويمكن إستخدام هذه

الداة عن طريق سطر الوامر ، أو بواسطة واجهة شبه رسوميةفما هي المهام التي تقوم بها هذه الداة؟

للجواب على هذا السؤال يجب أستحضار حصيلة الجزء الول من الموضوغ،بحيث القيام بكل المهام التي قمنا بها يدويا¶ في الجزء(sbopkgيستطيع

السلكبيلد :الطريقة اليدوية) وهي:slackbuilds.org-تصفح موقع 1

-تحميل السلكبيلت2- فك الضغط3-النتقال المجلد الذي يوجد به السلكبيلت و المتادتا4- تحميل الكود المصدري5- التجمغ (التصنيف)6- التنصيب7

كما تقوم هذه الداة بعدة مهام أخرى تسهل العمل على سلكوير الى حد كبير،دعنانكتشف هذه الداة

ثم حمل النسخة الخيرة من التطبيق من المكانsbopkg.orgو ذلك بتصفح موقع ) وتثبيتها كالتالي:downloadsالمخصص لذلك (

installpkg sbopkg-version-noarch-1_cng.tgz:راجع . . . )راجع . . . )1لتفاصيل أكثر تابع الفديو التالي

B .)أدوات إدارة الحزم الغير الرسمية في سلكويرslapt-get(

أداة أخرى من أدوات إدارة الحزم في سلكوير، و طبعا¶ هي ليست أداة رسمية بل

طورت في مشروع مستقل،تحاكي هذه الداة مدير الحزم الشهير في التوزيعات و تتميز عن باقي الدوات التي سردتها من قبل بإدارتها للتبعاتapt-getالدبيانية

gestion des dependancesمخالفة في ذلك مبدأ البساطة الذي يميز سلكوير . تنصيب و إعداد الداة1

بيت32تحميل الداة بمعمارية wget http://software.jaos.org/slackpacks/13.37/slapt-get/slapt-get-0.10.2m-i386-

1 -http://youtu.be/x-A_bSWvuEA

الحزم الغير الرسمية في سلكوير

15

Page 11: الحزم و التحزيم في سلاكوير

1.tgz

بيت64أو بمعمارية wget http://software.jaos.org/slackpacks/13.37-x86_64/slapt-get/slapt-get-0.10.2m-

x86_64-1.tgz

ثم ننصب الحزمة كالتاليinstallpkg slapt-get-0.10.2m-i386-1.tgz

: بعد ذلك أفتح ملف إعداد هذه الداة كالتاليvim /etc/slapt-get/slapt-getrc

و أغلق مستودع الحزم الرسمية لنه بطيئ جدا¶ حسب موقعي الجغرافي كما أني بالنسبة للحزم الرسمية، ثم أضيف مستودع غير رسمي لحزمslackpkgأستعمل

سلكوير جاهزة من موقع مجتمع سلكوير اليطاليhttp://www.slacky.eu/slacky/Pagina_principale

(أنظر الصورة)http://repository.slacky.eu/slapt-get.txtو التي أنقلها من هذا الرابط

. كيف أستعمل هذه الداة؟2

تتميز سلبتجيت بسهولة إستعمالها عن كريق سطر الوامر أو بإستعمال واجهةGslaptرسومية

هذه الداة قوية جدا¶ تستطيع القيام بعدة مهام متقد مة كخلق مستودع شخصي

الحزم الغير الرسمية في سلكوير

16

Page 12: الحزم و التحزيم في سلاكوير

محلي (هنا) أو ترقية سلكوير القادمة، غير أني في هذا المضوع14 الى 13,37من إصدارة الى أخرى مثل¶ من

سأتطرق الى الستعمالتالساسية و السلمية لهذه الداة،أول أمر أقوم به بعد التنصيب هو

,slapt-get --add-keys ،،تحميل مفاتيح "جبج "بالنسبة للمستودعاتو يجب تنفيذ هذا المر كلما تم إضافة مرا ت لمستودع جديد

slapt-get --update تحميل الداتا حول الحزم من المصادرslapt-get --install (إسم الحزمة)

في هذا المر الخير سيحمل سلبتجيت الحزمة وينصبهاهي وتبيعاتها إذا كانتwiresharkحزمة غير رسمية في سلكوير مثال

GeoIP c-ares krb5 libsmiفي حالة هذه الحزمة ستحمل الداة و تنصب الحزم التالية portaudio ثم wiresharkإذا¶ يتم حل مشكل التبعات بطرقة أتوماتيكية

لكنه ل يحل التبعات بالنسبة للحزم الرسمية في سلكوير(أي الحزم الموجودة على أي قرص التنصيب)slackDVDالمستودعات الرسمية لسلكوير أو على على

bash-4.1# slapt-get --install wiresharkReading Package Lists...DoneThe following NEW packages will be installed:GeoIP c-ares krb5 libsmi portaudio wireshark0 upgraded, 0 reinstalled, 6 newly installed, 0 to remove, 0 not upgraded.Need to get 11.5MB of archives.After unpacking 64.4MB of additional disk space will be used

تنبيهslapt-get --upgradeهذا المر سيرقي كل الحزم القابلة للترقية على النظام

لكنه أمر ل يجب تنفيذه أبدا¶ لنه قد يؤدي الى كسر النظام أو تعطل و تعثر عدة وظائف أساسية فهو بالتالي أمر خطير يجب تجنبه،أما إذا كنت تريد فقط معرفة

: الحزم القابلة للترقية ،دون ترقيتها فيمكن إستعمال المر كالتاليslapt-get -s –upgrade

slapt-get --search package_name للبحث عن حزمة معينةslapt-get --available لستعراض كل الحزم المتوفرة في المستودعات التي أضفتهاslapt-get –show package_name للحصول على معلومات حول الحزمة

الحزم الغير الرسمية في سلكوير

17

Page 13: الحزم و التحزيم في سلاكوير

أما بالنسبة للذين يفضلون الواجهة الرسومية عليهم تطبيق المر التاليslapt-get –install gslapt

أظن أن هذه الوامر كافية لمستخدم عادي، أما إن كنت تبحث عن الستعمالت المتقدمة لهذه الدات ما عليك إل زيارة الصفحة التالي

http://software.jaos.org/git/slapt-get/plain/FAQ.html

, (عن وكيا)slapt-get . خصائص و مميزات2

) يستخدم أدوات سلكوير المinstallpkg، upgradepkgو ،removepkg( وتدعم مصادر متعددة للحزم (بما في ذلكhttp://linuxpackages.net(تخزن البياتات المؤقتة للحزم و ترقيها من المصدر تدعم المصادر مــنFTP، FTPS، HTTP، HTTPS) ملــف :/ / / وأكــثر مــن ،

libcurl(يستأنف التحميل المنكسر، و يتحقــق مــن ســلمة الحزمــة بواســطة المجمــوع

MD5الختباري

إظهار الحزم المتوفرة (من البيانات المخزنة مؤقتا)، والمنصبة بحث قائمة حزمة باستخدامPOSIX)والتعابير العاديــة الموســعة regular exp(

حسب اسم الحزمة، والموقع، أوالوصفيبحث، ويثبيت ويزيل الحزم بالسم أو إصدار محددالبحث عن التحديثات و وتطبيقهاالترقية من إصدارة سلكوير إلى آخرى في بضع خطوات بسيطة) إنإظهار وصف للحزم، بما في ذلك موقع المرآة، النسـخة، الحجـم، وتبعـات

)، والصــراعات (إن وجــدت، انظــر الســئلة2وجدت، انظر الســئلة المتكــررةالمتكررة)، واقتراحات والوصف، وحالة التثبيت

)استبعادbacklistبعـض الحـزم مـن الترقيـات، حسـب السـم أو عـن طريـق ( )regular expالتعبير العادي (

حظة مـل لدوات التي تدير التبعات في سلكوير، كثيرة نذكر منها على سبيل الذكر ل الحصر

:slackyd , swaret و ; slapt-getلكن يتفق جميع المستحدمين أن سلبجيت هي الداة الكثر ملئمة لسلكوير حاليا¶

) بعدم إستعمال هذه الدوات لنهاالتقنيةينصح المستخدمون المتقدميون (مهاويس

2 -http://software.jaos.org/git/slapt-get/plain/FAQ.html

الحزم الغير الرسمية في سلكوير

18

Page 14: الحزم و التحزيم في سلاكوير

قد تعقد النظام و تجعل التحكم فيه أمرا¶ صعبا¶،بحيث ل تعرف ماهية الخظأ و مامصدره.

لكن من جانب اخركان لبد على سلكوير أن تتطور مع مرور الزمن لتصل الى عدد أكبر من المستخدمين، و تصبح توزيعة مكتبية بإمتياز تضاهي أبنتو و

فيدورا(حسب تخصيصها طبعا¶)، و لول هذه الدوات لنما إنتشرت سلكوير عند نخبجديدة من المستخدمين

الحزم الغير الرسمية في سلكوير

19