DNF5(8) dnf5 DNF5(8)

dnf5 - ابزار خط فرمان نسل جدید مدیر بسته‌های DNF

dnf5 <command> [options] [<args>...]

DNF5 https://github.com/rpm-software-management/dnf5 نسخه جدید DNF https://github.com/rpm-software-management/dnf است؛ یک مدیر بسته برای توزیع‌های لینوکس مبتنی بر RPM. این ابزار برای دستیابی به کارایی بهتر و کاهش وابستگی‌های خارجی به‌طور کامل با C++ بازنویسی شده است.

فهرست دستورات در دسترس در اینجا آمده است. برای جزئیات بیشتر به صفحه راهنمای مجزای هر دستور مراجعه کنید، مثلاً man dnf5 install.

مدیریت توصیه‌نامه‌ها و اعلان‌های امنیتی.
حذف بسته‌های غیرضروری.
بررسی پایگاه داده بسته‌ها برای یافتن مشکلات.
بررسی ارتقاهای موجود برای بسته‌ها.
حذف یا نامعتبرسازی داده‌های کش‌شده.
ارتقا یا تنزل بسته‌های نصب‌شده به آخرین نسخه موجود.
تنزل نسخه بسته‌ها.
دانلود بسته‌ها.
مدیریت محیط‌های comps.
مدیریت گروه‌های comps.
مدیریت تاریخچه تراکنش‌ها.
ارائه اطلاعات دقیق درباره بسته‌های نصب‌شده یا موجود.
نصب بسته‌ها.
فهرست کردن گروه‌های بسته‌های برگ.
فهرست کردن بسته‌های نصب‌شده یا موجود.
تولید کش متاداده.
تغییر دلیل نصب یک بسته.
مدیریت ماژول‌ها.
مدیریت تراکنش‌های آفلاین.
یافتن بسته‌ای که مقدار داده‌شده را فراهم می‌کند.
نصب مجدد بسته‌ها.
حذف بسته‌ها.
اجرای مجدد تراکنش‌های ذخیره‌شده.
مدیریت مخازن.
جستجوی بسته‌ها در مخازن.
جستجوی بسته‌ها با استفاده از کلمات کلیدی.
حذف یک نرم‌افزار و نصب نرم‌افزاری دیگر در یک تراکنش واحد.
ارتقای سیستم به یک نسخه اصلی (Major Release) جدید.
ارتقای بسته‌ها.
محافظت از بسته‌ها در برابر به‌روزرسانی به نسخه‌های جدیدتر.

فهرست دستورات در دسترس به‌صورت افزونه در اینجا آمده است. این دستورات پس از نصب بسته dnf5-plugins در دسترس خواهند بود.

رابط خط فرمان جایگزین برای dnf upgrade که برای اجرای خودکار و منظم از طریق تایمرهای systemd، کرون‌جاب‌ها و موارد مشابه مناسب است.
نصب وابستگی‌های مفقود برای ساخت یک بسته RPM.
نمایش گزارش تغییرات (Changelog) بسته‌ها.
مدیریت پیکربندی اصلی، پیکربندی مخازن و متغیرها.
مدیریت مخازن Copr (مخازن الحاقی ارائه‌شده توسط کاربران، جامعه کاربری یا شخص ثالث).
تعیین اینکه آیا سیستم باید بازراه‌اندازی شود یا خیر.
نمایش فهرستی از وابستگی‌های حل‌نشده برای مخازن.
همگام‌سازی بسته‌ها و متاداده‌های یک مخزن دوردست DNF با یک دایرکتوری محلی.

گزینه‌های زیر در زمینه عمومی برای هر دستور dnf5 قابل اعمال هستند:

پاسخ «نه» خودکار به تمام پرسش‌ها.
اجازه جایگزینی خودکار بسته‌ها از توزیع‌کنندگان مختلف برای ارتقا یا تنزل نسخه RPM.
امتحان کردن بهترین نسخه‌های موجود بسته‌ها در تراکنش‌ها.

به‌طور مشخص در طول dnf upgrade، که به‌طور پیش‌فرض از به‌روزرسانی‌هایی که به دلایل وابستگی قابل نصب نیستند صرف‌نظر می‌کند، این سوییچ DNF5 را وادار می‌کند تا فقط جدیدترین بسته‌ها را در نظر بگیرد. هنگام مواجهه با بسته‌های دارای وابستگی‌های ناسازگار، DNF5 با ذکر دلیل عدم امکان نصب آخرین نسخه، متوقف خواهد شد.

