APT (برمجيات)
apt-getطلب التأكيد قبل التثبيت | |
| المطور(ون) | مشروع ديبيان |
|---|---|
| الإصدار الأولي | 31 مارس 1998 [1] |
| إصدار مستقر | 2.9.7 [2]
/ 30 يوليو 2024 |
| مستودع |
|
| مكتوب في | C++، [3] shell script، [3] XML، [3] CMake، [3] C، [3] Perl [3] |
| نظام التشغيل | شبيه يونكس |
| يكتب | مدير الحزمة |
| رخصة | رخصة جنو العمومية الإصدار 2+ |
| موقع إلكتروني | wiki.debian.org/AptCLI |
أداة الحزمة المتقدمة ، أو APT ، هي واجهة مستخدم برمجية مجانية تعمل مع المكتبات الأساسية للتعامل مع تثبيت وإزالة البرامج على ديبيان وتوزيعات لينكس المستندة إلى ديبيان . [4] تعمل APT على تبسيط عملية إدارة البرامج على أنظمة الكمبيوتر الشبيهة بنظام يونكس من خلال أتمتة استرداد وتكوين وتثبيت حزم البرامج ، إما من ملفات مجمعة مسبقًا أو عن طريق تجميع الكود المصدر. [4]
الاستخدام
APT عبارة عن مجموعة من الأدوات الموزعة في حزمة تسمى apt . يتم تعريف جزء كبير من APT في مكتبة C++apt من الوظائف؛ تتضمن APT أيضًا برامج سطر الأوامر للتعامل مع الحزم ، والتي تستخدم المكتبة. ثلاثة من هذه البرامج هي apt-getو و apt-cache. تُستخدم عادةً في الأمثلة لأنها بسيطة ومتوفرة في كل مكان. تتمتع حزمة apt بأولوية " مهمة " في جميع إصدارات Debian الحالية، وبالتالي يتم تضمينها في تثبيت Debian الافتراضي. يمكن اعتبار APT واجهة أمامية لـ dpkg، أكثر ودية من dselectالواجهة الأمامية الأقدم. بينما dpkgتقوم APT بتنفيذ إجراءات على حزم فردية، فإنها تدير العلاقات (خاصة التبعيات) بينها، بالإضافة إلى توفير وإدارة قرارات الإصدارات ذات المستوى الأعلى (تتبع الإصدار وتثبيت الإصدار).
غالبًا ما يتم الإشادة بـ APT باعتبارها واحدة من أفضل ميزات دبيان، [5] [6] [7] [8] والتي يعزوها مطورو دبيان إلى ضوابط الجودة الصارمة في سياسة دبيان. [9] [10]
من أهم ميزات APT هي طريقة استدعاءها dpkg— فهي تقوم بالفرز الطوبولوجي لقائمة الحزم المراد تثبيتها أو إزالتها وتستدعي dpkgبأفضل تسلسل ممكن. في بعض الحالات، تستخدم خيارات --force. dpkgومع ذلك، فهي لا تفعل ذلك إلا عندما لا تتمكن من حساب كيفية تجنب السبب الذي dpkgيتطلب فرض الإجراء.
تثبيت البرامج
يشير المستخدم إلى حزمة واحدة أو أكثر ليتم تثبيتها. يتم صياغة اسم كل حزمة على أنه مجرد جزء من اسم الحزمة، وليس اسم ملف مؤهل بالكامل (على سبيل المثال، في نظام Debian، libc6ستكون الحجة المقدمة، وليس libc6_1.9.6-2.deb). والجدير بالذكر أن APT تحصل تلقائيًا على الحزم التي تعتمد عليها الحزمة المشار إليها (إذا لزم الأمر) وتقوم بتثبيتها. كانت هذه سمة مميزة أصلية لأنظمة إدارة الحزم المستندة إلى APT، حيث تجنبت فشل التثبيت بسبب التبعيات المفقودة، وهو نوع من جحيم التبعيات .
هناك تمييز آخر يتمثل في استرداد الحزم من مستودعات بعيدة. تستخدم APT ملف تكوين الموقع ( /etc/apt/sources.list) لتحديد الحزم المطلوبة، والتي قد تكون متاحة على الشبكة أو على وسيط تخزين قابل للإزالة، على سبيل المثال، واستردادها، والحصول أيضًا على معلومات حول الحزم المتاحة (ولكن غير المثبتة).
توفر APT خيارات أوامر أخرى لتجاوز القرارات التي يتخذها نظام حل النزاعات الخاص بـ apt-get. أحد الخيارات هو فرض إصدار معين من الحزمة. يمكن أن يؤدي هذا إلى تخفيض مستوى الحزمة وجعل البرامج التابعة غير قابلة للتشغيل، لذا يجب على المستخدم توخي الحذر.
وأخيرًا، apt_preferencesتسمح الآلية للمستخدم بإنشاء سياسة تثبيت بديلة للحزم الفردية.
يمكن للمستخدم تحديد الحزم باستخدام تعبير POSIX العادي .
يقوم APT بالبحث في القائمة المخزنة مؤقتًا للحزم ويقوم بإدراج التبعيات التي يجب تثبيتها أو تحديثها.
يقوم APT باسترجاع وتكوين وتثبيت التبعيات تلقائيًا.
المحفزات هي معالجة للأفعال المؤجلة.
التحديث والترقية والترقية الموزعة
تتضمن أوضاع الاستخدام aptالتي apt-getتسهل تحديث الحزم المثبتة ما يلي:
updateتُستخدم لإعادة مزامنة ملفات فهرس الحزمة من مصادرها. يتم جلب قوائم الحزم المتاحة من الموقع (المواقع) المحددة في/etc/apt/sources.list. على سبيل المثال، عند استخدام أرشيف Debian، يقوم هذا الأمر باستردادPackages.gzالملفات ومسحها ضوئيًا، بحيث تتوفر معلومات حول الحزم الجديدة والمحدثة.upgradeيتم استخدامه لتثبيت أحدث إصدارات جميع الحزم المثبتة حاليًا على النظام من المصادر المذكورة في/etc/apt/sources.list. يتم استرداد الحزم المثبتة حاليًا بإصدارات جديدة متاحة وترقيتها؛ ولا يتم تحت أي ظرف من الظروف إزالة الحزم المثبتة حاليًا أو استرداد الحزم غير المثبتة بالفعل وتثبيتها. سيتم ترك الإصدارات الجديدة من الحزم المثبتة حاليًا والتي لا يمكن ترقيتها دون تغيير حالة تثبيت حزمة أخرى في إصدارها الحالي.full-upgrade(apt) وdist-upgrade(apt-get)، بالإضافة إلى أداء وظيفةupgrade، يتعامل أيضًا بذكاء مع تغيير التبعيات مع الإصدارات الجديدة من الحزم؛aptولديهapt-getنظام "ذكي" لحل النزاعات، وسيحاول ترقية الحزم الأكثر أهمية على حساب الحزم الأقل أهمية إذا لزم الأمر./etc/apt/sources.listيحتوي الملف على قائمة بالمواقع التي يمكن استرداد ملفات الحزم المطلوبة منها. [4] تحتوي aptitude على ميزة أكثر ذكاءًdist-upgradeتسمىfull-upgrade. [11]
التكوين والملفات
/etc/aptيحتوي على مجلدات وملفات تكوين APT.
apt-configهو برنامج استعلام تكوين APT. [12] apt-config dump يوضح التكوين. [13]
الملفات
/etc/apt/sources.list: [14] مواقع جلب الحزم منها./etc/apt/sources.list.d/:أجزاء إضافية لقائمة المصادر./etc/apt/apt.conf:ملف تكوين APT./etc/apt/apt.conf.d/:أجزاء ملف تكوين APT./etc/apt/preferences.d/:الدليل الذي يحتوي على ملفات تفضيلات الإصدار. هذا هو المكان الذي يتم فيه تحديد "التثبيت"، أي تفضيل الحصول على حزم معينة من مصدر منفصل أو من إصدار مختلف من أحد التوزيعات./var/cache/apt/archives/:منطقة تخزين لملفات الحزمة المستردة./var/cache/apt/archives/partial/:منطقة تخزين لملفات الحزمة أثناء النقل./var/lib/apt/lists/:منطقة تخزين لمعلومات الحالة لكل مورد حزمة محدد فيsources.list/var/lib/apt/lists/partial/:منطقة تخزين لمعلومات الحالة أثناء النقل.
مصادر
تعتمد APT على مفهوم المستودعات من أجل العثور على البرامج وحل التبعيات. بالنسبة لـ APT، المستودع هو دليل يحتوي على حزم مع ملف فهرس. يمكن تحديد ذلك كموقع شبكي أو موقع قرص مضغوط . اعتبارًا من 14 أغسطس 2021، [تحديث]يحتفظ مشروع Debian بمستودع مركزي لأكثر من 50000 حزمة برامج جاهزة للتنزيل والتثبيت. [15]
يمكن إضافة أي عدد من المستودعات الإضافية إلى ملف تكوين sources.list/etc/apt/sources.list الخاص بـ APT ( ) ثم الاستعلام عنها بواسطة APT. غالبًا ما تسمح الواجهة الرسومية الأمامية بالتعديل sources.listبشكل أكثر بساطة ( apt-setup). بمجرد تحديد مستودع الحزم (مثل أثناء تثبيت النظام)، يمكن تثبيت الحزم في هذا المستودع دون تحديد مصدر وسيتم تحديثها تلقائيًا.
بالإضافة إلى مستودعات الشبكة، يمكن أيضًا استخدام الأقراص المضغوطة ووسائط التخزين الأخرى (محرك أقراص USB، والأقراص الصلبة...)، باستخدام apt-cdrom[16] أو إضافة file:/URI [17] إلى ملف قائمة المصدر. apt-cdromيمكن تحديد مجلد بخلاف قرص مضغوط، باستخدام -dالخيار (أي قرص صلب أو محرك أقراص USB). تحتوي أقراص Debian المضغوطة المتاحة للتنزيل على مستودعات Debian. يسمح هذا بترقية الأجهزة غير المتصلة بالشبكة. يمكن للمرء أيضًا استخدام apt-zip.
قد تظهر المشكلات عندما تقدم عدة مصادر نفس الحزمة (الحزم). يمكن للأنظمة التي تحتوي على مثل هذه المصادر المتضاربة استخدام تثبيت APT للتحكم في المصادر التي يجب تفضيلها.
تثبيت APT
تتيح ميزة تثبيت APT للمستخدمين إجبار APT على اختيار إصدارات معينة من الحزم التي قد تكون متاحة في إصدارات مختلفة من مستودعات مختلفة. يتيح هذا للمسؤولين التأكد من عدم ترقية الحزم إلى إصدارات قد تتعارض مع حزم أخرى على النظام، أو لم يتم اختبارها بشكل كافٍ بحثًا عن تغييرات غير مرغوب فيها.
وللقيام بذلك، يجب تعديل الدبابيس في ملف تفضيلات APT ( )، [18] على الرغم من أن الواجهات الأمامية الرسومية غالبًا ما تجعل التثبيت أبسط.
/etc/apt/preferences
الواجهة الأمامية

