Scroll to navigation

DNF4(8) DNF DNF4(8)

الاسم

dnf4 - مرجع أوامر DNF

موجز

dnf [خيارات] <أمر> [<وسائط>...]

الوصف

DNF <https://github.com/rpm-software-management/dnf/> هو الإصدار الرئيسي القادم من YUM <http://yum.baseurl.org/>، مدير حزم لتوزيعات لينكس القائمة على RPM. يحافظ تقريبًا على توافق CLI مع YUM ويُعرِّف واجهة برمجة تطبيقات صارمة للإضافات والملحقات.

يمكن للملحقات تعديل أو توسيع ميزات DNF أو توفير أوامر CLI إضافية فوق تلك المذكورة أدناه. إذا كنت تعرف اسم أمر كهذا (بما في ذلك الأوامر المذكورة أدناه)، يمكنك العثور/تثبيت الحزمة التي توفره باستخدام التوفير الافتراضي المناسب في شكل dnf-command(<اسم مستعار>)، حيث <اسم مستعار> هو اسم الأمر؛ على سبيل المثال dnf install 'dnf-command(versionlock)' يُثبّت ملحق versionlock. تنطبق هذه الطريقة أيضًا على تحديد تبعيات الحزم التي تتطلب أمر DNF معين.

قيم الإرجاع:

  • 0 : نجحت العملية.
  • 1 : حدث خطأ، عُولج بواسطة dnf.
  • 3 : حدث خطأ غير معروف وغير معالج أثناء العملية.
  • 100: انظر check-update
  • 200: كانت هناك مشكلة في الحصول على الأقفال أو تحريرها.

الأوامر المتاحة:

  • alias
  • autoremove
  • تحقق
  • check-update
  • clean
  • deplist
  • distro-sync
  • downgrade
  • group
  • help
  • history
  • info
  • install
  • list
  • makecache
  • علامة
  • module
  • provides
  • reinstall
  • remove
  • repoinfo
  • repolist
  • repoquery
  • repository-packages
  • search
  • shell
  • swap
  • updateinfo
  • upgrade
  • upgrade-minimal

معلومات إضافية:

  • الخيارات
  • تحديد الحزم
  • تحديد التوفيرات
  • تحديد ما يوفره الملف (File Provides)
  • تحديد المجموعات
  • تحديد المعاملات
  • مزامنة البيانات الوصفية
  • سياسة استبدال ملفات التهيئة
  • الملفات
  • انظر أيضًا

الخيارات

-4
الحل إلى عناوين IPv4 فقط.
-6
الحل إلى عناوين IPv6 فقط.
تضمين الحزم المقابلة لمعرف الاستشارة، مثال: FEDORA-2201-123. ينطبق على أوامر install وrepoquery وupdateinfo وupgrade وoffline-upgrade (dnf-plugins-core).
السماح بمسح الحزم المثبتة لحل التبعيات. يمكن استخدام هذا الخيار كبديل لأمر yum swap حيث لا تُحدد الحزم المراد إزالتها بشكل صريح.
الإجابة آليًا بـ لا لجميع الأسئلة.
محاولة أفضل إصدارات الحزم المتاحة في المعاملات. تحديدًا أثناء ترقية dnf، التي تتخطى مبدئيًا التحديثات التي لا يمكن تثبيتها لأسباب تتعلق بالتبعيات، يُجبر هذا المفتاح DNF على النظر فقط في أحدث الحزم. عند مواجهة حزم ذات تبعيات معطلة، سيفشل DNF مع إعطاء سبب لعدم إمكانية تثبيت الإصدار الأحدث.

لاحظ أن استخدام أحدث نسخة متاحة مضمون فقط للحزم المطلوبة مباشرة (مثلاً كوسائط لسطر الأوامر)، وقد يستخدم المحلل نسخًا أقدم من الاعتماديات لتلبية متطلباتها.

تضمين الحزم التي تعالج مشكلة إصلاح خلل. ينطبق على أوامر install وrepoquery وupdateinfo وupgrade وoffline-upgrade (dnf-plugins-core).
تضمين الحزم التي تعالج معرف Bugzilla، مثال: 123123. ينطبق على أوامر install وrepoquery وupdateinfo وupgrade وoffline-upgrade (dnf-plugins-core).
التشغيل بالكامل من الخبيئة النظامية، لا تُحدّث الخبيئة واستخدمها حتى لو كانت منتهية الصلاحية.

يستخدم DNF خبيئة منفصلة لكل مستخدم يُنفَّذ تحته. تُسمى الخبيئة للمستخدم الجذر بالخبيئة النظامية. يسمح هذا المفتاح لمستخدم عادي بالوصول للقراءة فقط إلى الخبيئة النظامية، والتي عادةً ما تكون أحدث من خبيئة المستخدم وبالتالي لا يضطر لانتظار مزامنة البيانات الوصفية.