توجه داشته باشید که استفاده از جدیدترین نسخه موجود فقط برای بسته‌هایی که مستقیماً درخواست شده‌اند (مثلاً به عنوان آرگومان خط فرمان) تضمین می‌شود، و حل‌کننده ممکن است برای برآورده کردن پیش‌نیازها از نسخه‌های قدیمی‌تر وابستگی‌ها استفاده کند.

استفاده صرف از داده‌های کش‌شده برای کار با بسته‌ها و متاداده مخزن.
کش به‌روزرسانی نخواهد شد، حتی اگر منقضی شده باشد.
افزودن یک یادداشت به تاریخچه تراکنش‌ها.
تعیین محل فایل پیکربندی.
تخلیه (Dump) داده‌های اضافی از حل‌کننده برای مقاصد اشکال‌زدایی.
داده‌ها در ./debugdata ذخیره می‌شوند.
غیرفعال کردن موقت افزونه‌های کتابخانه libdnf5 مشخص‌شده برای دستور فعلی DNF5.
این گزینه از نوع فهرستی است و می‌تواند چندین بار مشخص شود.
مقادیر مجاز نام‌ها یا الگوی گلوب نام‌ها هستند.
غیرفعال کردن موقت مخازن فعال برای اجرای دستور فعلی DNF5.
این گزینه از نوع فهرستی است و می‌تواند چندین بار مشخص شود.
مقادیر مجاز شناسه‌ها یا الگوی گلوب شناسه‌ها هستند.
چاپ مقادیر پیکربندی اصلی در خروجی استاندارد.
چاپ مقادیر پیکربندی مخزن در خروجی استاندارد.
این گزینه از نوع فهرستی است و می‌تواند چندین بار مشخص شود.
مقادیر مجاز شناسه‌ها یا الگوی گلوب شناسه‌ها هستند.
چاپ مقادیر متغیرها در خروجی استاندارد.
فعال کردن افزونه‌های کتابخانه libdnf5 مشخص‌شده برای اجرای دستور فعلی DNF5.
این گزینه از نوع فهرستی است و می‌تواند چندین بار مشخص شود.
مقادیر مجاز نام‌ها یا الگوی گلوب نام‌ها هستند.
فعال کردن موقت مخازن اضافی برای اجرای دستور فعلی DNF5.
این گزینه از نوع فهرستی است و می‌تواند چندین بار مشخص شود.
مقادیر مجاز شناسه‌ها یا الگوی گلوب شناسه‌ها هستند.
تحمیل استفاده از یک معماری مشخص.
برای اطلاعات بیشتر <#forcearch-misc-ref-label> dnf5-forcearch(7) را ببینید.
نمایش راهنما.
تنظیم مسیر installroot.
مسیر مطلق الزامی است.
برای اطلاعات بیشتر <#installroot-misc-ref-label> dnf5-installroot(7) را ببینید.
عدم اجازه جایگزینی خودکار بسته‌ها از توزیع‌کنندگان مختلف برای ارتقا یا تنزل نسخه RPM.
رفتار این گزینه می‌تواند با پیکربندی خط‌مشی تغییر توزیع‌کننده دقیق‌تر تنظیم شود.
برای اطلاعات بیشتر dnf5.conf-vendorpolicy(5) را ببینید.
محدود نکردن تراکنش صرفاً به بهترین گزینه‌ها.
عدم نصب هرگونه فایلی که به عنوان مستندات علامت‌گذاری شده است (شامل صفحات راهنما و اسناد texinfo).
این گزینه فلگ RPMTRANS_FLAG_NODOCS را تنظیم می‌کند.
صرف‌نظر از بررسی امضاهای OpenPGP روی بسته‌ها (در صورتی که سیاست RPM اجازه دهد).
غیرفعال کردن تمام افزونه‌های libdnf5.
در ترکیب با یک دستور غیرتعاملی، فقط محتوای مرتبط را نشان می‌دهد. پیام‌های اطلاع‌رسانی درباره وضعیت فعلی یا عملیات‌های DNF5 را غیرفعال می‌کند.
اجبار به تازه‌سازی متاداده قبل از اجرای دستور.
کنترل استفاده از رنگ در خروجی ترمینال. مقادیر معتبر عبارتند از always، never و auto (پیش‌فرض).
فعال کردن صرف مخازن مشخص‌شده.
این گزینه از نوع فهرستی است و می‌تواند چندین بار مشخص شود.
مقادیر مجاز شناسه‌ها یا الگوی گلوب شناسه‌ها هستند.
مشخص کردن یک مخزن برای افزودن به مخازن صرفاً برای این اجرا. می‌تواند چندین بار استفاده شود.