توجد عدة واجهات أمامية أخرى لـ APT، والتي توفر وظائف تثبيت أكثر تقدمًا وواجهات أكثر سهولة في الاستخدام. وتشمل هذه:
- Synaptic ، واجهة مستخدم رسومية GTK
- مركز برمجيات أوبونتو ، واجهة مستخدم رسومية GTK تم تطويرها بواسطة مشروع أوبونتو
- aptitude ،عميل وحدة تحكم مع CLI وواجهات TUI تعتمد على ncurses
- KPackage ، جزء من KDE
- مدير حزم Adept ، واجهة مستخدم رسومية لنظام التشغيل KDE (deb، rpm، bsd)
- PackageKit ، واجهة D-Bus ، التي تديرها freedesktop.org ، تعمل على تشغيل GNOME Software وKDE Discover.
- GDebi ، أداة تعتمد على GTK تم رعايتها لنظام التشغيل Ubuntu. (يوجد أيضًا إصدار Qt، متوفر في مستودعات Ubuntu باسم gdebi-kde.)
- apt-cdrom ، طريقة لإضافة قرص مضغوط جديد إلى قائمة APT للمستودعات المتاحة (sources.lists). من الضروري استخدام apt-cdrom لإضافة أقراص مضغوطة إلى نظام APT، ولا يمكن القيام بذلك يدويًا.
- apt-zip ، طريقة لاستخدام apt مع الوسائط القابلة للإزالة ، وخاصة محركات أقراص فلاش USB .
- aptURL ، وهي حزمة برامج Ubuntu التي تمكن تطبيقات المستخدم النهائي من التثبيت بنقرة واحدة عبر المتصفح. [19] [20]
- Cydia ، مدير حزم لنظام iOS الذي تم اختراقه استنادًا إلى APT (تم نقله إلى iOS كجزء من مشروع Telesphoreo). [21] [22]
- Sileo ، مثل Cydia ، هو مدير حزم لنظام iOS الذي تم اختراقه استنادًا إلى إصدارات أحدث من APT (تم نقله إلى iOS بواسطة فريق Electra)
- gnome-apt ، واجهة رسومية أمامية تعتمد على GTK/ GNOME -widget. تم تطويرها بواسطة Havoc Pennington [23]
- Muon discover (مركز برمجيات Muon السابق) ، واجهة مستخدم رسومية تعتمد على Qt
- مدير تطبيقات Hildon (تطبيق Maemo) ، واجهة أمامية لبرنامج Maemo
- apticron ، خدمة مصممة ليتم تشغيلها عبر cron لإرسال إشعارات البريد الإلكتروني بالتحديثات المعلقة إلى مسؤول النظام (sysadmin).
- APT Daemon ، واجهة أمامية تعمل كخدمة للسماح للمستخدمين بتثبيت البرامج من خلال PolicyKit وهي بدورها الإطار الذي يستخدمه مركز برمجيات Ubuntu (إلى جانب مدير برمجيات Linux Mint ).
- مثبت الحزمة ، جزء من MX Linux.
- Apt-offline : طريقة ملائمة لإجراء أي تغيير غير محصور في حاوية على أي تثبيت Linux من نوع Debian دون استخدام اتصال مباشر بالإنترنت. ومع ذلك، قد يكون الاتصال المباشر المؤقت مطلوبًا، مثل تثبيت Apt-offline على بعض أنواع Linux ذات الصلة، وإضافة PPA إلى قائمة المصادر.
يمكن لواجهات APT الأمامية:
- البحث عن حزم جديدة؛
- حزم الترقية؛
- تثبيت أو إزالة الحزم و
- ترقية النظام بأكمله إلى الإصدار الجديد.
يمكن لواجهات APT الأمامية سرد تبعيات الحزم التي يتم تثبيتها أو ترقيتها، وسؤال المسؤول عما إذا كان يجب تثبيت الحزم الموصى بها أو المقترحة بواسطة الحزم المثبتة حديثًا أيضًا، وتثبيت التبعيات تلقائيًا وإجراء عمليات أخرى على النظام مثل إزالة الملفات والحزم القديمة.
تاريخ
كان الجهد الأصلي الذي أدى إلى apt-getالبرنامج هو dselectمشروع الاستبدال المعروف باسمه الرمزي Deity . [24] تم تكليف هذا المشروع في عام 1997 من قبل Brian White، مدير إصدار Debian في ذلك الوقت. apt-getتم استدعاء الإصدار الوظيفي الأول من dpkg-getوكان المقصود منه فقط أن يكون برنامج اختبار لوظائف المكتبة الأساسية التي ستدعم واجهة المستخدم الجديدة (UI). [25]
تم تنفيذ قدر كبير من التطوير الأصلي لـ APT عبر الدردشة عبر الإنترنت (IRC)، لذا فقد ضاعت السجلات. تتضمن أرشيفات قائمة البريد الإلكتروني "Deity creation team" فقط أهم الأحداث.
تم التخلي عن اسم "الإله" كاسم رسمي للمشروع بسبب المخاوف بشأن الطبيعة الدينية للاسم. تم اتخاذ القرار في النهاية بشأن اسم APT بعد مناقشات داخلية وعامة كبيرة. في النهاية تم اقتراح الاسم على IRC، وتم قبوله ثم الانتهاء منه في قوائم البريد. [26]
تم تقديم APT في عام 1998 وتم تداول إصدارات الاختبار الأصلية على IRC. كان أول إصدار Debian يتضمنه هو Debian 2.1، والذي تم إصداره في 9 مارس 1999. [27]
في النهاية، كان الهدف الأصلي لمشروع Deity المتمثل في استبدال dselectواجهة المستخدم فاشلاً. تم التخلي عن العمل على جزء واجهة المستخدم من المشروع (تمت إزالة أدلة واجهة المستخدم من نظام الإصدارات المتزامنة ) بعد الإصدار العام الأول من apt-get. كانت الاستجابة لـ APT كطريقة dselectوأداة مساعدة لسطر الأوامر عظيمة وإيجابية لدرجة أن جميع جهود التطوير ركزت على صيانة الأداة وتحسينها. لم يمض وقت طويل حتى قام العديد من الأشخاص المستقلين ببناء واجهات مستخدم أعلى libapt-pkg.
في النهاية، قام فريق جديد بتولي المشروع، وبدأ في بناء ميزات جديدة وأصدر الإصدار 0.6 من APT الذي قدم ميزة APT الآمنة، باستخدام التوقيع التشفيري القوي للتحقق من صحة مستودعات الحزم. [28]
المتغيرات
تم تصميم APT في الأصل كواجهة أمامية لـ dpkg للعمل مع حزم Debian . تم إصدار .debنسخة من APT معدلة للعمل أيضًا مع نظام RPM Package Manager باسم APT-RPM . [29] قام مشروع Fink بنقل APT إلى Mac OS X لبعض مهام إدارة الحزم الخاصة به، [30] كما يتوفر APT أيضًا في OpenSolaris .
ملف apt
apt-file هو أمر، معبأ بشكل منفصل عن APT، للعثور على الحزمة التي تتضمن ملفًا معينًا، أو لإدراج جميع الملفات المضمنة في حزمة على مستودعات بعيدة. [31]
انظر أيضا
مراجع
- ^ "الإصدار الأولي". سجل تغييرات حزمة apt . مشروع دبيان. 31 مارس 1998. تم الاسترجاع في 18 ديسمبر 2021 .
- ^ "2.9.7 · العلامات · مطورو APT / apt · GitLab". 30 يوليو 2024. تم الاسترجاع 4 أغسطس 2024 .
- ^ abcdef "مشروع apt - Advanced Package Tool مفتوح المصدر على Open Hub: صفحة اللغات". Open Hub . تم الاسترجاع في 2 مايو 2024 .
- ^ abc "apt-get(8)". صفحات دليل Debian . تم الاسترجاع في 18 ديسمبر 2021 .
- ^ Byfield, Bruce (9 ديسمبر 2004). "An apt-get primer" . تم الاسترجاع في 18 ديسمبر 2021 .
- ^ "من الأرشيف: أفضل أنظمة تشغيل 2000". رادار Tux. مؤرشف من الأصل في 26 يوليو 2020.
- ^ دورجان، ديفيد (19 يناير 2004). "الانتقال إلى ديبيان". linux.ie. مؤرشف من الأصل في 13 مايو 2006.
- ^ "تطوير لينكس للأجهزة المحمولة باستخدام Familiar وDebian البسيط". Mobile Tux. مؤرشف من الأصل في 15 سبتمبر 2008.
- ^ "لماذا ديبيان" . تم الاسترجاع في 18 ديسمبر 2021 .
- ^ "دليل سياسة دبيان" . تم الاسترجاع في 18 ديسمبر 2021 .
- ^ "مناقشة حول ترقية التوزيع مقابل الترقية الكاملة" . تم الاسترجاع في 18 ديسمبر 2021 .
- ^ "apt-config(8)". صفحات دليل Debian . تم الاسترجاع في 18 ديسمبر 2021 .
- ^ "استعلام عن تكوين APT باستخدام apt-config - Debian admin". 2 ديسمبر 2006. تم الاسترجاع في 18 ديسمبر 2021 .
- ^ "قائمة المصادر". ويكي ديبيان . تم الاسترجاع في 18 ديسمبر 2021 .
- ^ "إصدار "Bullseye" من Debian 11". www.debian.org . تم الاسترجاع في 11 مايو 2022 .
- ^ "apt-cdrom(8)". صفحات دليل Debian . تم الاسترجاع في 27 ديسمبر 2021 .
- ^ على سبيل المثال ملف deb:/mnt/install المستقر الرئيسي المساهمة غير المجانية.
{{citation}}:CS1 maint: postscript ( الرابط ) - ^ "AptConfiguration". Debian Wiki . تم الاسترجاع في 2020-05-18 .
- ^ "AptURL". Ubuntu Wiki . تم الاسترجاع في 27 ديسمبر 2021 .
- ^ "كيفية تثبيت البرامج في Ubuntu Linux: دليل كامل للمبتدئين". 17 يونيو 2018. تم الاسترجاع في 27 ديسمبر 2021 .
- ^ جوريك، ديفيد (2009). اختراقات الآيفون: دفع الآيفون والآيبود تاتش إلى ما هو أبعد من حدودهما. أوريلي ميديا، ص 20. رقم ISBN 9780596516642تم الاسترجاع بتاريخ 27 ديسمبر 2021 .
- ^ Adhikari, Richard (20 مارس 2008). "Android, Schmandroid: Linux on the iPhone". LinuxInsider . تم الاسترجاع في 27 ديسمبر 2021 .
- ^ Mullikin, Glenn (ديسمبر 2001). "The evolution of Debian package management systems". AUUGN . المجلد 22، العدد 4. ص 50. ISSN 1035-7521.
تم كتابة gnome-apt بواسطة Havoc Pennington
- ^ وايت، بريان سي. (11 أبريل 1997). "مشروع استبدال "dselect" ("deity")". deity@lists.debian.org (قائمة بريدية).
- ^ Gunthorpe, Jason (2 مارس 1998). "It's working". deity@lists.debian.org (قائمة بريدية).
- ^ Gunthorpe, Jason (19 March 1998). "Re: 2 things (!)". deity@lists.debian.org (قائمة بريدية).
- ^ "تاريخ مختصر لدبيان". debian.org. مؤرشف من الأصل في 24 أغسطس 2003.
- ^ "Secure APT". Debian Wiki . تم الاسترجاع في 27 ديسمبر 2021 .
- ^ "APT-RPM". apt-rpm.org. مؤرشف من الأصل في 21 أبريل 2008. تم الاسترجاع 27 ديسمبر 2021 .
- ^ "Fink - About". www.finkproject.org. مؤرشف من الأصل في 11 مايو 2008. تم الاسترجاع 27 ديسمبر 2021 .
- ^ "فحص واستخراج محتويات حزمة Debian". مدونة Packagecloud . 13 أكتوبر 2015 . تم الاسترجاع في 27 ديسمبر 2021 .
روابط خارجية
- – دليل أوامر صيانة دبيان
- تم أرشفة APT HOWTO في 2021-03-09 على موقع Wayback Machine
- برنامج تعليمي مناسب
- الفصل 2. إدارة حزم دبيان - مرجع دبيان