التحكم في استخدام اللون في مخرجات الطرفية. القيم الصالحة هي always وnever وauto (مبدئي).
إضافة تعليق إلى سجل المعاملات.
موقع ملف الإعدادات.
تضمين الحزم التي تعالج معرف CVE (الثغرات والتعرضات الشائعة) (<http://cve.mitre.org/about/>)، مثال: CVE-2201-0123. ينطبق على أوامر install وrepoquery وupdateinfo وupgrade وoffline-upgrade (dnf-plugins-core).
مستوى مخرجات التصحيح. هذه قيمة صحيحة بين 0 (لا توجد سلاسل معلومات إضافية) و10 (يعرض جميع معلومات التصحيح، حتى غير المفهومة للمستخدم)، المبدئي هو 2. مهمل، استخدم -v بدلاً من ذلك.
إفراغ البيانات المساعدة في تصحيح محلل التبعيات في ./debugdata.

تعطيل خيارات التهيئة excludepkgs و includepkgs. يأخذ أحد الخيارات الثلاثة التالية:
  • all، يعطل جميع تهيئات excludepkgs و includepkgs
  • main، يعطل excludepkgs و includepkgs المعرفين في القسم [main]
  • repoid، يعطل excludepkgs و includepkgs المعرفين للمستودع المعطى

لاحظ أن خيار --exclude يُلحق بتهيئة excludepkgs في [main] وبالتالي يُعطل عند تحديد main أو all.

تعطيل المستودعات المحددة (يحفظ آليًا). يجب استخدام الخيار مع الأمر config-manager (dnf-plugins-core).

تعطيل الإضافات المدرجة المحددة بأسماء أو أنماط عامة.
تعطيل المستودعات النشطة مؤقتًا لغرض أمر dnf الحالي. يقبل معرفًا، أو قائمة معرفات مفصولة بفواصل، أو نمطًا عامًا من المعرفات. يمكن تحديد هذا الخيار عدة مرات، لكنه متعارض مع --repo.
توجيه الحزم المنزلة إلى الدليل المقدم. يجب استخدام الخيار مع خيار سطر الأوامر --downloadonly، مع الأوامر download أو modulesync أو reposync أو system-upgrade (dnf-plugins-core).

تنزيل مجموعة الحزم المحلولة دون تنفيذ أي معاملة rpm (تثبيت/ترقية/مسح).

تُزال الحزم بعد المعاملة الناجحة التالية. ينطبق هذا أيضًا عند استخدامه مع خيار --destdir حيث يُعتبر الدليل جزءًا من خبيئة DNF. لإبقاء الحزم، استخدم الأمر download بدلاً من ذلك.

مستوى إخراج الأخطاء. هذه قيمة صحيحة بين 0 (بدون إخراج أخطاء) و 10 (يظهر جميع رسائل الخطأ)، المبدئي هو 3. مهمل، استخدم -v بدلاً من ذلك.
تمكين المستودعات المحددة (حفظ آلي). يجب استخدام الخيار مع الأمر config-manager (dnf-plugins-core).
تمكين الإضافات المدرجة المحددة بأسماء أو أنماط عامة.
تمكين مؤقت لمستودعات إضافية لغرض أمر dnf الحالي. يقبل معرفًا، أو قائمة معرفات مفصولة بفواصل، أو نمطًا عامًا من المعرفات. يمكن تحديد هذا الخيار عدة مرات.
تضمين حزم التحسين ذات الصلة. ينطبق على أوامر install وrepoquery وupdateinfo وupgrade وoffline-upgrade (dnf-plugins-core).

استبعاد الحزم المحددة بواسطة <مواصفات ملف الحزمة> من العملية.
خيار مهمل. تم استبداله بالخيار --exclude.
فرض استخدام معمارية. يمكن تحديد أي معمارية. ومع ذلك، فإن استخدام معمارية غير مدعومة أصلاً من قبل وحدة المعالجة المركزية الخاصة بك سيتطلب محاكاة من نوع ما. يتم ذلك عادةً عبر QEMU. يمكن تكوين سلوك --forcearch باستخدام خياري التهيئة arch <#arch-label> وignorearch <#ignorearch-label> بالقيمتين <معمارية> وTrue على التوالي.
عرض المساعدة.

تحديد جذر تثبيت بديل، نسبيًا إلى مكان تثبيت جميع الحزم. اعتبر هذا مثل تنفيذ chroot <جذر> dnf، باستثناء أن استخدام --installroot يسمح لـ dnf بالعمل قبل إنشاء chroot. يتطلب مسارًا مطلقًا.

  • يتم أخذ أو تخزين cachedir وlog files وreleasever وgpgkey من أو في جذر التثبيت. يتم استيراد مفاتيح GPG إلى جذر التثبيت من مسار نسبي للمضيف يمكن تحديده في قسم المستودع في ملفات التهيئة.
  • يتم البحث عن ملف التهيئة وreposdir <#reposdir-label> داخل جذر التثبيت أولاً. إذا لم يكونا موجودين، يتم أخذهما من نظام المضيف. ملاحظة: عندما يتم تحديد مسار ضمن وسيط سطر أوامر (--config=<ملف تهيئة> في حالة ملف التهيئة و--setopt=reposdir=<دليل المستودعات> لـ دليل المستودعات) فإن هذا المسار يكون دائمًا نسبيًا للمضيف دون استثناءات.
  • يتم أخذ المتغيرات من نظام المضيف أو جذر التثبيت وفقًا لـ reposdir <#reposdir-label> . عندما يتم تحديد مسار دليل المستودعات ضمن وسيط سطر أوامر، يتم أخذ المتغيرات من جذر التثبيت. عندما يتم تحديد مسارات varsdir <#varsdir-options-label> ضمن وسيط سطر أوامر (--setopt=varsdir=<دليل المستودعات>) فإن تلك المسارات تكون دائمًا نسبية للمضيف دون استثناءات.
  • يكون مسار الإضافة ومسار تهيئة الإضافة نسبيين للمضيف.

ملاحظة: قد ترغب أيضًا في استخدام خيار سطر الأوامر --releasever=<release> عند إنشاء جذر التثبيت، وإلا فسيتم أخذ قيمة $releasever من rpmdb داخل جذر التثبيت (وبالتالي تكون فارغة وقت الإنشاء وستفشل المعاملة). إذا تم استخدام --releasever=/، فسيتم اكتشاف releasever من النظام المضيف (/). لا يحتوي مسار جذر التثبيت الجديد وقت الإنشاء على ملفات repository وreleasever وdnf.conf.

على نظام نمطي، قد ترغب أيضًا في استخدام خيار سطر الأوامر --setopt=module_platform_id=<module_platform_name:stream> عند إنشاء جذر التثبيت، وإلا فسيتم أخذ قيمة module_platform_id <#module-platform-id-label> من ملف /etc/os-release داخل جذر التثبيت (وبالتالي ستكون فارغة وقت الإنشاء، وقد يكون الاعتماد النمطي غير مُرضى وقد يتم استبعاد محتوى الوحدات النمطية).

أمثلة على جذر التثبيت:

يضبط releasever للنظام في الدليل <installroot> بشكل دائم إلى <release>.
يرقي الحزم داخل جذر التثبيت من مستودع موصوف بـ --setopt باستخدام تهيئة من /path/dnf.conf.



يشمل الحزم ذات الصلة بـ newpackage. ينطبق على أوامر install وrepoquery وupdateinfo وupgrade وoffline-upgrade (dnf-plugins-core).
يعطل إزالة التبعيات التي لم تعد مستخدمة. يضبط خيار الإعداد clean_requirements_on_remove <#clean-requirements-on-remove-label> إلى False.
يضبط الخيار الأفضل إلى False، بحيث لا تقتصر المعاملات على أفضل المرشحين فقط.
لا يثبت التوثيق. يضبط علم rpm 'RPMTRANS_FLAG_NODOCS'.
يتخطى فحص توقيعات GPG على الحزم (إذا سمحت سياسة RPM بذلك).
يعطل جميع الإضافات.

لهذا الخيار تأثير على التثبيت/التحديث، حيث يمكّن منطق معالجة الحزم المتقادمة في dnf. لمزيد من المعلومات، راجع خيار obsoletes <#obsoletes-conf-option-label>.

يعرض هذا الخيار أيضًا الإمكانيات التي تجعل الحزمة متقادمة عند استخدامه مع أمر repoquery.

خيار الإعداد: obsoletes <#obsoletes-conf-option-label>

بالاشتراك مع أمر غير تفاعلي، يعرض المحتوى ذي الصلة فقط. يكتم الرسائل التي تخطر بالحالة الحالية أو إجراءات DNF.
أقصى وقت انتظار للأمر.

تعيين البيانات الوصفية كمنتهية الصلاحية قبل تشغيل الأمر.
تكوين DNF كما لو كان إصدار التوزيعة هو <الإصدار>. قد يؤثر هذا على مسارات الخبيئة، والقيم في ملفات التهيئة، وعناوين قائمة المرايا.
تجاوز متغير releasever_major، والذي يُكتشف آليًا عادةً أو يُؤخذ من جزء $releasever قبل أول .. لا يؤثر هذا الخيار على متغير $releasever.
تجاوز متغير releasever_minor، والذي يُكتشف آليًا عادةً أو يُؤخذ من جزء $releasever بعد أول .. لا يؤثر هذا الخيار على متغير $releasever.

تحديد مستودع لإضافته إلى المستودعات لهذا الاستعلام. يمكن استخدام هذا الخيار عدة مرات.

  • يُحدد تسمية المستودع بواسطة <المستودع>.
  • يُحدد المسار أو الرابط إلى المستودع بواسطة <المسار/الرابط>. إنه نفس مسار baseurl ويمكن أيضًا إثراؤه بمتغيرات المستودع <#repo-variables-label>.
  • يمكن تعديل تهيئة المستودع باستخدام --setopt=<المستودع>.<الخيار>=<القيمة>.
  • إذا أردت عرض الحزم من هذا المستودع فقط، ادمج هذا مع المفاتيح --repo=<المستودع> أو --disablerepo="*".

تمكين مستودعات محددة فقط بواسطة معرف أو نمط عام. يمكن استخدامه عدة مرات بتأثير تراكمي. إنه اختصار أساسي لـ --disablerepo="*" --enablerepo=<معرف_المستودع> وهو حصري متبادل مع خيار --disablerepo.
مستوى إخراج البرامج النصية لتصحيح RPM. يضبط مستوى التصحيح إلى <الاسم> للبرامج النصية لـ RPM. للمستويات المتاحة، انظر خيار التهيئة rpmverbosity.
يشمل الحزم التي توفر إصلاحًا لمشكلة ذات الخطورة المحددة. ينطبق على أوامر install، repoquery، updateinfo، upgrade و offline-upgrade (dnf-plugins-core).
يشمل الحزم التي توفر إصلاحًا لمشكلة أمنية. ينطبق على أوامر install وrepoquery وupdateinfo وupgrade وoffline-upgrade (dnf-plugins-core).

تجاوز خيار إعداد من ملف الإعداد. لتجاوز خيارات إعداد المستودعات، استخدم repoid.option للـ <option>. تُلحق قيم خيارات الإعداد مثل excludepkgs وincludepkgs وinstallonlypkgs وtsflags بالقيمة الأصلية، ولا تتجاوزها. ومع ذلك، فإن تحديد قيمة فارغة (مثل --setopt=tsflags=) سيمسح الخيار.

حل مشاكل حل التبعيات بإزالة الحزم المسببة للمشاكل من المعاملة. هو اسم مستعار لخيار الإعداد الصارم <#strict-label> بقيمة False. بالإضافة إلى ذلك، مع الأوامر الفرعية لتمكين وتعطيل الوحدة، يسمح بتنفيذ إجراء حتى في حالة تبعيات نمطية معطلة.
عرض الحزم المكررة في المستودعات. ينطبق على أوامر القائمة والبحث.

ينطبق فقط على أنظمة bootc (الحاويات القابلة للإقلاع). تنفيذ المعاملات باستخدام طبقة تراكب مؤقتة ستفقد عند إعادة التشغيل التالية. انظر أيضًا خيار الإعداد <#persistence-label> للاستمرارية.

تشغيل مفصل، عرض رسائل التصحيح.
عرض إصدار DNF والخروج.
الإجابة بنعم آليًا على جميع الأسئلة.

خيارات القائمة مفصولة بفواصل. تتجاوز خيارات سطر الأوامر الإعدادات المقابلة من ملفات الإعداد.

الأوامر

لشرح <package-spec> و<package-file-spec> و<package-name-spec>، انظر تحديد الحزم.

لشرح <provide-spec>، انظر تحديد التوفيرات.

لشرح <group-spec>، انظر تحديد المجموعات.

لشرح <module-spec>، انظر تحديد الوحدات.

لشرح <transaction-spec>، انظر تحديد المعاملات.

أمر الاسم المستعار

الأمر: alias

يسمح للمستخدم بتعريف وإدارة قائمة من الأسماء المستعارة (بصيغة <name=value>)، والتي يمكن استخدامها بعد ذلك كأوامر dnf لاختصار تسلسلات أوامر أطول. لأمثلة على استخدام أمر الاسم المستعار، انظر أمثلة الأسماء المستعارة. لأمثلة على معالجة الأسماء المستعارة، انظر أمثلة معالجة الأسماء المستعارة.

لاستخدام اسم مستعار (name=value)، يجب وضع الاسم كأول "أمر" (مثل أول وسيطة ليست خيارًا). يُستبدل بعد ذلك بقيمته ويُبحث التسلسل الناتج مرة أخرى عن أسماء مستعارة. تتوقف معالجة الاسم المستعار عندما لا يكون الأمر الأول الذي تم العثور عليه اسمًا لأي اسم مستعار.

في حال أدت المعالجة إلى استدعاء متكرر لا نهائي، تُستخدم الوسائط الأصلية بدلاً من ذلك.

أيضًا، كما في الأسماء المستعارة للقشرة، إذا بدأت النتيجة بـ \، ستتوقف معالجة الاسم المستعار.

جميع الأسماء المستعارة مُعرّفة في ملفات الإعدادات في الدليل /etc/dnf/aliases.d/ في القسم [aliases]، والأسماء المستعارة التي ينشئها أمر alias تُكتب إلى ملف USER.conf. في حالة التعارض، يكون لملف USER.conf الأولوية القصوى، ويُستخدم الترتيب الأبجدي لبقية ملفات الإعدادات.

اختياريًا، يوجد خيار enabled في القسم [main] بقيمة مبدئية True. يمكن تعيين هذا لكل ملف على حدة في الملف المعني، أو عالميًا لجميع الأسماء المستعارة في ملف ALIASES.conf.

dnf alias [options] [list] [<name>...]

سرد الأسماء المستعارة مع نتيجتها النهائية. يُحدد المُعامل [<alias>...] النتيجة بشكل إضافي لتقتصر فقط على الأسماء المستعارة المطابقة له.


dnf alias [options] add <name=value>...

إنشاء أسماء مستعارة جديدة.


dnf alias [options] delete <name>...

حذف الأسماء المستعارة.


أمثلة الأسماء المستعارة

سرد جميع الأسماء المستعارة المُعرّفة.
إضافة اسم مستعار جديد للأمر يُسمى rm يعمل بنفس طريقة الأمر remove.
إضافة اسم مستعار جديد للأمر يُسمى upgrade يعمل بنفس طريقة الأمر upgrade، مع خيارات إضافية. لاحظ أن الأمر الأصلي upgrade مُسبوق بـ \ لمنع حدوث حلقة لا نهائية في معالجة الأسماء المستعارة.

أمثلة معالجة الأسماء المستعارة

إذا وُجدت أسماء مستعارة مُعرّفة in=install و FORCE="--skip-broken --disableexcludes=all":

  • dnf FORCE in يُستبدل بـ dnf --skip-broken --disableexcludes=all install
  • dnf in FORCE يُستبدل بـ dnf install FORCE (والذي سيفشل)

إذا وُجد اسم مستعار مُعرّف in=install:

  • سيتم استبدال dnf in بـ dnf install
  • سيتم استبدال dnf --repo updates in بـ dnf --repo updates in (والذي سيفشل)

أمر الإزالة الآلية

الأمر: autoremove
الأسماء المستعارة للمطابقة الصريحة لـ NEVRA: autoremove-n، autoremove-na، autoremove-nevra

dnf [خيارات] autoremove

يزيل جميع الحزم من النظام التي تم تثبيتها أصلاً كتبعيات لحزم مثبتة من قبل المستخدم، ولكنها لم تعد مطلوبة بواسطة أي من هذه الحزم.


dnf [خيارات] autoremove <مواصفات>...

هذا اسم مستعار لأمر الإزالة مع تعيين clean_requirements_on_remove إلى True. يزيل الحزم المحددة من النظام بالإضافة إلى أي حزم تعتمد على الحزم التي يتم إزالتها. يمكن أن يكون كل <مواصفات> إما <مواصفات-حزمة>، والذي يحدد حزمة مباشرة، أو @<مواصفات-مجموعة>، والذي يحدد مجموعة (بيئة) تحتوي عليها. كما يزيل أي تبعيات لم تعد مطلوبة.


هناك أيضًا بعض أوامر الإزالة الآلية المحددة autoremove-n و autoremove-na و autoremove-nevra التي تسمح بتحديد وسيطة دقيقة بتنسيق NEVRA (الاسم-العصر:الإصدار-الإصدار.المعمارية).

هذا الأمر لا يفرض مزامنة البيانات الوصفية منتهية الصلاحية افتراضيًا. انظر أيضًا مزامنة البيانات الوصفية.

أمر الفحص

الأمر: check

dnf [خيارات] check [--dependencies] [--duplicates] [--obsoleted] [--provides]

يفحص قاعدة بيانات الحزم المحلية وينتج معلومات عن أي مشاكل يجدها. يمكنك تحديد الفحوصات التي سيتم إجراؤها باستخدام الخيارات --dependencies و --duplicates و --obsoleted و --provides (الافتراضي هو فحص كل شيء).


أمر فحص التحديث

الأمر: check-update
الأسماء المستعارة: check-upgrade

يتحقق بشكل غير تفاعلي مما إذا كانت تحديثات الحزم المحددة متاحة. إذا لم يتم تقديم أي <مواصفات-ملف-حزمة>، فإنه يتحقق مما إذا كانت أي تحديثات متاحة على الإطلاق لنظامك. سيكون رمز خروج DNF 100 عندما تكون التحديثات متاحة وسيتم طباعة قائمة التحديثات، و0 إذا لم تكن متاحة، و1 في حالة حدوث خطأ. إذا تم تحديد الخيار --changelogs، فسيتم أيضًا طباعة فرق سجل التغييرات للحزم التي سيتم تحديثها.

يرجى ملاحظة أن توفر إصدار أحدث محدد لحزمة مثبتة (والمبلغ عنه بواسطة check-update) لا يعني أن dnf upgrade اللاحق سيقوم بتثبيته. الفرق هو أن dnf upgrade لديه قيود (مثل استيفاء تبعيات الحزمة) يجب أخذها في الاعتبار.

يتأثر الإخراج بخيار التهيئة autocheck_running_kernel <#autocheck-running-kernel-label>.


أمر التنظيف

الأمر: clean

ينفذ تنظيف الملفات المؤقتة المحفوظة للمستودعات. يشمل ذلك أي بيانات متبقية من مستودعات معطلة أو محذوفة وكذلك لإصدارات توزيع مختلفة.

يزيل ملفات الخبيئة المولدة من بيانات المستودع الوصفية. يجبر ذلك DNF على إعادة توليد ملفات الخبيئة في المرة التالية التي يُشغل فيها.
يضع علامة انتهاء صلاحية على بيانات المستودع الوصفية. يعيد DNF التحقق من الخبيئة لكل مستودع في المرة التالية التي يُستخدم فيها.
يزيل بيانات المستودع الوصفية. تلك هي الملفات التي يستخدمها DNF لتحديد توفر الحزم عن بُعد. استخدام هذا الخيار يجعل DNF يُنزل جميع البيانات الوصفية في المرة التالية التي يُشغل فيها.
يزيل أي حزم مخبأة من النظام.
ينفذ كل ما سبق.

أمر قائمة التبعيات

اسم مستعار مهمل لـ dnf repoquery --deplist.

أمر مزامنة التوزيعة

الأمر: distro-sync
الأسماء المستعارة: dsync
الأسماء المستعارة التي لم تعد تستخدم: distrosync، distribution-synchronization

يُرقّي أو يُخفض أو يُبقي الحزم المثبتة المختارة حسب الضرورة لتطابق أحدث إصدار متاح من أي مستودع مفعل. إذا لم يُعطَ أي حزمة، تُعتبر جميع الحزم المثبتة.

انظر أيضًا سياسة استبدال ملفات التهيئة.


أمر التخفيض

الأمر: downgrade
الأسماء المستعارة: dg

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

أمر المجموعة

الأمر: group
الأسماء المستعارة: grp
الأسماء المستعارة التي لم تعد مستخدمة: groups، grouplist، groupinstall، groupupdate، groupremove، grouperase، groupinfo

المجموعات هي تجمعات افتراضية للحزم. يتتبع DNF المجموعات التي حددها المستخدم ("وضع علامة") على أنها مثبتة ويمكنه التعامل مع الحزم المكونة بأوامر بسيطة.

عرض نظرة عامة على عدد المجموعات المثبتة والمتاحة. مع مواصفات، قصر المخرجات على المجموعات المطابقة. summary هو الأمر الفرعي الافتراضي للمجموعات.
عرض قوائم الحزم لمجموعة. يُظهر الحزم المثبتة أو المتاحة من مستودع عند استخدام -v.
وضع علامة على المجموعة المحددة كمثبتة وتثبيت الحزم التي تحتويها. تضمين أيضًا حزم اختيارية للمجموعة إذا تم تحديد --with-optional. سيتم تثبيت جميع الحزم الإلزامية والافتراضية كلما أمكن. يتم تثبيت الحزم الشرطية إذا استوفت متطلباتها. إذا كانت المجموعة مثبتة بالفعل (جزئيًا)، يقوم الأمر بتثبيت الحزم المفقودة من المجموعة. اعتمادًا على قيمة خيار التهيئة للمهملات <#obsoletes-conf-option-label>، يأخذ تثبيت المجموعة المهملات في الاعتبار.

سرد جميع المجموعات المطابقة، سواء بين المجموعات المثبتة أو المتاحة. إذا لم يتم تحديد شيء، سرد جميع المجموعات المعروفة. تعمل الخيارات --installed و--available على تضييق القائمة المطلوبة. يتم ترتيب السجلات بواسطة علامة display_order المحددة في ملف comps.xml. يوفر قائمة بجميع المجموعات المخفية باستخدام الخيار --hidden. يوفر معرفات المجموعات عند استخدام الخيارات -v أو --ids.
تعليم المجموعة كمنزوعة وإزالة تلك الحزم في المجموعة من النظام التي لا تنتمي إلى مجموعة مثبتة أخرى ولم يتم تثبيتها صراحةً من قبل المستخدم.
ترقية الحزم من المجموعة وترقية المجموعة نفسها. يتضمن الأخير تثبيت الحزم التي أضافها التوزيع إلى المجموعة وإزالة الحزم التي أزيلت من المجموعة طالما لم يتم تثبيتها بشكل صريح من قبل المستخدم.

يمكن أيضًا وضع علامة على المجموعات كمثبتة أو إزالتها دون التعامل فعليًا مع أي حزم:

يضع علامة على المجموعة المحددة بأنها مثبتة. لا تُثبّت أي حزم بواسطة هذا الأمر، لكن تُعتبر المجموعة بعد ذلك مثبتة.
يضع علامة على المجموعة المحددة بأنها مُزالة. لا تُزَال أي حزم بواسطة هذا الأمر.

انظر أيضًا سياسة استبدال ملفات التهيئة.

أمر المساعدة

الأمر: help

يعرض نص المساعدة لجميع الأوامر. إذا أُعطي اسم أمر، يُعرض المساعدة لذلك الأمر المحدد فقط.

أمر السجل

الأمر: history
الأسماء المستعارة: hist

يسمح أمر السجل للمستخدم بعرض ما حدث في المعاملات السابقة والتصرف بناءً على هذه المعلومات (بافتراض أن خيار الإعداد history_record مُفعّل).

الإجراء المبدئي للسجل هو سرد معلومات حول المعاملات المُعطاة في جدول. كل <محدد> يمكن أن يكون إما <محدد-معاملة>، الذي يُحدد معاملة مباشرة، أو <محدد-معاملة>..<محدد-معاملة>، الذي يُحدد نطاقًا من المعاملات، أو <محدد-اسم-حزمة>، الذي يُحدد معاملة بواسطة حزمة تعاملت معها. عندما لا تُحدد معاملة، تُسرد جميع المعاملات المعروفة.

لاحظ أن المعاملات العابرة (انظر --transient) تُسرد حتى وإن لم تُجرِ تغييرات دائمة على الملفات تحت /usr أو على قاعدة بيانات RPM.

يُدرج عمود "الإجراء(ات)" كل نوع من الإجراءات المُتخذة في المعاملة. القيم الممكنة هي:

  • تثبيت (I): حزمة جديدة ثُبّتت على النظام
  • تخفيض (D): إصدار أقدم من حزمة استبدل الإصدار المُثبت سابقًا
  • مهمل (O): حزمة مهملة استُبدلت بحزمة جديدة
  • ترقية (U): إصدار أحدث من الحزمة استبدل الإصدار المُثبت سابقًا
  • إزالة (E): حزمة أُزيلت من النظام
  • إعادة تثبيت (R): تم إعادة تثبيت حزمة بنفس الإصدار
  • تغيير السبب (C): تم الاحتفاظ بحزمة في النظام لكن سبب تثبيتها تغير

يعرض عمود "المعدل" عدد الإجراءات المتخذة في كل معاملة، متبوعًا برمز أو اثنين من الرموز التالية:

  • >: تم تغيير قاعدة بيانات RPM، خارج DNF، بعد المعاملة
  • <: تم تغيير قاعدة بيانات RPM، خارج DNF، قبل المعاملة
  • *: تم إحباط المعاملة قبل الاكتمال
  • #: اكتملت المعاملة، لكن بحالة غير صفرية
  • E: اكتملت المعاملة بنجاح، لكن كان لها مخرجات تحذير/خطأ

يُطبع ترتيب مخرجات history list بترتيب عكسي.

يصف المعاملات المعطاة. معنى <spec> هو نفسه كما في أمر قائمة التاريخ. عندما لا تُحدد معاملة، يصف ما حدث خلال أحدث معاملة.

يكرر المعاملة المحددة. يستخدم آخر معاملة (بأعلى معرّف) إذا وُجدت أكثر من معاملة لـ <package-file-spec> المعطى. إذا لم يكن من الممكن إعادة بعض العمليات بسبب الحالة الحالية لـ RPMDB، فلن يُعيد المعاملة.

يعيد تشغيل معاملة مخزنة في ملف <filename> بواسطة أمر تخزين التاريخ. ستنفذ إعادة التشغيل نفس العمليات تمامًا على الحزم كما في المعاملة الأصلية وستُرجع خطأً في حالة وجود أي اختلافات في الحزم المثبتة أو إصداراتها. انظر أيضًا مواصفات تنسيق JSON للمعاملة <#transaction-json-label> لتنسيق الملف.
لا تتحقق من أن الحزم المثبتة في نفس الحالة مثل تلك المسجلة في المعاملة. مثلاً، في حالة وجود ترقية foo-1.0 -> foo-2.0 مخزنة في المعاملة، لكن يوجد foo-1.1 مثبت على النظام الهدف.
لا تتحقق من الحزم الإضافية المسحوبة إلى المعاملة على النظام الهدف. مثلاً، قد لا يحتوي النظام الهدف على بعض التبعية التي كانت مثبتة على النظام المصدر. تخرج إعادة التشغيل بخطأ في هذا افتراضيًا، لأن المعاملة لن تكون نفسها.
في حالة عدم توفر بعض الحزم المخزنة في المعاملة على النظام الهدف، تخطاها بدلاً من الخروج بخطأ.

يلغي جميع المعاملات المنفذة بعد المعاملة المحددة. يستخدم آخر معاملة (بأعلى معرّف) إذا وُجدت أكثر من معاملة لـ <package-file-spec> المعطى. إذا لم يكن من الممكن إلغاء بعض المعاملات بسبب الحالة الحالية لـ RPMDB، فلن يُلغي أي معاملة.

يخزن معاملة محددة بواسطة <مواصفات-المعاملة>. يمكن إعادة تشغيل المعاملة لاحقًا بواسطة أمر إعادة تشغيل السجل.

تحذير: يُعتبر تنسيق المعاملة المخزنة غير مستقر وقد يتغير في أي وقت. سيعمل إذا استُخدم نفس الإصدار من dnf للتخزين وإعادة التشغيل (أو بين الإصدارات طالما بقي كما هو).

-o <ملف-الإخراج>, --output=<ملف-الإخراج> يخزن المعاملة المسلسلة في <ملف-الإخراج. المبدئي هو transaction.json.

ينفذ العملية المعاكسة لجميع العمليات المنفذة في المعاملة المحددة. يستخدم آخر معاملة (ذات المعرف الأعلى) إذا وُجدت أكثر من معاملة لـ <مواصفات-ملف-الحزمة> المعطاة. إذا لم يكن من الممكن التراجع عن بعض العمليات بسبب الحالة الحالية لـ RPMDB، فلن يتراجع عن المعاملة.
يعرض جميع الحزم المثبتة بواسطة المستخدم، والمثبتة من مجموعة أو ملف تعريف وحدة، والحزم المثبتة خارج DNF. أي أنه يسرد الحزم التي ستبقى على النظام عند تنفيذ أمر الإزالة التلقائية أو أمر الإزالة مع خيار الإعداد clean_requirements_on_remove المضبوط على True. لاحظ أنه يمكن تحقيق نفس النتائج باستخدام dnf repoquery --userinstalled، وأمر repoquery أكثر قوة في تنسيق الإخراج.

هذا الأمر لا يفرض مزامنة البيانات الوصفية منتهية الصلاحية افتراضيًا، باستثناء الأوامر الفرعية redo و rollback و undo. انظر أيضًا سياسة مزامنة البيانات الوصفية واستبدال ملفات الإعداد.

أمر المعلومات

الأمر: info
الأسماء المستعارة: if

يسرد معلومات الوصف والملخص حول الحزم المثبتة والمتاحة.

يحد أمر info الحزم المعروضة بنفس طريقة أمر list.

هذا الأمر لا يفرض مزامنة البيانات الوصفية منتهية الصلاحية افتراضيًا. انظر أيضًا مزامنة البيانات الوصفية.

أمر التثبيت

الأمر: install
الأسماء المستعارة: in
الأسماء المستعارة للمطابقة الصريحة لـ NEVRA: install-n، install-na، install-nevra
الأسماء المستعارة التي لم تعد مستخدمة: localinstall

يضمن تثبيت الحزم المعطاة وتبعياتها على النظام. يمكن أن يكون كل <مواصفات> إما <مواصفات-حزمة>، أو @<مواصفات-وحدة>، أو @<مواصفات-مجموعة>. انظر أمثلة التثبيت. إذا تعذر تثبيت حزمة معطاة أو توفير (ولم تكن مثبتة بالفعل)، سيكون رمز الخروج غير صفري. إذا تطابقت <مواصفات> مع كل من @<مواصفات-وحدة> و @<مواصفات-مجموعة>، فسيتم تثبيت الوحدة فقط.

عند إعطاء <مواصفات-حزمة> لتحديد الإصدار الدقيق للحزمة، سيثبت DNF الإصدار المطلوب، بغض النظر عن إصدار الحزمة المثبت بالفعل. ستتم إزالة الإصدار السابق للحزمة في حالة الحزمة غير المخصصة للتثبيت فقط.

من ناحية أخرى، إذا حددت <مواصفات-حزمة> اسمًا فقط، يأخذ DNF أيضًا في الاعتبار الحزم التي تجعلها قديمة عند اختيار الحزمة المراد تثبيتها. هذا السلوك خاص بأمر التثبيت. لاحظ أن هذا قد يؤدي إلى نتائج تبدو غير متوقعة إذا كانت الحزمة تحتوي على إصدارات متعددة وكان بعض الإصدارات الأقدم يُجعل قديمًا. يُنشئ انقسامًا في مسار الترقية وتُعتبر كلا الطريقتين صحيحتين، ويتم اختيار الحزمة الناتجة ببساطة حسب الترتيب المعجمي.


توجد أيضًا بعض أوامر التثبيت المحددة install-n وinstall-na وinstall-nevra التي تسمح بتحديد وسيط دقيق بتنسيق NEVRA. ونتيجة لذلك، لن يتم مطابقة <spec> مع التوفرات وتوفرات الملفات.

انظر أيضًا سياسة استبدال ملفات التهيئة.

أمثلة التثبيت

تثبيت الحزمة tito (tito هو اسم الحزمة).
تثبيت ملف rpm محلي tito-0.6.2-1.fc22.noarch.rpm من الدليل ~/Downloads/.
تثبيت الحزمة بإصدار محدد. إذا كانت الحزمة مثبتة بالفعل، فسيحاول آليًا الرجوع أو الترقية إلى الإصدار المحدد.
تثبيت أحدث إصدار متاح من الحزمة. إذا كانت الحزمة مثبتة بالفعل، فسيحاول الترقية آليًا إلى أحدث إصدار. إذا تعذر تثبيت أحدث إصدار من الحزمة، فسيفشل التثبيت.
سيتعرف DNF آليًا على أن vim ليس اسم حزمة، ولكنه سيبحث عن حزمة توفر vim مع جميع التبعيات المطلوبة ويقوم بتثبيتها. ملاحظة: مطابقة اسم الحزمة لها أولوية على مطابقة توفر الحزمة.
https://kojipkgs.fedoraproject.org//packages/tito/0.6.0/1.fc22/noarch/tito-0.6.0-1.fc22.noarch.rpm
تثبيت حزمة مباشرة من عنوان URL.
تثبيت جميع الملفات الشخصية المبدئية للوحدة 'docker' وملفات RPM الخاصة بها. يتم تمكين تيارات الوحدة وفقًا لذلك.
تثبيت المجموعة البيئية 'Web Server'.
تثبيت حزمة توفر الملف /usr/bin/rpmsign.
تثبيت الحزمة tito (tito هو اسم الحزمة) بدون التبعيات الضعيفة. التبعيات الضعيفة غير مطلوبة للوظائف الأساسية للحزمة، لكنها تعزز الحزمة الأصلية (مثل التوثيق الموسع، الإضافات، الوظائف الإضافية، إلخ).
تثبيت جميع الحزم التي تنتمي إلى النشرة الاستشارية "FEDORA-2018-b7b99fe852".

أمر القائمة

الأمر: list
الأسماء المستعارة: ls

طباعة قوائم الحزم بناءً على علاقة الحزم' بالنظام. الحزمة تكون مثبتة إذا كانت موجودة في RPMDB، وتكون متاحة إذا لم تكن مثبتة ولكنها موجودة في مستودع يعرفه DNF.

أمر القائمة أيضًا يحد من الحزم المعروضة وفقًا لمعايير محددة، على سبيل المثال فقط تلك التي تحدث حزمة مثبتة (مع احترام أولوية المستودع <#repo-priority-label>). خيار الاستبعاد <#exclude-label> في ملف التهيئة يمكن أن يؤثر على النتيجة، ولكن إذا تم استخدام خيار سطر الأوامر --disableexcludes، فإنه يضمن إدراج جميع الحزم المثبتة.

إدراج جميع الحزم الموجودة في RPMDB، في مستودع أو كليهما.
إدراج الحزم المثبتة.
إدراج الحزم المتاحة.
إدراج الإضافات، أي الحزم المثبتة على النظام غير المتاحة في أي مستودع معروف.
إدراج الحزم المثبتة على النظام التي أصبحت قديمة بفعل حزم في أي مستودع معروف.
إدراج الحزم المضافة حديثًا إلى المستودعات.
سرد الترقيات المتاحة للحزم المثبتة.
سرد الحزم التي ستُزال بواسطة أمر dnf autoremove.

هذا الأمر لا يفرض مزامنة البيانات الوصفية منتهية الصلاحية افتراضيًا. انظر أيضًا مزامنة البيانات الوصفية.

أمر Makecache

الأمر: makecache
الأسماء المستعارة: mc

تنزيل وختزين البيانات الوصفية للمستودعات المُمكّنة. يحاول تجنب التنزيل كلما أمكن (مثلًا، عندما لم تنته صلاحية البيانات الوصفية المحلية بعد أو عندما لم يتغير طابعها الزمني).
مثل makecache العادي، لكنه يوجه DNF ليكون أكثر وعيًا بالموارد، مما يعني أنه لن يفعل شيئًا إذا كان يعمل على طاقة البطارية، وسينتهي فورًا إذا كان الوقت مبكرًا جدًا بعد آخر تشغيل ناجح لـ makecache (انظر dnf.conf(5)، metadata_timer_sync <#metadata-timer-sync-label>)، وإذا فشل أول مرآة في قائمة مرايا المستودع، فلن يحاول مزامنة البيانات الوصفية من مرايا أخرى لذلك المستودع.

أمر Mark

الأمر: mark

وضع علامة على الحزم المحددة كمثبتة بواسطة المستخدم. قد يكون هذا مفيدًا إذا تم تثبيت أي حزمة كاعتمادية ويُراد بقاؤها في النظام عند تنفيذ أمر Autoremove أو أمر Remove مع خيار الإعداد clean_requirements_on_remove المضبوط على True.
إزالة علامة الحزم المحددة كمثبتة بواسطة المستخدم. عندما لا تحتاج كمسخدم إلى حزمة معينة، يمكنك وضع علامة عليها للإزالة. تبقى الحزمة مثبتة في النظام لكنها ستُزال عند تنفيذ أمر Autoremove أو أمر Remove مع خيار الإعداد clean_requirements_on_remove المضبوط على True. يجب استخدام هذه العملية بدلًا من أمر Remove إذا لم تكن متأكدًا مما إذا كانت الحزمة مطلوبة من قبل حزم مستخدم أخرى في النظام.
وضع علامة على الحزم المحددة كمثبتة بواسطة مجموعة. قد يكون هذا مفيدًا إذا تم تثبيت أي حزمة كاعتمادية أو بواسطة مستخدم ويُراد حمايتها ومعالجتها كعضو في المجموعة مثلًا أثناء إزالة مجموعة.

أمر Module

الأمر: module

تحذير:

الوحدات النمطية مهملة، وسيتم إزالة الوظائف في إصدار مستقبلي من DNF5.


نظرة عامة على الوحدات النمطية متاحة في صفحة الدليل dnf.modularity(7) <#modularity-label>. تأخذ الأوامر الفرعية للوحدة وسائط <module-spec>... التي تحدد الوحدات أو الملفات الشخصية.

تثبيت ملفات تعريف الوحدة النمطية، بما في ذلك حزمها. في حالة عدم تقديم ملف تعريف، يتم تثبيت جميع الملفات الشخصية المبدئية. يتم تمكين تدفقات الوحدة وفقًا لذلك.

لا يمكن استخدام هذا الأمر لتبديل تدفقات الوحدة. استخدم الأمر dnf module switch-to لذلك.

تحديث الحزم المرتبطة بتدفق وحدة نشط، مقيد اختياريًا بملف تعريف. إذا تم تقديم profile_name، فسيتم تحديث الحزم المشار إليها بواسطة هذا الملف الشخصي فقط.

التبديل إلى تدفق وحدة أو تمكينه، وتغيير إصدارات الحزم المثبتة إلى الإصدارات التي يوفرها التدفق الجديد، وإزالة الحزم من التدفق القديم غير المتوفرة بعد الآن. كما يقوم بتحديث الملفات الشخصية المثبتة إذا كانت متاحة للتدفق الجديد. عند تقديم ملف تعريف، يقوم بتثبيت هذا الملف الشخصي ولا يقوم بتحديث أي ملفات شخصية مثبتة بالفعل.

يمكن استخدام هذا الأمر كإصدار أقوى من الأمر dnf module enable، والذي لا يمكّن الوحدات فحسب، بل يقوم أيضًا بعمل distrosync لجميع الحزم النمطية في الوحدات الممكّنة.

يمكن استخدامه أيضًا كإصدار أقوى من الأمر dnf module install، ولكنه يتطلب تحديد الملفات الشخصية التي من المفترض تثبيتها، لأن الأمر switch-to لا يستخدم default profiles. الأمر switch-to لا يقوم فقط بتثبيت الملفات الشخصية، بل يقوم أيضًا بعمل distrosync لجميع الحزم النمطية في الوحدة المثبتة.

إزالة ملفات تعريف الوحدة النمطية المثبتة، بما في ذلك الحزم التي تم تثبيتها باستخدام الأمر dnf module install. لن يتم إزالة الحزم المطلوبة بواسطة ملفات تعريف الوحدة النمطية الأخرى المثبتة أو بواسطة حزم أخرى مثبتة من قبل المستخدم. في حالة عدم تقديم ملف تعريف، تتم إزالة جميع الملفات الشخصية المثبتة.
إزالة ملفات تعريف الوحدة النمطية المثبتة، بما في ذلك الحزم التي تم تثبيتها باستخدام الأمر dnf module install. مع الخيار --all، يقوم بالإضافة إلى ذلك بإزالة جميع الحزم التي يتم توفير أسمائها بواسطة الوحدات المحددة. لا تتم إزالة الحزم المطلوبة بواسطة ملفات تعريف الوحدة النمطية الأخرى المثبتة والحزم التي يتم توفير أسمائها أيضًا بواسطة أي وحدة أخرى.

تمكين تدفق وحدة وجعل حزم RPM الخاصة بالتدفق متاحة في مجموعة الحزم.

يتم حل التبعيات النمطية، وفحص التبعيات وتمكينها بشكل متكرر. في حالة وجود مشكلة في التبعية النمطية، سيتم رفض العملية. لتنفيذ الإجراء على أي حال، يرجى استخدام الخيار --skip-broken.

لا يمكن استخدام هذا الأمر لتبديل تدفقات الوحدة. استخدم الأمر dnf module switch-to لذلك.


تعطيل وحدة. ستصبح جميع تدفقات الوحدة ذات الصلة غير متاحة. وبالتالي، ستتم إزالة جميع الملفات الشخصية المثبتة وستصبح حزم RPM الخاصة بالوحدة غير متاحة في مجموعة الحزم. في حالة وجود مشكلة في التبعية النمطية، سيتم رفض العملية. لتنفيذ الإجراء على أي حال، يرجى استخدام الخيار --skip-broken.

إعادة تعيين حالة الوحدة بحيث لا تكون مفعلة أو معطلة. ونتيجة لذلك، ستتم إزالة جميع الملفات التعريفية المثبتة ولن تتوفر في مجموعة الحزم إلا حزم RPM من الدفق المبدئي.

سرد جميع الحزم المعيارية المطابقة لـ <مواصفات-اسم-الحزمة> من جميع الوحدات (بما في ذلك المعطلة)، بالإضافة إلى الوحدات والدفقات التي تنتمي إليها.
سرد جميع دفقات الوحدات، وملفاتها التعريفية وحالاتها (مفعلة، معطلة، مبدئية).
سرد دفقات الوحدات المفعلة.
سرد دفقات الوحدات المعطلة.
سرد دفقات الوحدات ذات الملفات التعريفية المثبتة.
طباعة معلومات مفصلة عن دفق الوحدة المحدد.
طباعة معلومات مفصلة عن الملفات التعريفية للوحدة المحددة.
سرد جميع الحزم المتاحة التابعة للوحدات المحددة.
سرد جميع الحزم المتاحة التابعة للوحدات المحددة.
سرد جميع الحزم المثبتة ذات الاسم نفسه مثل الحزم التابعة للوحدات المحددة.

أمر التوفير

الأمر: provides
الأسماء المستعارة: prov, whatprovides, wp

إيجاد الحزم التي توفر <مواصفات-التوفير> المعطاة. هذا مفيد عندما يعرف المرء اسم ملف ويريد معرفة أي حزمة (مثبتة أم لا) توفر هذا الملف. يتم البحث عن <مواصفات-التوفير> تدريجياً في المواقع التالية:
1.
تتم مطابقة <مواصفات-التوفير> مع جميع توفيرات الملفات لأي حزمة متاحة:

$ dnf provides /usr/bin/gzip
gzip-1.9-9.fc29.x86_64 : The GNU data compression program
Matched from:
Filename    : /usr/bin/gzip


2.
ثم يتم البحث في جميع توفيرات جميع الحزم المتاحة:

$ dnf provides "gzip(x86-64)"
gzip-1.9-9.fc29.x86_64 : The GNU data compression program
Matched from:
Provide     : gzip(x86-64) = 1.9-9.fc29


3.
يفترض DNF أن <مواصفات-التوفير> هو أمر نظام، فيسبقه بالبادئات /usr/bin/، /usr/sbin/ (واحدة تلو الأخرى) ويقوم بالبحث عن توفيرات الملفات مرة أخرى. لأسباب قديمة (الحزم التي لم تقم بـ UsrMove) يتم أيضاً البحث عن البادئات /bin و /sbin:

$ dnf provides zless
gzip-1.9-9.fc29.x86_64 : The GNU data compression program
Matched from:
Filename    : /usr/bin/zless


4.
إذا فشلت هذه الخطوة الأخيرة أيضاً، يعيد DNF "خطأ: لم يتم العثور على تطابقات".


هذا الأمر لا يفرض مزامنة البيانات الوصفية منتهية الصلاحية افتراضيًا. انظر أيضًا مزامنة البيانات الوصفية.

أمر إعادة التثبيت

الأمر: reinstall
الأسماء المستعارة: rei

تثبيت الحزم المحددة، يفشل إذا كانت بعض الحزم غير مثبتة أو غير متاحة (أي لا يوجد مستودع لتنزيل نفس RPM).

أمر الإزالة

الأمر: remove
الأسماء المستعارة: rm
الأسماء المستعارة للمطابقة الصريحة لـ NEVRA: remove-n، remove-na، remove-nevra
الأسماء المستعارة التي لم تعد مستخدمة: erase-nevra

إزالة الحزم المحددة من النظام مع أي حزم تعتمد على الحزم التي يتم إزالتها. يمكن أن يكون كل <مواصفات> إما <مواصفات-الحزمة>، الذي يحدد حزمة مباشرة، أو @<مواصفات-المجموعة>، الذي يحدد مجموعة (بيئية) تحتوي عليها. إذا كان clean_requirements_on_remove ممكناً (المبدئي)، يتم أيضاً إزالة أي تبعيات لم تعد مطلوبة.
يزيل الإصدارات الأقدم من الحزم المكررة. لضمان سلامة النظام، يعيد تثبيت أحدث حزمة. في بعض الحالات، لا يمكن للأمر حل التعارضات. في مثل هذه الحالات، قد يساعد أمر dnf shell مع الأوامر الفرعية remove --duplicates وupgrade dnf-shell.
يزيل الحزم القديمة المخصصة للتثبيت فقط، مع الاحتفاظ بأحدث الإصدارات وإصدار النواة قيد التشغيل.

توجد أيضًا بعض أوامر الإزالة المحددة remove-n وremove-na وremove-nevra التي تسمح بتحديد وسيطة دقيقة بتنسيق NEVRA. ونتيجة لذلك، لن تتم مطابقة <spec> مع التوفيرات وتوفيرات الملفات.

أمثلة الإزالة

يزيل الحزم acpi وtito.
يزيل الحزم غير الموجودة في أي مستودع، لكن لا يزيل الحزم tito وacpi (قد تُزال إذا كانت تعتمد على بعض الحزم المُزالة).
يزيل الإصدارات الأقدم من الحزم المكررة (مكافئ لأمر yum package-cleanup --cleandups).

أمر معلومات المستودع

الأمر: repoinfo

اسم مستعار لأمر repolist يوفر معلومات أكثر تفصيلاً مثل dnf repolist -v.

أمر قائمة المستودعات

الأمر: repolist

بناءً على الأمر المحدد، يسرد المستودعات المُمكّنة أو المُعطّلة أو جميع المستودعات المعروفة. يسرد جميع المستودعات المُمكّنة افتراضيًا. يوفر معلومات أكثر تفصيلاً عند استخدام الخيار -v.

هذا الأمر لا يفرض مزامنة البيانات الوصفية منتهية الصلاحية افتراضيًا. انظر أيضًا مزامنة البيانات الوصفية.

أمر استعلام المستودع

الأمر: rq
الأسماء المستعارة للمطابقة الصريحة لـ NEVRA: repoquery-n، repoquery-na، repoquery-nevra

يبحث في مستودعات DNF المتاحة عن الحزم المحددة ويعرض المعلومات المطلوبة عنها. وهو مكافئ لـ rpm -q للمستودعات البعيدة.
يسرد المجموعات التي تحتوي على <مواصفات-الحزمة>.
يوفر قائمة العلامات التي يتعرف عليها خيار --queryformat في repoquery.

توجد أيضًا بعض أوامر repoquery المحددة repoquery-n وrepoquery-na وrepoquery-nevra التي تسمح بتحديد وسيطة دقيقة بتنسيق NEVRA (لا تؤثر على وسائط الخيارات مثل --whatprovides <arg>، ...). ونتيجة لذلك، لن تتم مطابقة <spec> مع توفيرات الملفات.

خيارات التحديد

بالاشتراك مع <مواصفات-ملف-الحزمة>، يتحكم في الحزم المعروضة في المخرجات. إذا تم تقديم <مواصفات-ملف-الحزمة>، يحدد مجموعة الحزم الناتجة إلى تلك المطابقة للمواصفات. تُعتبر جميع الحزم إذا لم يتم تحديد <مواصفات-ملف-الحزمة>.

<مواصفات-ملف-الحزمة>
مواصفات الحزمة بتنسيق NEVRA (الاسم[-[العصر:]الإصدار[-الإصدار]][.المعمارية]) أو توفير ملف. انظر تحديد الحزم.
الاستعلام عن جميع الحزم (للتوافق مع rpmquery، وهو أيضًا اختصار لـ repoquery '*' أو repoquery بدون وسائط).
يحدد المجموعة الناتجة فقط إلى حزم المعماريات المحددة (المبدئي هو جميع المعماريات). في بعض الحالات، يتأثر الناتج بالمعمارية الأساسية للنظام الجاري، لذلك لتشغيل repoquery لمعمارية غير متوافقة مع نظامك، استخدم الخيار --forcearch=<المعمارية> لتغيير المعمارية الأساسية.
يحدد المجموعة الناتجة إلى الحزم المكررة المثبتة (أي إصدارات حزم متعددة لنفس الاسم والمعمارية). تُستبعد حزم التثبيت فقط من هذه المجموعة.
يحدد المجموعة الناتجة إلى الحزم الطرفية التي تم تثبيتها كتبعيات بحيث لم تعد مطلوبة. يسرد هذا المفتاح الحزم التي ستُزال بعد تنفيذ الأمر dnf autoremove.
يحدد المجموعة الناتجة إلى الحزم المتاحة فقط (مضبوط مبدئيًا).
يعطل تصفية الحزم النمطية، بحيث تُضمن حزم تيارات النمط غير النشطة في النتيجة.
يحدد المجموعة الناتجة إلى الحزم غير الموجودة في أي من المستودعات المتاحة.
تحديد المجموعة الناتجة فقط للحزمة التي تمتلك <ملف>.
تحديد المجموعة الناتجة للحزم المثبتة فقط. قد يؤثر خيار الاستبعاد <#exclude-label> في ملف الإعدادات على النتيجة، ولكن إذا استُخدم خيار سطر الأوامر --disableexcludes، فإنه يضمن إدراج جميع الحزم المثبتة.
تحديد المجموعة الناتجة للحزم المثبتة للتثبيت فقط.
تحديد المجموعة الناتجة إلى <رقم> من أحدث الحزم لكل اسم حزمة ومعمارية. إذا كان <رقم> سالباً، فتجاوز <رقم> من أحدث الحزم. للقيمة السالبة <رقم> استخدم الصياغة --latest-limit=<رقم>.
تحديد المجموعة الناتجة للحزم التي عُدلت مؤخراً.
تحديد المجموعة الناتجة فقط للحزم من مستودع معرّف بواسطة <معرف-مستودع>. يمكن استخدامه عدة مرات بتأثير تراكمي.
الإبلاغ عن التبعيات غير المستوفاة بين الحزم المثبتة (أي المتطلبات المفقودة والتعارضات القائمة).
تحديد المجموعة الناتجة للحزم التي توفر ترقية لحزمة مثبتة مسبقاً.
تحديد المجموعة الناتجة للحزم المثبتة من قبل المستخدم. قد يؤثر خيار الاستبعاد <#exclude-label> في ملف الإعدادات على النتيجة، ولكن إذا استُخدم خيار سطر الأوامر --disableexcludes، فإنه يضمن إدراج جميع الحزم المثبتة.

تحديد المجموعة الناتجة فقط للحزم التي تتطلب أو تعزز أو توصي أو تقترح أو تكمل أي من <القدرات>.
تحديد المجموعة الناتجة فقط للحزم التي تتعارض مع أي من <القدرات>.
تحديد المجموعة الناتجة فقط للحزم التي تعزز أي من <القدرات>. استخدم --whatdepends إذا أردت إدراج جميع الحزم المعتمدة.
تحديد المجموعة الناتجة فقط للحزم التي تجعل أي من <القدرات> قديماً.
يقتصر المجموعة الناتجة فقط على الحزم التي توفر أيًا من <القدرات>.
يقتصر المجموعة الناتجة فقط على الحزم التي توصي بأي من <القدرات>. استخدم --whatdepends إذا أردت سرد جميع الحزم المعتمدة.
يقتصر المجموعة الناتجة فقط على الحزم التي تتطلب أيًا من <القدرات>. استخدم --whatdepends إذا أردت سرد جميع الحزم المعتمدة.
يقتصر المجموعة الناتجة فقط على الحزم التي تقترح أيًا من <القدرات>. استخدم --whatdepends إذا أردت سرد جميع الحزم المعتمدة.
يقتصر المجموعة الناتجة فقط على الحزم التي تكمل أيًا من <القدرات>. استخدم --whatdepends إذا أردت سرد جميع الحزم المعتمدة.
هذا الخيار قابل للتكديس مع --whatrequires أو --whatdepends فقط. بالإضافة إلى ذلك، يضيف جميع الحزم التي تتطلب ميزات الحزمة إلى المجموعة الناتجة (يُستخدم كمبدئي).
هذا الخيار قابل للتكديس مع --whatrequires أو --whatdepends فقط. يقتصر المجموعة الناتجة فقط على الحزم التي تتطلب <قدرة> المحددة بواسطة --whatrequires.
يعمل على RPM المصدر المقابل.

خيارات الاستعلام

يضبط المعلومات المعروضة عن كل حزمة.

ما يلي حصري متبادل، أي يمكن تحديد واحد على الأكثر. إذا لم يُعطَ خيار استعلام، تُعرض الحزم المتطابقة بترميز NEVRA القياسي.

يعرض معلومات مفصلة عن الحزمة.
يعرض قائمة الملفات في الحزمة.
يعرض اسم RPM مصدر الحزمة.
اطبع سجلات تغييرات الحزمة.
تعرض القدرات التي يتعارض معها الحزمة. مثل --qf "%{conflicts}.
اعرض الإمكانيات التي تعتمد عليها الحزمة، أو تعززها، أو توصي بها، أو تقترحها، أو تكملها.
تعرض القدرات المحسّنة بواسطة الحزمة. مثل --qf ”%{enhances}“".
أظهر موقعًا يمكن تنزيل الحزمة منه.
تعرض القدرات التي أصبحت قديمة بسبب الحزمة. مثل --qf ”%{obsoletes}“.
تعرض القدرات المقدمة بواسطة الحزمة. مثل --qf ”%{enhances}“".
تعرض القدرات الموصى بها بواسطة الحزمة. مثل --qf ”%{enhances}“".
تعرض القدرات التي تعتمد عليها الحزمة مثل --qf ”%{obsoletes}“.
تعرض القدرات التي تعتمد عليها الحزمة لتشغيل برنامج نصي %pre . مثل --qf ”%{requires-pre}“.
تعرض القدرات التي تقترحها الحزمة. مثل --qf ”%{suggests}“.
تعرض القدرات التي توفرها الحزمة. مثل --qf ”%{supplements}“.
تعرض شجرة متكررة للحزم مع الإمكانات المحددة بواسطة إحدى الخيارات التكميلية التالية: --whatrequires، --requires، --conflicts، --enhances، --suggests، --provides، --supplements، --recommends.

أنشئ قائمة بجميع التبعيات المباشرة والحزم التي توفر تلك التبعيات للحزم المعطاة. تُظهر النتيجة أحدث المزودين فقط (والتي يمكن تغييرها باستخدام --verbose).
عرض الحزم التي تم العثور عليها بتنسيق الاسم-الإصدار-التحديث. مثل --qf ”%{name}-%{version}-%{release}“.
أظهر الحزم الموجودة بتنسيق الاسم-العصر:الإصدار-الإصدار.المعمارية. مماثل لـ --qf "%{name}-%{epoch}:%{version}-%{release}.%{arch}" (مبدئي).
عرض الحزم الموجودة في تنسيق epoch:name-version-release.architecture. مماثل لـ --qf "%{epoch}:%{name}-%{version}-%{release}.%{arch}"

تنسيق عرض مخصص. <format> هو السلسلة النصية المراد إخراجها لكل حزمة متطابقة. كل ظهور لـ %{<tag>} داخله يُستبدل بالسمة المقابلة للحزمة. يمكن عرض قائمة الوسوم المعروفة بتشغيل dnf repoquery --querytags.
الاستعلام عن الحزم بشكل تكراري. يجب استخدامه مع --whatrequires <REQ> (اختيارياً مع --alldeps، ولكن ليس مع --exactdeps) أو مع --requires <REQ> --resolve.
حل القدرات إلى الحزمة (الحزم) الأصلية.

أمثلة Repoquery

عرض NEVRAs لجميع الحزم المتاحة المطابقة لـ light*
عرض NEVRAs لجميع الحزم المتاحة المطابقة للاسم light* والهندسة noarch (يقبل فقط الوسائط في تنسيق "<name>.<arch>")
عرض متطلبات جميع حزم lighttpd
عرض الحزم التي توفر متطلبات حزم python
عرض rpm المصدر لحزمة lighttpd
عرض اسم الحزمة التي تملك الملف المعطى
عرض الاسم والهندسة والمستودع المحتوي لجميع حزم lighttpd
عرض جميع الحزم المتوفرة التي توفر "webserver"
عرض جميع الحزم المتوفرة التي توفر "webserver" ولكن فقط لمعمارية "i686"
عرض الحزم المكررة
عرض حزم المصدر التي تتطلب <provide> للبناء

أمر حزم المستودع

الأمر: repository-packages
الأسماء المستعارة التي لم تعد مستخدمة: repo-pkgs, repo-packages, repository-pkgs

يسمح أمر repository-packages للمستخدم بتشغيل الأوامر على جميع الحزم في المستودع المسمى <repoid>. ومع ذلك، يأخذ حل التبعيات في الاعتبار الحزم من جميع المستودعات المُمكّنة. تحد مواصفات <package-file-spec> و <package-spec> المرشحين إلى الحزم المطابقة لواحدة منها على الأقل.

يسرد الأمر الفرعي info معلومات الوصف والملخص عن الحزم اعتمادًا على علاقة الحزم بالمستودع. يطبع الأمر الفرعي list قوائم تلك الحزم فقط.

يتحقق بشكل غير تفاعلي من توفر تحديثات للحزم المحددة في المستودع. سيكون رمز خروج DNF 100 عند توفر تحديثات وستُطبع قائمة بالتحديثات.
سرد جميع الحزم ذات الصلة.
سرد الحزم المثبتة من المستودع.
سرد الحزم المتوفرة في المستودع ولكنها غير مثبتة حاليًا على النظام.
سرد الحزم المثبتة من المستودع غير المتوفرة في أي مستودع.
سرد الحزم في المستودع التي تجعل الحزم المثبتة على النظام مهملة.
سرد الحزم المضافة حديثًا إلى المستودع.
سرد الحزم في المستودع التي ترقي الحزم المثبتة على النظام.
تثبيت الحزم المطابقة لـ <مواصفات-الحزمة> من المستودع. إذا لم تُحدد <مواصفات-الحزمة> على الإطلاق، تثبيت جميع الحزم من المستودع.
سرد جميع الحزم ذات الصلة.
سرد الحزم المثبتة من المستودع.
سرد الحزم المتوفرة في المستودع ولكنها غير مثبتة حاليًا على النظام.
سرد الحزم المثبتة من المستودع غير المتوفرة في أي مستودع.
سرد الحزم في المستودع التي تجعل الحزم المثبتة على النظام مهملة.
سرد الحزم المضافة حديثًا إلى المستودع.
سرد الحزم في المستودع التي ترقي الحزم المثبتة على النظام.
إعادة تثبيت جميع تلك الحزم المتوفرة في المستودع.
شغّل الأمر الفرعي reinstall-old. إذا فشل، شغّل الأمر الفرعي move-to.
أعد تثبيت جميع الحزم التي ثُبّتت من المستودع والمتوفرة في المستودع في الوقت نفسه.
أزل جميع الحزم المثبتة من المستودع مع أي حزم تعتمد على الحزم الجاري إزالتها. إذا كان clean_requirements_on_remove مفعّلاً (المبدئي)، أزل أيضًا أي تبعيات لم تعد مطلوبة.
اختر جميع الحزم المثبتة من المستودع. رقّ أو اخفض أو احتفظ بتلك المتوفرة في مستودع آخر لمطابقة أحدث إصدار متوفر هناك، وأزل الباقي مع أي حزم تعتمد على الحزم الجاري إزالتها. إذا كان clean_requirements_on_remove مفعّلاً (المبدئي)، أزل أيضًا أي تبعيات لم تعد مطلوبة.
اختر جميع الحزم المثبتة من المستودع. أعد تثبيت تلك المتوفرة في مستودع آخر، وأزل الباقي مع أي حزم تعتمد على الحزم الجاري إزالتها. إذا كان clean_requirements_on_remove مفعّلاً (المبدئي)، أزل أيضًا أي تبعيات لم تعد مطلوبة.
حدّث جميع الحزم إلى أعلى إصدار قابل للحل متوفر في المستودع. عند تحديد الإصدارات في <مواصفات-الحزمة>، حدّث إلى هذه الإصدارات.
اسم مستعار مهمَل للأمر الفرعي upgrade.

أمر البحث

الأمر: search
الأسماء المستعارة: se

ابحث في بيانات الحزم الوصفية عن كلمات مفتاحية. تُطابَق الكلمات المفتاحية كسلاسل فرعية غير حساسة لحالة الأحرف، مع دعم الأحرف البديلة. مبدئيًا، يسرد الحزم التي تطابق جميع المفاتيح المطلوبة (عملية AND). تُبحث المفاتيح في أسماء الحزم وملخصاتها. إذا استُخدم الخيار --all، يسرد الحزم التي تطابق مفتاحًا واحدًا على الأقل (عملية OR). بالإضافة إلى ذلك، تُبحث المفاتيح في أوصاف الحزم وعناوين URL. يُرتّب الناتج من الأكثر صلة إلى الأقل.

هذا الأمر لا يفرض مزامنة البيانات الوصفية منتهية الصلاحية افتراضيًا. انظر أيضًا مزامنة البيانات الوصفية.

أمر الصدفة

الأمر: shell
الأسماء المستعارة: sh

افتح شل تفاعلي لإجراء أوامر متعددة أثناء تنفيذ واحد لـ DNF. يمكن إصدار هذه الأوامر يدويًا أو تمريرها إلى DNF من ملف. الأوامر مشابهة إلى حد كبير لخيارات سطر أوامر DNF العادية. هناك بعض الأوامر الإضافية الموثقة أدناه.
اضبط خيار تهيئة إلى قيمة مطلوبة. إذا لم تُعطَ قيمة، فإنه يطبع القيمة الحالية.

  • list: اسرد المستودعات وحالتها
  • enable: فعّل المستودع
  • disable: عطّل المستودع

  • list: حل واسرد محتوى المعاملة
  • reset: أعد ضبط المعاملة
  • run: حل وشغّل المعاملة


لاحظ أن جميع الحزم المحلية يجب استخدامها في أول أمر فرعي لمعاملة الشل (مثل install /tmp/nodejs-1-1.x86_64.rpm /tmp/acpi-1-1.noarch.rpm) وإلا سيحدث خطأ. يجب أيضًا تنفيذ أي عمليات وحدة disable وenable وreset (مثل module enable nodejs) قبل استخدام أي أمر فرعي آخر لمعاملة الشل.


أمر المبادلة

الأمر: swap

dnf [options] swap <remove-spec> <install-spec>

أزل remove-spec وقم بتثبيت install-spec في معاملة واحدة. يمكن أن يكون كل <spec> إما <package-spec>، الذي يحدد حزمة مباشرة، أو @<group-spec>، الذي يحدد مجموعة (بيئة) تحتوي عليها. يتم توفير حل النزاعات آليًا في DNF بواسطة الخيار --allowerasing الذي يوفر وظيفة أمر المبادلة آليًا.


أمر معلومات التحديث

الأمر: updateinfo
الأسماء المستعارة: upif
الأسماء المستعارة التي لم تعد مستخدمة: list-updateinfo، list-security، list-sec، info-updateinfo، info-security، info-sec، summary-updateinfo

اعرض معلومات عن إشعارات التحديث.

اعتمادًا على نوع المخرجات، يعرض DNF أعداد أنواع التنبيهات فقط (محذوفة أو --summary)، أو قائمة التنبيهات (--list)، أو معلومات مفصلة (--info). يُوسّع الخيار -v المخرجات. عند استخدامه مع --info، تصبح المعلومات أكثر تفصيلاً. عند استخدامه مع --list، يُضاف عمود إضافي بتاريخ آخر تحديث للتنبيه.

يُحدد <availability> ما إذا كانت التنبيهات حول الإصدارات الأحدث من الحزم المثبتة (محذوفة أو --available)، أو التنبيهات حول الإصدارات المتساوية والأقدم من الحزم المثبتة (--installed)، أو التنبيهات حول الإصدارات الأحدث من تلك الحزم المثبتة التي يتوفر لها إصدار أحدث (--updates)، أو التنبيهات حول أي إصدارات من الحزم المثبتة (--all) تؤخذ في الاعتبار. في معظم الأحيان، يُظهر --available و --updates نفس المخرجات. تختلف المخرجات فقط في الحالات التي يشير فيها تنبيه إلى إصدار أحدث ولكن لا يوجد مستودع مُمكّن يحتوي على أي إصدار أحدث.

لاحظ أن --available يأخذ في الاعتبار فقط أحدث الإصدارات المثبتة من الحزم. في حالة حزم النواة (عندما يمكن تثبيت إصدارات متعددة في وقت واحد)، تُضاف أيضًا حزم الإصدار الحالي قيد التشغيل من النواة.

لطباعة التنبيهات التي تشير إلى CVE أو bugzilla فقط، استخدم خيارات --with-cve أو --with-bz. عند استخدام هذه المفاتيح، يتغير أيضًا مخرجات --list - يُطبع معرف CVE أو bugzilla بدلاً من معرف التنبيه.

إذا تم تقديمه ولم يتطابق أي من المعرف أو النوع (bugfix أو enhancement أو security/sec) أو اسم حزمة تنبيه مع <spec>، لا يؤخذ التنبيه في الاعتبار. المطابقة حساسة لحالة الأحرف، وفي حالة معرفات التنبيه وأسماء الحزم، يُدعم استخدام أحرف البدل (globbing).

يتأثر مخرجات الخيار --summary بخيار التهيئة autocheck_running_kernel <#autocheck-running-kernel-label>.


أمر الترقية

الأمر: upgrade
الأسماء المستعارة: up
الأسماء المستعارة التي لم تعد مستخدمة:  update، upgrade-to، update-to، localupdate

يُحدّث كل حزمة إلى أحدث إصدار متوفر وقابل للحل.
يُحدّث كل حزمة محددة إلى أحدث إصدار متوفر. يُحدّث التبعيات حسب الضرورة. عند تحديد إصدارات في <مواصفات-الحزمة>، يُحدّث إلى هذه الإصدارات.
اسم مستعار لأمر dnf module update.

إذا كان خيار التهيئة الرئيسي obsoletes صحيحًا أو كانت العلامة --obsoletes موجودة، سيتضمن dnf حزم الإهمال (obsoletes) في حساباته. لمزيد من المعلومات، راجع obsoletes <#obsoletes-conf-option-label>.

انظر أيضًا سياسة استبدال ملفات التهيئة.

أمر الترقية الدنيا

الأمر: upgrade-minimal
الأسماء المستعارة: up-min
الأسماء المستعارة التي لم تعد تستخدم: B، update-minimal

يُحدّث كل حزمة إلى أقرب إصدار متوفر يُوفّر إصلاحًا لخلل أو تحسينًا أو إصلاحًا لمشكلة أمنية (أمان).
يُحدّث كل حزمة محددة إلى أقرب إصدار متاح يوفر إصلاحًا للخلل أو تحسينًا أو إصلاحًا لمشكلة أمنية (أمن). يُحدّث التبعيات حسب الضرورة.

تحديد الحزم

تأخذ العديد من الأوامر معامل <package-spec> يحدد حزمة للعملية. يُطابق معامل <package-spec> مع NEVRAs الحزمة، وما توفره (provides) وما توفره الملفات.

تشبه <package-file-spec> بـ <package-spec>، باستثناء أنه لا تُجرى مطابقة للمزودات. ولذلك، تُطابق <package-file-spec> فقط مقابل NEVRAs ومزودات الملفات.

تُطابق <package-name-spec> مقابل NEVRAs فقط.

أنماط المطابقة (Globs)

يدعم تحديد الحزمة نفس مطابقة أنماط glob التي تدعمها الصدفة، وفي جميع الحزم الثلاث المذكورة أعلاه يطابقها (NEVRAs، والمزوّدات، ومزوّدات الملفات).

الأنماط التالية مدعومة:

*
يطابق أي عدد من المحارف.
?
يطابق أي محرف مفرد.
[]
يطابق أي واحد من المحارف المحاطة. زوج من المحارف يفصل بينهما شرطة يشير إلى تعبير نطاق؛ يتم مطابقة أي محرف يقع بين هذين المحرفين، بما في ذلك هما. إذا كان المحرف الأول الذي يلي [ هو ! أو ^ فسيتم مطابقة أي محرف غير محاط.

ملاحظة: الأقواس المعقوفة ({}) غير مدعومة. لا يزال بإمكانك استخدامها في الصدف التي تدعمها والسماح للصدفة بالتوسيع، ولكن إذا تم اقتباسها أو الهروب منها، فلن يقوم dnf بتوسيعها.

مطابقة NEVRA

عند المطابقة ضد NEVRAs، تُدعم المطابقة الجزئية. يحاول DNF مطابقة المواصفات ضد القائمة التالية من نماذج NEVRA (بترتيب تنازلي للأولوية):

  • name-[epoch:]version-release.arch
  • name.arch
  • name
  • name-[epoch:]version-release
  • name-[epoch:]version

لاحظ أن name يمكن أن يحتوي عمومًا على شرطات (مثل package-with-dashes).

يُستخدم النموذج الأول الذي يطابق أي حزم ولا يتم تجربة النماذج المتبقية. إذا لم يطابق أي من النماذج أي حزم، يتم إجراء محاولة لمطابقة <package-spec> مقابل NEVRAs الحزم الكاملة. هذا ذو صلة فقط إذا كانت الأنماط العامة (globs) موجودة في <package-spec>.

تطابق <package-spec> الـ NEVRAs بنفس الطريقة التي تفعلها <package-name-spec>، ولكن في حالة فشل مطابقة NEVRAs، فإنها تحاول المطابقة مقابل المزودات ومزودات الملفات للحزم أيضًا.

يمكنك تحديد أنماط المطابقة (globs) كجزء من أي من مكونات NEVRA الخمسة. يمكنك أيضًا تحديد نمط مطابقة لمطابقة مكونات NEVRA المتعددة (بمعنى آخر، للمطابقة عبر فواصل NEVRA). ومع ذلك، في هذه الحالة، ستحتاج إلى كتابة المواصفة للمطابقة مقابل NEVRAs الحزمة الكاملة، حيث لا يمكن تقسيم هذه المواصفة إلى نماذج NEVRA.

تحديد مطابقة NEVRA بشكل صريح

بعض الأوامر (autoremove، install، remove و repoquery) لها أيضًا أسماء مستعارة مع لواحق -n، -na و -nevra تسمح بتحديد كيفية تحليل الوسائط بشكل صريح:

  • الأمر install-n يطابق فقط ضد name.
  • الأمر install-na يطابق فقط ضد name.arch.
  • الأمر install-nevra يطابق فقط ضد name-[epoch:]version-release.arch.

تحديد المزوّدات

تعني <provide-spec> في أوصاف الأوامر أن الأمر يعمل على الحزم التي توفر المواصفات المعطاة. يمكن أن يكون هذا إما تزويدًا صريحًا، أو تزويدًا ضمنيًا (أي اسم الحزمة) أو تزويد ملف. الاختيار حساس لحالة الأحرف ويدعم المطابقة بالأنماط (globbing).

تحديد ما يوفره الملف (File Provides)

إذا بدأت المواصفات بـ / أو */، فإنها تُعتبر مزوّد ملف محتمل.

تحديد المجموعات

يسمح <group-spec> باختيار مجموعات (بيئية) التي يجب أن تعمل عليها عملية معينة. وهي سلسلة غير حساسة لحالة الأحرف (تدعم أحرف البدل) تُطابق مع معرف المجموعة واسمها القانوني واسمها المترجم إلى الإعدادات المحلية الحالية LC_MESSAGES (إن أمكن).

تحديد الوحدات

تسمح <module-spec> للمرء باختيار الوحدات أو التشكيلات التي يجب أن تعمل عليها عملية معينة.

تكون بالصيغة NAME:STREAM:VERSION:CONTEXT:ARCH/PROFILE والأشكال الجزئية المدعومة هي التالية:

  • الاسم
  • NAME:STREAM
  • NAME:STREAM:VERSION
  • NAME:STREAM:VERSION:CONTEXT
  • جميع التركيبات أعلاه مع ::ARCH (مثل NAME::ARCH)
  • NAME:STREAM:VERSION:CONTEXT:ARCH
  • جميع التركيبات أعلاه مع /PROFILE (مثل NAME/PROFILE)

في حال عدم تحديد التدفق، يُستخدم التدفق المُمكّن أو المبدئي، بهذا الترتيب. في حال عدم تحديد الملف الشخصي، يُستخدم ملف النظام المبدئي أو ملف 'default'.

تحديد المعاملات

يمكن أن تكون <transaction-spec> بأحد عدة أشكال. إذا كانت عددًا صحيحًا، فإنها تحدد معرف المعاملة. تحديد last هو نفسه تحديد معرف أحدث معاملة. الشكل الأخير هو last-<offset>، حيث <offset> عدد صحيح موجب. يحدد المعاملة رقم (الإزاحة) التي تسبق أحدث معاملة.

ترشيح الحزم

تصفية الحزم تُخرج الحزم من مجموعة الحزم المتاحة، مما يجعلها غير مرئية لمعظم أوامر dnf. لا يمكن استخدامها في معاملة. يمكن تصفية الحزم إما عن طريق تصفية الاستبعاد أو التصفية المعيارية.

تصفية الاستبعاد

تصفية الاستبعاد هي آلية يستخدمها مستخدم أو إضافة DNF لتعديل مجموعة الحزم المتاحة. يمكن تعديل تصفية الاستبعاد إما بواسطة خيارات التهيئة includepkgs <#include-label> أو excludepkgs <#exclude-label> في ملفات التهيئة <#conf-ref-label>. يمكن استخدام خيار سطر الأوامر --disableexcludes لتجاوز الاستبعادات من ملفات التهيئة. بالإضافة إلى الاستبعادات التي يهيئها المستخدم، يمكن للإضافات أيضًا توسيع مجموعة الحزم المستبعدة. لتعطيل الاستبعادات من إضافة DNF يمكنك استخدام خيار سطر الأوامر --disableplugin.

لتعطيل جميع الاستبعادات مثلاً لأمر التثبيت يمكنك استخدام التركيبة التالية من خيارات سطر الأوامر:

dnf --disableexcludes=all --disableplugin="*" install bash

التصفية المعيارية

يرجى الاطلاع على وثائق المعيارية <#modularity-label> للحصول على تفاصيل حول كيفية عمل التصفية المعيارية.

مع الوحدات (modularity)، تُضمن فقط حزم RPM من تدفقات الوحدات active (النشطة) في مجموعة الحزم المتاحة. تُستبعد حزم RPM من تدفقات الوحدات inactive (غير النشطة)، وكذلك الحزم غير البرمجية التي لها نفس الاسم أو تقدم نفس ما تقدمه حزمة من تدفق وحدة نشط. لا يُطبق الترشيح الموديولي على الحزم المضافة من سطر الأوامر، أو الحزم المثبتة، أو الحزم من المستودعات التي تحتوي على module_hotfixes=true في ملف .repo الخاص بها.

لا يُنصح بتعطيل التصفية النمطية (modular filtering)، لأن ذلك قد يؤدي إلى جعل النظام في حالة معطوبة. لتعطيل التصفية النمطية لمستودع معين، حدد module_hotfixes=true في ملف .repo أو استخدم --setopt=<repo_id>.module_hotfixes=true.

لاكتشاف الوحدة التي تحتوي على حزمة مستبعدة استخدم dnf module provides.

مزامنة البيانات الوصفية

يعتمد التشغيل الصحيح لـ DNF على الوصول إلى بيانات محدثة من جميع المستودعات المُمكّنة، لكن الاتصال بالمرايا البعيدة في كل عملية يُبطئه بشكل كبير ويكلف نطاقًا تردديًا لكل من العميل ومزود المستودع. يستخدم DNF خيار تهيئة المستودع metadata_expire <#metadata-expire-label> (انظر dnf.conf(5)) لتحديد ما إذا كانت نسخة محلية معينة من بيانات المستودع بحاجة إلى إعادة مزامنة. من الضروري أن يضبط مزودو المستودعات الخيار جيدًا، أي إلى قيمة تضمن أنه إذا كانت بيانات وصفية معينة متاحة في الوقت T على الخادم، فإن جميع الحزم التي تشير إليها ستظل متاحة للتنزيل من الخادم في الوقت T + metadata_expire.

لتقليل حمل النطاق الترددي بشكل أكبر، بعض الأوامر التي لا يكون فيها وجود بيانات وصفية محدثة أمرًا بالغ الأهمية (مثل الأمر list) لا تتحقق مما إذا كان المستودع منتهي الصلاحية، وكلما كان أي إصدار منه متاحًا محليًا لحساب المستخدم، يُستخدم. للاستخدام غير الجذري، انظر أيضًا إلى المفتاح --cacheonly. لاحظ أنه في جميع الحالات يمكن للمستخدم فرض مزامنة جميع المستودعات المُمكّنة باستخدام المفتاح --refresh.

سياسة استبدال ملفات التكوين

قد تستبدل الحزم المُحدّثة ملفات التهيئة القديمة المُعدّلة بأخرى جديدة أو تحتفظ بالملفات الأقدم. لا يتم استبدال أي من الملفات فعليًا. للملفات المتعارضة، يُضيف RPM لاحقة إضافية إلى الاسم الأصلي. أي ملف يجب أن يحتفظ بالاسم الحقيقي بعد المعاملة لا يتحكم فيه مدير الحزم بل يُحدد بواسطة كل حزمة نفسها، وفقًا لإرشادات التعبئة.

الملفات

ملفات الخبيئة
/var/cache/dnf
الضبط الرئيس
/etc/dnf/dnf.conf
المستودع
/etc/yum.repos.d/

انظر أيضًا


المؤلف

انظر AUTHORS في توزيعة مصدر DNF.

حقوق النسخ

2012-2020، Red Hat، مرخص بموجب GPLv2+

ترجمة

تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.

24 أكتوبر 2025 4.24.0