شناسه مخزن جدید توسط REPO_ID و آدرس پایه آن توسط REPO_PATH مشخص می‌شود. متغیرها در هر دو مقدار قبل از ایجاد مخزن جایگزین می‌شوند.

پیکربندی مخزن جدید را می‌توان با استفاده از گزینه‌های --setopt=REPO_ID.option=value تنظیم کرد.

اگر می‌خواهید فقط بسته‌های این مخزن در دسترس باشند، این گزینه را با سوییچ --repo=REPO_ID ترکیب کنید.

بازنویسی مقدار نسخه انتشار توزیع (متغیر releasever) در فایل‌های پیکربندی. این مقدار می‌تواند بر مسیرهای کش، مقادیر در فایل‌های پیکربندی و نشانی‌های mirrorlist تأثیر بگذارد. هر زمان که releasever تنظیم شود، releasever_major و releasever_minor نیز با تفکیک releasever در محل اولین . مقداردهی می‌شوند.
بازنویسی متغیر releasever_major، که معمولاً به‌طور خودکار شناسایی می‌شود یا از بخش قبل از اولین . در $releasever گرفته می‌شود. روی مقدار متغیر releasever تأثیری نمی‌گذارد. باید بعد از --releasever در خط فرمان مشخص شود، در غیر این صورت بخش اصلی --releasever اولویت خواهد داشت.
بازنویسی متغیر releasever_minor، که معمولاً به‌طور خودکار شناسایی می‌شود یا از بخش بعد از اولین . در $releasever گرفته می‌شود. روی مقدار متغیر releasever تأثیری نمی‌گذارد. باید بعد از --releasever در خط فرمان مشخص شود، در غیر این صورت بخش فرعی --releasever اولویت خواهد داشت.
بازنویسی یک گزینه پیکربندی از فایل پیکربندی.
پارامتر REPO_ID برای بازنویسی گزینه‌های مربوط به مخازن به کار می‌رود.

مقادیر گزینه‌هایی مانند excludepkgs، includepkgs، installonlypkgs و tsflags به مقدار اولیه اضافه می‌شوند و آن را بازنویسی نمی‌کنند. با این حال، تعیین یک مقدار خالی (مثلاً --setopt=tsflags=) این گزینه را پاک خواهد کرد.

بازنویسی مقدار یک متغیر DNF5، مانند arch، releasever و غیره.
صرف‌نظر کردن از دریافت قفل‌های فایل، مانند قفل روی مخزن سیستم.
برای اطلاعات بیشتر skip_system_repo_lock <#skip-system-repo-lock-options-label> را ببینید.
نمایش بسته‌های برگ تازه‌نصب‌شده و بسته‌هایی که پس از یک تراکنش به برگ تبدیل شده‌اند.
استفاده از فایل‌های پیکربندی و تعاریف متغیرها از سیستم میزبان به‌جای installroot.
برای اطلاعات بیشتر <#installroot-misc-ref-label> dnf5-installroot(7) را ببینید.
نمایش نسخه برنامه dnf5 و کتابخانه libdnf5، همراه با افزونه‌های بارگذاری‌شده و نسخه‌های آن‌ها، و سپس خروج.
پاسخ «بله» خودکار به تمام پرسش‌ها.
مستثنی کردن بسته‌های مشخص‌شده در آرگومان‌های PACKAGE-SPEC-N از تراکنش.
این یک گزینه فهرستی است.

--
توقف پردازش گزینه‌های خط فرمان. تمام آرگومان‌های باقی‌مانده به عنوان آرگومان‌های مکانی در نظر گرفته می‌شوند.

عملکرد صحیح DNF5 به دسترسی به داده‌های به‌روز از تمام مخازن فعال وابسته است، اما ارتباط با سرورهای آینه‌ای دوردست در هر عملیات به‌طور قابل‌توجهی سرعت آن را کاهش می‌دهد و برای کلاینت و ارائه‌دهنده مخزن هزینه پهنای باند دارد. گزینه پیکربندی مخزن metadata_expire توسط DNF5 استفاده می‌شود تا تعیین کند آیا یک نسخه محلی مشخص از داده‌های مخزن باید مجدداً همگام‌سازی شود یا خیر. بسیار مهم است که ارائه‌دهندگان مخازن این گزینه را به درستی تنظیم کنند؛ مقداری که تضمین کند اگر متاداده مشخصی در زمان T روی سرور موجود بود، تمام بسته‌های مورد ارجاع آن تا زمان T + metadata_expire همچنان برای دانلود از سرور در دسترس باشند.

برای کاهش بیشتر بار پهنای باند، برخی از دستورات که داشتن متاداده به‌روز در آن‌ها حیاتی نیست (مانند دستور group list)، وضعیت انقضای مخزن را بررسی نمی‌کنند و هر نسخه‌ای از آن که به‌طور محلی در حساب کاربری کاربر در دسترس باشد استفاده خواهد شد.

برای اطلاعات بیشتر در مورد کش کردن متاداده و بسته‌ها به <#caching-misc-ref-label> dnf5-caching(7) مراجعه کنید.

بسته‌های به‌روزرسانی‌شده می‌توانند فایل‌های پیکربندی تغییریافته قدیمی را با فایل‌های جدید جایگزین کنند یا فایل‌های قدیمی‌تر را نگه دارند. هیچ‌یک از فایل‌ها در عمل جایگزین نمی‌شوند. برای فایل‌های دارای تداخل، RPM یک پسوند اضافی به نام اصلی اضافه می‌کند. اینکه کدام فایل پس از تراکنش نام اصلی را حفظ کند توسط مدیر بسته کنترل نمی‌شود، بلکه توسط خود هر بسته و طبق راهنمای بسته‌بندی مشخص می‌شود.

دستور dnf5 به‌طور کلی با کدهای خروج زیر به پایان می‌رسد:

0
عملیات با موفقیت انجام شد.
1
خطایی در حین پردازش دستور رخ داد.
2
خطایی هنگام تجزیه آرگومان‌ها رخ داد.

کدهای خروج دیگر ممکن است توسط خود دستور مشخص بازگردانده شوند؛ برای اطلاعات بیشتر به مستندات آن دستور مراجعه کنید.

/var/cache/libdnf5/
/etc/dnf/dnf.conf
/etc/yum.repos.d/
/var/lib/dnf/
/usr/lib/sysimage/libdnf5/

بازنویسی عرض ترمینال مورداستفاده برای رندر نوارهای پیشرفت و سایر داده‌های جدولی. مقدار باید یک عدد صحیح مثبت باشد. اگر تنظیم نشده باشد یا نامعتبر باشد، عرض از دستگاه ترمینال متصل به خروجی استاندارد تشخیص داده می‌شود. در صورت شکست در تشخیص، عرض ۸۰ ستون فرض خواهد شد.
بازنویسی تعاملی بودن ورودی/خروجی استاندارد متصل. مقدار را روی 0 تنظیم کنید تا فرض شود ورودی/خروجی به ترمینال تعاملی متصل نیست و DNF5 نباید سؤالی بپرسد. مقدار را روی 1 تنظیم کنید تا DNF5 حتی در صورت غیرتعاملی بودن ترمینال سؤال بپرسد. گزینه‌های --assumeno و --assumeyes را ببینید.
بازنویسی دایرکتوری حاوی افزونه‌های برنامه DNF5. برای غیرفعال کردن بارگذاری افزونه‌های برنامه، آن را روی یک رشته خالی تنظیم کنید.
بازنویسی دایرکتوری حاوی فایل‌های پیکربندی افزونه‌های libdnf5.
مشخص کردن یک برچسب زمانی بر حسب ثانیه از مبدأ زمان یونیکس (UNIX epoch). در صورت تنظیم، برچسب‌های زمانی تراکنش در پایگاه داده تاریخچه به‌جای زمان فعلی، روی زمان مشخص‌شده قرار می‌گیرند. علاوه بر این، بسته‌ها برای تضمین ترتیب تراکنش پایدار مرتب می‌شوند.

TEMP, TEMPDIR, TMP, TMPDIR

بازنویسی مسیر یک دایرکتوری برای فایل‌های موقت. دایرکتوری باید از قبل وجود داشته باشد. مقدار پیش‌فرض /tmp است.

dnf5-advisory(8), Advisory command <#advisory-command-ref-label>
dnf5-autoremove(8), Autoremove command <#autoremove-command-ref-label>
dnf5-check(8), Check command <#check-command-ref-label>
dnf5-check-upgrade(8), Check-Upgrade command <#check-upgrade-command-ref-label>
dnf5-clean(8), Clean command <#clean-command-ref-label>
dnf5-distro-sync(8), Distro-Sync command <#distro-sync-command-ref-label>
dnf5-downgrade(8), Downgrade command <#downgrade-command-ref-label>
dnf5-download(8), Download command <#download-command-ref-label>
dnf5-environment(8), Environment command <#environment-command-ref-label>
dnf5-group(8), Group command <#group-command-ref-label>
dnf5-history(8), History command, <#history-command-ref-label>
dnf5-info(8), Info command <#info-command-ref-label>
dnf5-install(8), Install command <#install-command-ref-label>
dnf5-leaves(8), Leaves command <#leaves-command-ref-label>
dnf5-list(8), List command <#list-command-ref-label>
dnf5-makecache(8), Makecache command <#makecache-command-ref-label>
dnf5-mark(8), Mark command <#mark-command-ref-label>
dnf5-module(8), Module command <#module-command-ref-label>
dnf5-offline(8), Offline command <#offline-command-ref-label>
dnf5-provides(8), Provides command <#provides-command-ref-label>
dnf5-reinstall(8), Reinstall command <#reinstall-command-ref-label>
dnf5-remove(8), Remove command <#remove-command-ref-label>
dnf5-repo(8), Repo command <#repo-command-ref-label>
dnf5-repoquery(8), Repoquery command <#repoquery-command-ref-label>
dnf5-search(8), Search command <#search-command-ref-label>
dnf5-swap(8), Swap command <#swap-command-ref-label>
dnf5-system-upgrade(8), System-Upgrade command <#system-upgrade-command-ref-label>
dnf5-upgrade(8), Upgrade command <#upgrade-command-ref-label>
dnf5-versionlock(8), Versionlock command <#versionlock-command-ref-label>
dnf5-automatic(8), Automatic command <#automatic-plugin-ref-label>
dnf5-builddep(8), Builddep command <#builddep-plugin-ref-label>
dnf5-changelog(8), Changelog command <#changelog-plugin-ref-label>
dnf5-config-manager(8), Config-manager command <#config-manager-plugin-ref-label>
dnf5-copr(8), Copr command <#copr-plugin-ref-label>
dnf5-needs-restarting(8), Needs-Restarting command <#needs-restarting-plugin-ref-label>
dnf5-repoclosure(8), Repoclosure command <#repoclosure-plugin-ref-label>
dnf5-repomanage(8), Repomanage command <#repomanage-plugin-ref-label>
dnf5-reposync(8), Reposync command <#reposync-plugin-ref-label>
libdnf5-actions(8), Actions plugin <#actions-plugin-ref-label>
libdnf5-expired-pgp-keys(8), Expired PGP keys plugin <#expired-pgp-keys-plugin-ref-label>
libdnf5-local(8), Local plugin <#local-plugin-ref-label>
dnf5.conf(5), DNF5 Configuration Reference <#dnf5-conf-label>
dnf5.conf-vendorpolicy(5), DNF5 Vendor Change Policy File Reference
dnf5-aliases(7), Aliases for command line arguments <#aliases-misc-ref-label>
dnf5-caching(7), Caching <#caching-misc-ref-label>
dnf5-comps(7), Comps groups and environments <#comps-misc-ref-label>
dnf5-filtering(7), Packages filtering, <#filtering-misc-ref-label>
dnf5-forcearch(7), Forcearch parameter <#forcearch-misc-ref-label>
dnf5-installroot(7), Installroot parameter <#installroot-misc-ref-label>
dnf5-modularity(7), Modularity overview, <#modularity-misc-ref-label>
dnf5-specs(7), Patterns specification <#specs-misc-ref-label>
dnf5-system-state(7), System state <#systemstate-misc-ref-label>
<https://github.com/rpm-software-management/dnf5>

AUTHORS.md را در توزیع کد منبع dnf5 ببینید.

مشارکت‌کنندگان در پروژه dnf5.

September 6, 2026