DNF5.CONF(5) dnf5 DNF5.CONF(5)

dnf5.conf - مرجع پیکربندی DNF5

DNF5 به‌طور پیش‌فرض از فایل پیکربندی سراسری در /etc/dnf/dnf.conf استفاده می‌کند.

فایل پیکربندی دارای قالب INI است که از اعلان بخش و گزینه‌های name=value در زیر هر یک و در خطوط جداگانه تشکیل شده است. دو نوع بخش در فایل‌های پیکربندی وجود دارد: اصلی (main) و مخزن (repository). بخش اصلی (main) همه گزینه‌های پیکربندی سراسری را تعریف می‌کند و باید تنها یکی باشد.

بخش‌های مخزن، پیکربندی را برای هر مخزن (دورست یا محلی) تعریف می‌کنند. نام بخش مخزن درون قلاب‌ها به‌عنوان شناسه مرجع مخزن (repo ID) عمل می‌کند و باید در میان فایل‌های پیکربندی یکتا باشد. نویسه‌های مجاز رشته شناسه مخزن عبارتند از حروف الفبای کوچک و بزرگ، ارقام، -، _، . و :. فایل پیکربندی حداقلی مخزن باید علاوه بر شناسه مخزن، از تعریف گزینه baseurl، metalink یا mirrorlist تشکیل شده باشد.

boolean

در صورت فعال بودن، DNF5 امکان تنزل بسته‌ها را هنگام حل وابستگی‌ها فراهم می‌کند.

پیش‌فرض: True.

boolean

در صورت غیرفعال بودن، DNF5 در حین ارتقا یا تنزل بسته‌های RPM به ارائه‌دهنده اصلی پایبند می‌ماند. با این حال، این اولویت را می‌توان با استفاده از سیاست‌های تغییر ارائه‌دهنده <#dnf5-vendor-change-policy-label> تنظیم دقیق کرد.

پیش‌فرض: True.

هشدار:

این گزینه در حال حاضر برای دستورات downgrade و distro-sync پشتیبانی نمی‌شود.
boolean

در صورت فعال بودن، DNF5 در مواردی که به‌طور معمول برای تایید از کاربر سوال می‌پرسد، پاسخ را No فرض می‌کند.

پیش‌فرض: False.

boolean

در صورت فعال بودن، DNF5 در مواردی که به‌طور معمول برای تایید از کاربر سوال می‌پرسد، پاسخ را Yes فرض می‌کند (همچنین defaultyes را ببینید).

پیش‌فرض: False.

boolean

اگر True باشد، به حل‌کننده دستور می‌دهد که بسته‌ای با بالاترین نسخه موجود را به کار گیرد یا با شکست مواجه شود. اگر False باشد، در صورتی که آخرین نسخه قابل نصب نباشد با شکست مواجه نمی‌شود و نسخه پایین‌تر را نصب می‌کند.

پیش‌فرض: True.

نکته:

به‌ویژه این گزینه می‌تواند توسط پیکربندی خاص هر توزیع بازنویسی شود. برای جزئیات بیشتر به دایرکتوری‌های پیکربندی تکمیلی (drop-in) مراجعه کنید.
string

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

پیش‌فرض کاربر معمولی: ~/.cache/libdnf5.

برای کاربر ارشد (superuser)، مقدار توسط گزینه system_cachedir بازنویسی می‌شود.

string

می‌تواند all، metadata یا none باشد.

اگر روی all تنظیم شود، DNF5 تماماً از حافظه پنهان سیستم اجرا خواهد شد، حافظه پنهان را به‌روزرسانی نخواهد کرد و حتی در صورت منقضی شدن حافظه پنهان سیستم از آن استفاده می‌کند.

اگر روی metadata تنظیم شود، DNF5 فقط متاداده را ذخیره (کَش) می‌کند.

پیش‌فرض: none.

نکته:

نکات API: باید پیش از ایجاد اشیاء مخزن تنظیم شود. افزونه‌ها باید این مقدار را در قلاب pre_config تنظیم کنند. تغییرات بعدی نادیده گرفته می‌شوند.
boolean

در صورت فعال بودن، DNF5 باید متاداده‌های مخازنی را که قدیمی‌تر از فایل پیکربندی متناظرشان هستند (معمولاً فایل dnf.conf و فایل foo.repo)، به‌طور خودکار منقضی کند.

پیش‌فرض: True.

نکته:

انقضای متاداده همچنین تحت تاثیر سن متاداده قرار می‌گیرد. همچنین ببینید:

metadata_expire.

boolean

در صورت فعال بودن، DNF5 وابستگی‌هایی را که در طول dnf remove دیگر استفاده نمی‌شوند حذف خواهد کرد. یک بسته تنها زمانی واجد شرایط حذف از طریق clean_requirements_on_remove می‌شود که از طریق DNF5 نصب شده باشد اما نه به درخواست صریح کاربر؛ یعنی به‌عنوان یک وابستگی به سیستم وارد شده باشد.

بسته‌های installonlypkgs هرگز به‌طور خودکار حذف نمی‌شوند.

پیش‌فرض: True.

string

مکانی که در آن فایل‌های اشکال‌زدایی libsolv در صورت فعال بودن توسط debug_solver ایجاد خواهند شد.

پیش‌فرض: ./debugdata.

boolean

در صورت فعال بودن، هنگام حل تراکنش فایل‌های اشکال‌زدایی libsolv ایجاد خواهند شد. این فایل‌های اشکال‌زدایی در دایرکتوری debugdir ایجاد می‌شوند.

پیش‌فرض: False.

boolean

در صورت فعال بودن، پاسخ پیش‌فرض به درخواست‌های تایید کاربر Yes خواهد بود. نباید با assumeyes که اصلاً سوالی نمی‌پرسد اشتباه گرفته شود.

پیش‌فرض: False.

string

هدایت بسته‌های بارگیری‌شده به دایرکتوری ارائه‌شده.

پیش‌فرض: <package repository cachedir>/packages

list

جلوگیری از نصب بسته‌ها به‌عنوان وابستگی‌های ضعیف (recommends یا supplements). بسته‌ها را می‌توان با نام یا یک الگو (glob) مشخص کرد و با کاما از هم جدا نمود.

پیش‌فرض: [].

boolean

در صورت فعال بودن، DNF5 وابستگی‌های ضعیف برآورده‌نشده (recommends یا supplements) بسته‌های نصب‌شده روی سیستم را به‌طور خودکار تشخیص می‌دهد. ارائه‌دهندگان این وابستگی‌های ضعیف دیگر توسط dnf به‌عنوان وابستگی ضعیف نصب نخواهند شد (البته اگر به‌عنوان وابستگی معمولی کشیده شوند همچنان نصب می‌شوند).

پیش‌فرض: true.

list

مستثنی کردن محیط‌ها (مشخص‌شده با یک شناسه یا الگو و جداشده با کاما) از تمام عملیات‌ها.

می‌تواند با استفاده از گزینه پیکربندی disable_excludes غیرفعال شود.

پیش‌فرض: [].

list

مستثنی کردن گروه‌ها (مشخص‌شده با یک شناسه یا الگو و جداشده با کاما) از تمام عملیات‌ها.

می‌تواند با استفاده از گزینه پیکربندی disable_excludes غیرفعال شود.

پیش‌فرض: [].

gpgcheck

به دلایل سازگاری، گزینه gpgcheck نیز پشتیبانی می‌شود، اما pkg_gpgcheck ارجح است. مفهوم gpgcheck توسط گزینه gpgcheck_policy کنترل می‌شود.

پیش‌فرض: مقدار pkg_gpgcheck.

legacy، full یا all

چگونگی گسترش گزینه gpgcheck را هنگام تنظیم صریح در یک بخش پیکربندی کنترل می‌کند.

تنظیم gpgcheck=1 فقط pkg_gpgcheck=1 را تنظیم می‌کند. این رفتار اصلی DNF را حفظ می‌کند.
تنظیم gpgcheck=1 هر دو گزینه pkg_gpgcheck=1 و repo_gpgcheck=1 را تنظیم می‌کند.
تنظیم gpgcheck=1 گزینه‌های pkg_gpgcheck=1، repo_gpgcheck=1 و localpkg_gpgcheck=1 را تنظیم می‌کند.

تنظیم صریح pkg_gpgcheck، repo_gpgcheck یا localpkg_gpgcheck در همان بخش پیکربندی، سیاست را برای آن گزینه خاص بازنویسی می‌کند.

این سیاست یک تنظیم سراسری است که در [main] تعریف شده و بر تمام بخش‌های مخزن که از gpgcheck استفاده می‌کنند تاثیر می‌گذارد.

پیش‌فرض: legacy.

list

فهرستی از موارد زیر: optional، default، mandatory یا conditional.

به DNF5 اعلام می‌کند که هنگام فراخوانی 'group install <group-spec>' یا 'install @<group-spec>' کدام نوع از بسته‌ها در گروه‌ها نصب خواهند شد.

پیش‌فرض: default, mandatory, conditional.

boolean

در صورت فعال بودن، RPM اجازه تلاش برای نصب بسته‌های ناسازگار با معماری پردازنده (CPU) را می‌دهد.

پیش‌فرض: False.

list

فهرستی از نام‌های ارائه‌شده (provides) بسته‌هایی که فقط باید همیشه نصب شوند و هرگز ارتقا داده نشوند. به‌ویژه هسته‌ها (kernel) در این دسته قرار می‌گیرند. این بسته‌ها هرگز توسط dnf autoremove حذف نمی‌شوند حتی اگر به‌عنوان وابستگی نصب شده باشند (برای جزئیات حذف خودکار به clean_requirements_on_remove مراجعه کنید). این گزینه مقادیر این فهرست را به فهرست پیش‌فرض installonlypkgs مورد استفاده توسط DNF5 ضمیمه می‌کند. تعداد نسخه‌های نگهداری‌شده بسته توسط installonly_limit تنظیم می‌شود.

integer

تعداد بسته‌های installonly مجاز برای نصب همزمان.

مقدار 1 صراحتاً مجاز نیست، زیرا ارتقای هسته را به دلیل محافظت از هسته در حال اجرا در برابر حذف پیچیده می‌کند.

حداقل مقدار 2 است.

مقدار 0 به معنای تعداد نامحدود بسته‌های installonly است.

پیش‌فرض: 3.

string

ریشه سیستم‌فایل برای تمام عملیات‌های بسته‌بندی. نیازمند یک مسیر مطلق است. همچنین گزینه خط فرمان --installroot را ببینید.

پیش‌فرض: /.

boolean

در صورت فعال بودن، هنگامی که یک بسته جدید قرار است نصب شود، تمام بسته‌هایی که با پیوند وابستگی ضعیف (پرچم‌های Recommends یا Supplements) با این بسته مرتبط هستند، به تراکنش کشیده خواهند شد.

پیش‌فرض: True.

boolean

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

پیش‌فرض: False.

string

دایرکتوری که فایل‌های گزارش در آن ذخیره خواهند شد.

پیش‌فرض کاربر معمولی: ~/.local/state.

پیش‌فرض کاربر ارشد (superuser): /var/log.

integer

فایل‌های گزارش پیش از حذف شدن، log_rotate بار چرخش می‌یابند. اگر log_rotate برابر با 0 باشد، چرخش انجام نمی‌شود.

پیش‌فرض: 4.

storage size

فایل‌های گزارش هنگامی که حجیم‌تر از log_size بایت شوند، چرخش می‌یابند. اگر log_size برابر با 0 باشد، چرخش انجام نمی‌شود.

این اندازه برای تک‌تک فایل‌های گزارش اعمال می‌شود، نه مجموع کل فایل‌های گزارش. همچنین log_rotate را ببینید.

پیش‌فرض: 1M.

string

این مقدار را روی $name:$stream تنظیم کنید تا PLATFORM_ID شناسایی‌شده از /etc/os-release بازنویسی شود. برای انجام ارتقای سیستم و تغییر به یک پلتفرم جدید لازم است.

پیش‌فرض: خالی.

boolean

در صورت فعال بودن، امکان تعویض جریان‌های فعال یک ماژول را فراهم می‌کند.

پیش‌فرض: False.

string

نحوه مدیریت بسته‌های multilib را در طول عملیات نصب کنترل می‌کند.

می‌تواند best باشد تا حل‌کننده وابستگی بسته‌هایی را که بهترین همخوانی را با معماری سیستم دارند ترجیح دهد، یا all باشد تا بسته‌ها را برای همه معماری‌های موجود نصب کند.

پیش‌فرض: best.

boolean

در صورت فعال بودن، DNF5 از منطق پردازش بسته‌های منسوخ‌شده (obsoletes) استفاده می‌کند، بدین معنا که بررسی می‌کند آیا وابستگی‌های یک بسته معین دیگر مورد نیاز نیستند یا خیر و آن‌ها را حذف می‌کند.

هنگام انجام ارتقا در سطح توزیع مفید است.

در حین فرآیندهای نصب و ارتقا تأثیرگذار است.

گزینه خط فرمان: --obsoletes

پیش‌فرض: True.

list

فهرستی از موارد زیر: comps، filelists، other، presto، updateinfo، all

انواع فراداده‌هایی را مشخص می‌کند که علاوه بر فراداده‌های ضروری primary و modules (که همواره بارگذاری می‌شوند) باید بارگذاری گردند. توجه داشته باشید که دستورات جداگانه DNF ممکن است این فهرست را در زمان اجرا گسترش دهند.

یادداشت: این فهرست تنها شامل انواع فراداده‌هایی است که توسط DNF شناخته می‌شوند. با این حال، فراداده‌های یک مخزن ممکن است شامل انواع گوناگون دیگری نیز باشد (برای نمونه AppStream یا فراداده‌هایی که به جای فایل‌های XML در قالب پایگاه‌داده ذخیره شده‌اند). مقدار ویژه all نشان‌دهنده تمامی انواع فراداده‌های موجود در مخزن، از جمله موارد ناشناخته برای DNF است.

پیش‌فرض: comps,updateinfo

string

دایرکتوری‌ای که DNF5 داده‌های ماندگار خود را میان اجراهای مختلف در آن ذخیره می‌کند.

پیش‌فرض: /var/lib/dnf.

string

آیا تغییرات باید پس از راه‌اندازی مجدد سیستم ماندگار بمانند یا خیر. ارسال --transient (گزینه transient را در <#transient-option-label> ببینید) این تنظیم را به transient بازنویسی می‌کند. مقادیر معتبر عبارتند از:

  • auto: تغییرات در طول راه‌اندازی‌های مجدد باقی خواهند ماند، مگر اینکه مقصد یک سیستم در حال اجرای bootc باشد و سیستم از قبل در وضعیت قفل‌گشایی‌شده قرار داشته باشد (یعنی /usr قابل نوشتن باشد).
  • transient: تغییرات در راه‌اندازی مجدد بعدی از دست خواهند رفت. تنها در سیستم‌های bootc کاربرد دارد. توجه داشته باشید که بسته به پیکربندی سیستم bootc شما، تغییرات در /etc و /var ماندگار خواهند بود. همچنین https://bootc.dev/bootc//man/bootc-usr-overlay.8.html را ببینید.
  • persist: تغییرات در طول راه‌اندازی‌های مجدد ماندگار خواهند بود.

پیش‌فرض: auto.

list

فهرستی از دایرکتوری‌هایی که برای بارگذاری پیکربندی‌های افزونه‌های libdnf5 جستجو می‌شوند.

تمامی فایل‌های پیکربندی یافت‌شده در این دایرکتوری‌ها که همنام با یک افزونه باشند، تجزیه می‌شوند.

پیش‌فرض: /etc/dnf/libdnf5-plugins.

list

فهرستی از دایرکتوری‌هایی که برای بارگذاری افزونه‌های libdnf5 جستجو می‌شوند. افزونه‌های یافت‌شده در هر یک از دایرکتوری‌های موجود در این گزینه پیکربندی استفاده خواهند شد.

پیش‌فرض: /usr/lib64/libdnf5/plugins/

boolean

در صورت فعال بودن، افزونه‌های libdnf5 فعال می‌شوند.

پیش‌فرض: True.

list

این گزینه فهرست الحاقی، حاوی نام بسته‌هایی است که DNF5 هرگز نباید آن‌ها را به طور کامل حذف کند.

آن‌ها هم در برابر Obsoletes و هم در برابر حذف توسط کاربر یا افزونه محافظت می‌شوند.

یک مدخل با پیشوند glob:، مانند glob:/path/to/dir/*.conf، به تمام فایل‌های منطبق گسترش می‌یابد و از هر کدام در هر خط یک بسته را می‌خواند.

پیش‌فرض: dnf5,glob:/etc/dnf/protected.d/*.conf.

یادداشت:

همچنین DNF5 از بسته متناظر با نسخه در حال اجرای هسته محافظت خواهد کرد. گزینه protect_running_kernel را نیز ببینید.
boolean

کنترل می‌کند که آیا بسته متناظر با نسخه در حال اجرای هسته در برابر حذف محافظت شود یا خیر.

پیش‌فرض: True.

یادداشت:

گزینه سازگاری با YUM
integer

دوره زمانی بر حسب روز را برای گزینه --recent در دستورات repoquery <#repoquery-command-ref-label>، info <#info-command-ref-label> و list <#list-command-ref-label> تنظیم می‌کند.

پیش‌فرض: 7

list

مکان‌های فایل‌های پیکربندی مخزن.

رفتار reposdir ممکن است هنگام استفاده به همراه گزینه --installroot متفاوت باشد.

پیش‌فرض: [/etc/yum.repos.d, /etc/distro.repos.d, /usr/share/dnf5/repos.d]

boolean

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

پیش‌فرض: False.

boolean

صرف‌نظر کردن از دریافت قفل روی مخزن سیستم (معادل پایگاه‌داده RPM). این قفل برای جلوگیری از خواندن مخزن سیستم توسط فرآیندها در حین اجرای یک تراکنش توسط فرآیندی دیگر استفاده می‌شود. کاربران بدون امتیاز دسترسی مجاز به دریافت قفل خواندن روی مخزن سیستم هستند، بنابراین skip_system_repo_lock=true ممکن است برای نادیده گرفتن قفل آن‌ها استفاده شود.

boolean

در صورت فعال بودن، DNF5 هنگام آماده‌سازی تراکنش‌های rpm، به جای شکست خوردن از بسته‌های در دسترس نبوده صرف‌نظر می‌کند.

پیش‌فرض: False.

system_cachedir

string

برای کاربر ارشد (superuser) مقدار گزینه cachedir را بازنویسی می‌کند.

امکان تفکیک cachedir کاربر عادی و کاربر ارشد را فراهم می‌کند.

پیش‌فرض: /var/cache/libdnf5.

string

مکان فایل‌های وضعیت سیستم. برای جزئیات dnf5-system-state(7)، وضعیت سیستم <#systemstate-misc-ref-label> را ببینید.

پیش‌فرض: /usr/lib/sysimage/libdnf5.

transaction_history_dir

string

مکان پایگاه‌داده تاریخچه.

به طور پیش‌فرض دارای همان مقدار system_state_dir است.

list

فهرستی از رشته‌ها که فلگ‌های اضافی را به تراکنش RPM اضافه می‌کنند.

مقدار tsflag فلگ تراکنش RPM
noscripts RPMTRANS_FLAG_NOSCRIPTS
test RPMTRANS_FLAG_TEST
notriggers RPMTRANS_FLAG_NOTRIGGERS
nodocs RPMTRANS_FLAG_NODOCS
justdb RPMTRANS_FLAG_JUSTDB
nocontexts RPMTRANS_FLAG_NOCONTEXTS
nocaps RPMTRANS_FLAG_NOCAPS
nocrypto RPMTRANS_FLAG_NOFILEDIGEST
deploops RPMTRANS_FLAG_DEPLOOPS
noplugins RPMTRANS_FLAG_NOPLUGINS

گزینه nocrypto همچنین فلگ‌های VS با نام‌های _RPMVSF_NOSIGNATURES و _RPMVSF_NODIGESTS را تنظیم می‌کند.

گزینه test بدون انجام تراکنش، بررسی تراکنش را فراهم می‌آورد. این شامل بارگیری بسته‌ها، بررسی کلیدهای OpenPGP (شامل وارد کردن دائمی کلیدهای اضافی در صورت نیاز)، و بررسی rpm برای جلوگیری از تداخل فایل‌ها است.

گزینه noplugins استفاده از افزونه‌های rpm را غیرفعال می‌کند.

پیش‌فرض: خالی.

use_host_config

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

پیش‌فرض: False.

list

فهرستی از مسیرهایی که در صورت انحراف محتوای آن‌ها نسبت به /usr احتمال ایجاد مشکل دارند، مانند /etc/pam.d/*. اگر یک تراکنش گذرا (transient) این مسیرها را تغییر دهد، DNF5 عملیات را متوقف کرده و خطایی را چاپ می‌کند.

هنگام استفاده از persistence=transient روی سیستم‌های bootc، یک لایه پوششی گذرا روی /usr ایجاد می‌شود و هر تغییری که DNF5 در /usr ایجاد کند در راه‌اندازی مجدد دور ریخته می‌شود. با این حال، سایر مسیرها مانند /etc و /var (اغلب) تحت پوشش یک لایه پوششی گذرا نیستند، بنابراین تغییرات اعمال‌شده در آن‌ها پس از راه‌اندازی‌های مجدد باقی می‌ماند. معمولاً این "انحراف سیستم فایل" مشکلی ندارد، اما می‌تواند در موقعیت‌های خاصی مشکل‌ساز شود. برای مثال، یک فایل پیکربندی در /etc که میان چند بسته مشترک است ممکن است به یک فایل .so زیر /usr/lib64 ارجاع دهد که دیگر وجود ندارد.

اگر هر مسیری توسط این گزینه محافظت شود، DNF5 پیش از حل تراکنش‌های گذرا فراداده فهرست فایل‌ها (filelist) را از مخازن بارگیری خواهد کرد.

یک مدخل با پیشوند glob:، مانند glob:/path/to/dir/*.conf، به تمام فایل‌های منطبق گسترش می‌یابد و از هر کدام یک مسیر در هر خط می‌خواند. هم الگوی glob در مدخل فهرست گزینه‌ها و هم تک‌تک مسیرهای فهرست‌شده درون فایل‌ها (مانند /etc/pam.d/*) می‌توانند حاوی الگوهای تطبیق باشند.

پیش‌فرض: glob:/etc/dnf/usr-drift-protected-paths.d/*.conf.

list

فهرستی از دایرکتوری‌هایی که فایل‌های تعریف متغیرها در آن‌ها جستجو می‌شوند.

فایل‌های متغیر را در مرجع پیکربندی ببینید.

پیش‌فرض: /etc/dnf/vars.

boolean

در صورت فعال بودن، فراداده‌های مخزن با استفاده از قالب zchunk فشرده‌سازی می‌شوند (در صورت موجود بودن).

پیش‌فرض: True.

color

رنگ بسته‌های موجود که از بسته‌های نصب‌شده جدیدتر هستند. این گزینه در حین عملیات لیست کردن استفاده می‌شود.

پیش‌فرض: bold,blue.

color

رنگ بسته‌های موجود که از بسته‌های نصب‌شده قدیمی‌تر هستند. این گزینه در حین عملیات لیست کردن استفاده می‌شود.

پیش‌فرض: dim,magenta.

color

رنگ بسته‌های موجود که با نسخه‌های نصب‌شده یکسان هستند و برای نصب مجدد در دسترس می‌باشند. این گزینه در حین عملیات لیست کردن استفاده می‌شود.

پیش‌فرض: bold,green.

color

رنگ بسته‌هایی که برای نصب در دسترس هستند و هیچ نسخه‌ای از آن‌ها نصب نشده است. این گزینه در حین عملیات لیست کردن استفاده می‌شود.

پیش‌فرض: bold,cyan.

color

رنگ بسته‌های حذف‌شده. این گزینه در حین نمایش تراکنش‌ها استفاده می‌شود.

پیش‌فرض: dim,red.

color

رنگ بسته‌های محلی که از مخزن @commandline نصب شده‌اند. این گزینه در حین نمایش تراکنش‌ها استفاده می‌شود.

پیش‌فرض: dim,green.

color

رنگ بسته‌هایی که از مخازن دوردست نصب، ارتقا یا تنزل داده می‌شوند. این گزینه در حین نمایش تراکنش‌ها استفاده می‌شود.

پیش‌فرض: bold,green.

color

رنگ الگوهای تطبیق‌یافته در خروجی جستجو.

پیش‌فرض: bold,magenta.

list

فهرستی از نشانی‌های اینترنتی (URL) برای مخزن.

پیش‌فرض: [].

نشانی‌ها به ترتیب ذکر شده امتحان می‌شوند (معادل رفتار «failovermethod=priority» در yum).

integer

هزینه نسبی دسترسی به این مخزن، با پیش‌فرض ۱۰۰۰. این مقدار زمانی مقایسه می‌شود که اولویت دو مخزن یکسان باشد. مخزن با کمترین هزینه انتخاب می‌شود. این گزینه برای ترجیح دادن مخازن روی دیسک به مخازن دوردست توسط کتابخانه مفید است.

boolean

شامل کردن این مخزن به عنوان یک منبع بسته.

پیش‌فرض: True.

list

نشانی‌های اینترنتی فایل‌های کلید OpenPGP که می‌توانند برای امضای فراداده‌ها و بسته‌های این مخزن استفاده شوند. اگر فایلی با استفاده از کلیدهای وارد شده قبلی تایید نشود، تلاش برای وارد کردن کلیدها از این گزینه صورت می‌گیرد و سپس از آن کلیدها برای اعتبارسنجی استفاده می‌شود.

پیش‌فرض: []

string

نشانی اینترنتی یک metalink برای مخزن.

پیش‌فرض: None.

string

نشانی اینترنتی یک mirrorlist برای مخزن.

پیش‌فرض: None.

string

یک نام خوانا برای انسان از مخزن. مقدار پیش‌فرض آن شناسه (ID) مخزن است.

integer

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

پیش‌فرض: 99

string

نوع فراداده مخزن. مقادیر پشتیبانی‌شده عبارتند از: rpm-md. نام‌های مستعار برای rpm-md: rpm، repomd، rpmmd، yum، YUM.

پیش‌فرض: خالی.

برای مخزنی با شناسه‌ای به شکل "<ID>-rpms"، انتظار می‌رود مخزن کد منبع متناظر با آن دارای شناسه‌ای به شکل "<ID>-source-rpms" و مخزن اطلاعات رفع اشکال (debuginfo) دارای شناسه‌ای به شکل "<ID>-debug-rpms" باشد. در غیر این صورت (اگر شناسه مخزن پسوند "-rpms" نداشته باشد)، انتظار می‌رود مخزن کد منبع دارای شناسه‌ای به شکل "<ID>-source" و مخزن debuginfo دارای شناسه‌ای به شکل "<ID>-debuginfo" باشد.

برای مثال، برای مخزن "fedora"، مخزن کد منبع "fedora-source" و مخزن debuginfo برابر با "fedora-debuginfo" است. برای مخزن "fedora-rpms"، مخزن کد منبع "fedora-source-rpms" و مخزن debuginfo برابر با "fedora-debug-rpms" است.

سمت راست هر گزینه مخزن می‌تواند با متغیرهای زیر غنی‌سازی شود:

$arch

به معماری پردازنده (CPU) سیستم اشاره دارد؛ مانند aarch64، i586، i686 و x86_64.

$basearch

به معماری پایه سیستم اشاره دارد. به عنوان مثال، ماشین‌های i686 و i586 هر دو دارای معماری پایه i386 هستند، و ماشین‌های AMD64 و Intel64 دارای معماری پایه x86_64 می‌باشند.

$releasever

به نسخه انتشار سیستم‌عامل اشاره دارد که DNF5 آن را از اطلاعات موجود در RPMDB استخراج می‌کند.

علاوه بر این متغیرهای از پیش تعریف شده، می‌توان از متغیرهای تعریف‌شده توسط کاربر نیز استفاده کرد. آن‌ها را می‌توان از طریق فایل‌های متغیر یا با استفاده از متغیرهای محیطی ویژه تعریف کرد. نام این متغیرها باید با پیشوند DNF_VAR_ شروع شود و فقط می‌تواند شامل حروف، ارقام و زیرخط (underscore) باشد:

$ DNF_VAR_MY_VARIABLE=value

برای استفاده از چنین متغیری در پیکربندی مخزن خود، پیشوند را حذف کنید. به عنوان مثال:

[myrepo]
baseurl=https://example.site/pub/fedora/$MY_VARIABLE/releases/$releasever

توجه داشته باشید که بازنویسی متغیرهای arch و basearch با استفاده از فایل‌های متغیر یا متغیرهای محیطی امکان‌پذیر نیست.

اگرچه به کاربران توصیه می‌شود از متغیرهای نام‌دار استفاده کنند، متغیرهای محیطی شماره‌دار DNF0 - DNF9 همچنان پشتیبانی می‌شوند:

$ DNF1=value
[myrepo]
baseurl=https://example.site/pub/fedora/$DNF1/releases/$releasever

برخی گزینه‌ها می‌توانند در بخش اصلی، به ازای هر مخزن، یا به صورت ترکیبی اعمال شوند. مقدار ارائه‌شده در بخش اصلی به عنوان مقدار پیش‌فرض برای تمام مخازن استفاده می‌شود، که مخازن می‌توانند سپس آن را در پیکربندی خود بازنویسی کنند.

storage size

کل پهنای باند موجود برای بارگیری، بر حسب بایت در ثانیه. هم برای بارگیری فراداده‌ها و هم بسته‌ها استفاده می‌شود. این مقدار فقط زمانی استفاده می‌شود که گزینه throttle به صورت یک درصد تنظیم شده باشد. هنگامی که throttle به صورت یک مقدار مطلق تنظیم شده باشد، bandwidth نادیده گرفته می‌شود.

پیش‌فرض: 0 (بدون محدودیت).

boolean

در صورت فعال بودن، DNF5 حافظه موقت libsolv تولیدشده از فراداده‌های بارگیری‌شده را در cachedir ذخیره می‌کند. این فایل‌های solv در اجراهای بعدی بارگذاری می‌شوند که سرعت DNF5 را به طور چشمگیری افزایش می‌دهد.

پیش‌فرض: True.

boolean

در صورت فعال بودن، در هر هفته یک (و فقط یک) درخواست HTTP GET برای فایل metalink به صورت تصادفی انتخاب می‌شود تا حامل یک فلگ ویژه در URL باشد.

این فلگ به ارائه‌دهنده مخزن اجازه می‌دهد تا با شمارش چنین درخواست‌هایی در طول یک هفته، تعداد سیستم‌هایی را که از مخزن استفاده می‌کنند تخمین بزند. این روش دقیق‌تر از صرفاً شمارش نشانی‌های IP یکتا است (که به دلیل واگذاری‌های کوتاه‌مدت DHCP و NAT، به ترتیب در معرض بیش‌شماری و کم‌شماری قرار دارد).

این یک درخواست HTTP خارج از نوبت (not an out-of-band request) نیست که تنها برای این منظور ارسال شده باشد. تنها درخواست‌هایی که توسط DNF در طول عملکرد عادی آغاز می‌شوند، مانند بررسی به‌روزرسانی‌های فراداده، می‌توانند این فلگ را دریافت کنند.

این فلگ یک پارامتر ساده "countme=N" است که به انتهای نشانی اینترنتی metalink افزوده می‌شود که در آن N یک عدد صحیح است که بازه سنی ("bucket") سیستم را نشان می‌دهد. بر اساس تعداد هفته‌های کاملی که از زمان نصب یک سیستم سپری شده است، چهار بازه تعریف شده است:

بازه (bucket) عمر سیستم
1 هفته اول
2 ماه اول (۲ - ۴ هفته)
3 ۶ ماه اول (۵ - ۲۴ هفته)
4 بیش از ۶ ماه (> ۲۴ هفته)

این عدد به منظور کمک به تفکیک ماشین‌های کوتاه‌مدت (یک‌بارمصرف) از سیستم‌های نصب‌شده بلندمدت و دستیابی به تصویری بهتر از نحوه استفاده از سیستم‌ها در طول زمان در نظر گرفته شده است.

برای تعیین زمان نصب سیستم ("epoch")، زمان تغییر فایل machine-id(5) به عنوان تنها منبع حقیقت استفاده می‌شود. این فایل از نظر معنایی به طول عمر سیستم گره خورده است زیرا معمولاً در زمان نصب یا در طول اولین بوت به ترتیب توسط ابزار نصب‌کننده یا سیستم init (مانند systemd(1)) پر می‌شود و بدون تغییر باقی می‌ماند.

اگر فایل خالی باشد یا وجود نداشته باشد (مانند کانتینرها)، زمان اولین درخواستی که با استفاده از نشانی اینترنتی گسترش‌یافته metalink (یعنی با جایگزینی هر یک از متغیرهای مخزن مانند $releasever) ارسال شده و حامل این فلگ بوده است، به عنوان epoch اعلام می‌شود.

اگر نشانی metalink برای این مخزن تعریف نشده باشد اما نشانی mirrorlist وجود داشته باشد، نشانی mirrorlist به جای آن برای این منظور استفاده می‌شود.

پیش‌فرض: False.

list

برای غیرفعال کردن فیلتر کردن بسته، گروه و محیط استفاده می‌شود. می‌تواند شامل فهرستی از شناسه‌های مخزن باشد (استفاده از الگوهای glob مجاز است) که برای آن‌ها استثناهای بسته مختص به مخزن نادیده گرفته می‌شوند. اگر شامل مقدار ویژه main باشد، استثناهای فایل‌های پیکربندی اصلی نادیده گرفته می‌شوند. اگر شامل مقدار ویژه * باشد، هیچ فیلتر استثنایی اعمال نمی‌شود.

boolean

در صورت فعال بودن، DNF5 استفاده از گروه‌های بسته را مجاز می‌داند.

پیش‌فرض: True.

list

مستثنی کردن بسته‌های این مخزن از تمامی عملیات، که با یک نام یا الگوی glob مشخص شده و با کاما از هم جدا می‌شوند.

می‌توان آن را با استفاده از گزینه پیکربندی disable_excludes غیرفعال کرد.

پیش‌فرض: [].

boolean

در صورت فعال بودن، از تاخیر سوکت TCP برای یافتن نزدیک‌ترین آینه (mirror) موجود استفاده می‌شود. سپس برای توازن بار، یک آینه به صورت تصادفی با تاخیری کمتر از دو برابر کمترین تاخیر انتخاب می‌شود. این گزینه ترتیبی را که توسط خود فایل mirrorlist/metalink ارائه شده است نادیده می‌گیرد، و پارامترهای mirrorlist مانند پهنای باند آینه یا آینه‌های ترجیحی برای نشانی‌های IP کلاینت را در نظر نمی‌گیرد.

پیش‌فرض: False.

boolean

آیا بررسی امضای OpenPGP روی بسته‌های موجود در این مخزن انجام شود یا خیر.

پیش‌فرض False است.

برای بسته‌هایی که مستقیماً به عنوان آرگومان ارسال می‌شوند، اعمال نمی‌شود زیرا در هیچ مخزنی نیستند، گزینه localpkg_gpgcheck را ببینید.

list

شامل کردن بسته‌های این مخزن در تمامی عملیات، که با یک نام یا الگوی glob مشخص شده و با کاما از هم جدا می‌شوند.

برعکس excludepkgs، در این حالت DNF5 هر بسته‌ای را در مخزن که با این فهرست مطابقت نداشته باشد مستثنی می‌کند.

این گزینه در کنار excludepkgs کار می‌کند و آن را بازنویسی نمی‌کند، بنابراین اگر 'excludepkgs=*.i386' و 'includepkgs=python*' را قرار دهید، فقط بسته‌هایی که با python شروع می‌شوند و فاقد معماری i386 هستند توسط DNF5 در این مخزن دیده خواهند شد.

می‌توان آن را با استفاده از گزینه پیکربندی disable_excludes غیرفعال کرد.

پیش‌فرض: [].

ip address

تعیین می‌کند که DNF5 چگونه نام‌های میزبان را تحلیل کند. این مقدار را روی 4، IPv4، 6، IPv6 تنظیم کنید تا فقط به نشانی‌های IPv4 یا IPv6 تحلیل شوند.

پیش‌فرض: whatever.

boolean

در صورت فعال بودن، DNF5 یک بررسی امضای OpenPGP روی بسته‌های محلی (بسته‌های موجود در یک فایل، نه در یک مخزن) انجام می‌دهد.

پیش‌فرض: False.

integer

حداکثر تعداد بارگیری‌های همزمان. حداکثر مقدار 20 است.

پیش‌فرض: 3.

integer

حداکثر تعداد بارگیری‌های همزمان به ازای هر آینه. حداکثر مقدار 20 است.

پیش‌فرض: 3.

time in seconds

مدت زمانی که پس از آن مخزن دوردست برای به‌روزرسانی فراداده بررسی می‌شود و در صورت مثبت بودن نتیجه، حافظه موقت فراداده‌های محلی به‌روزرسانی می‌گردد. می‌تواند -1 یا never باشد تا مخزن هرگز منقضی در نظر گرفته نشود.

انقضای فراداده می‌تواند با تغییر برچسب زمانی فایل‌های پیکربندی (dnf.conf، <repo>.repo) نیز فعال شود.

همچنین check_config_file_age را ببینید.

پیش‌فرض: 60 * 60 * 48، معادل ۴۸ ساعت.

storage size

آستانه سرعت پایین را بر حسب بایت در ثانیه تنظیم می‌کند. اگر سرور داده‌ها را با سرعتی برابر یا کمتر از این مقدار حداقل به مدت ثانیه‌های گزینه timeout ارسال کند، DNF5 اتصال را قطع می‌کند.

پیش‌فرض: 1000.

string

رمز عبور استفاده‌شده برای اتصال به یک مخزن با احراز هویت پایه‌ای HTTP.

پیش‌فرض: خالی.

string

نشانی اینترنتی (URL) یک سرور پروکسی برای برقراری اتصال از طریق آن.

در پیکربندی مخزن آن را روی یک رشته خالی تنظیم کنید تا تنظیمات پروکسی به ارث رسیده از بخش اصلی غیرفعال شود. ساختار مورد انتظار این گزینه به صورت <scheme>://<ip-or-hostname>[:port] است. (برای سازگاری عقبرو، می‌توان به جای رشته خالی از '_none_' استفاده کرد.)

پیش‌فرض: خالی.

نکته:

متغیرهای محیطی curl (مانند http_proxy) در صورت تنظیم نشدن این گزینه (یا تنظیم '_none_' در پیکربندی مخزن) اعمال می‌شوند. برای جزئیات به صفحه راهنمای curl مراجعه کنید.
string

نام کاربری برای استفاده در اتصال به سرور پروکسی.

پیش‌فرض: خالی.

string

رمز عبور برای استفاده در اتصال به سرور پروکسی.

پیش‌فرض: خالی.

string

روش احراز هویت استفاده‌شده توسط سرور پروکسی. مقادیر معتبر عبارتند از:

روش مفهوم
basic احراز هویت پایه‌ای HTTP
digest احراز هویت Digest در HTTP
negotiate احراز هویت Negotiate (SPNEGO) در HTTP
ntlm احراز هویت NTLM در HTTP
digest_ie احراز هویت Digest در HTTP با خصوصیات IE
ntlm_wb واگذاری NTLM به کمکی winbind
none بدون روش احراز هویت
any تمام روش‌های مناسب

پیش‌فرض: any.

string

مسیر فایل حاوی مراجع صدور گواهی (CA) برای تایید گواهی‌های SSL پروکسی.

پیش‌فرض: خالی، از پیش‌فرض سیستم استفاده می‌کند.

string

مسیر گواهی کلاینت SSL استفاده‌شده برای اتصال به سرور پروکسی.

پیش‌فرض: خالی.

string

مسیر کلید کلاینت SSL استفاده‌شده برای اتصال به سرور پروکسی.

پیش‌فرض: خالی.

boolean

در صورت فعال بودن، گواهی‌های SSL پروکسی اعتبارسنجی می‌شوند. اگر کلاینت نتواند احراز هویت شود، اتصال با شکست مواجه شده و دیگر از مخزن استفاده نمی‌شود. اگر False باشد، می‌توان از اتصالات SSL استفاده کرد، اما گواهی‌ها تایید نمی‌شوند.

پیش‌فرض: True.

boolean

در صورت فعال بودن، DNF5 بررسی امضای OpenPGP را روی فراداده‌های این مخزن انجام می‌دهد.

نکته:

کلیدهای OpenPGP برای این بررسی جدا از کلیدهای OpenPGP مورد استفاده در تایید امضای بسته ذخیره می‌شوند. علاوه بر این، آن‌ها به طور جداگانه برای هر مخزن نیز نگهداری می‌شوند.

این بدان معناست که DNF5 ممکن است چندین بار درخواست وارد کردن یک کلید یکسان را بدهد. به عنوان مثال، هنگامی که یک کلید از قبل برای تایید امضای بسته وارد شده باشد و این گزینه فعال گردد، ممکن است لازم باشد آن را دوباره برای مخزن وارد کنید.

پیش‌فرض: False.

boolean

در صورت فعال بودن، DNF5 به اجرای خود ادامه می‌دهد و مخزنی را که به هر دلیلی نتوانسته همگام‌سازی شود غیرفعال می‌کند. این گزینه بر نادیده گرفتن بسته‌های غیرقابل دسترس پس از حل وابستگی‌ها تاثیری ندارد. برای بررسی عدم دسترسی به مخزن، از آن در ترکیب با گزینه خط فرمان refresh <#refresh-option-label> استفاده کنید.

پیش‌فرض: False.

نکته:

به ویژه این گزینه می‌تواند توسط پیکربندی مختص به توزیع بازنویسی شود. برای جزئیات بیشتر به بخش پوشه‌های پیکربندی جایگزین مراجعه کنید.
string

مسیر فایل حاوی مراجع صدور گواهی برای تایید گواهی‌های SSL.

پیش‌فرض: خالی، از پیش‌فرض سیستم استفاده می‌کند.

string

مسیر گواهی کلاینت SSL استفاده‌شده برای اتصال به سایت‌های دوردست.

پیش‌فرض: خالی.

string

مسیر کلید کلاینت SSL استفاده‌شده برای اتصال به سایت‌های دوردست.

پیش‌فرض: خالی.

boolean

در صورت فعال بودن، گواهی‌های SSL دوردست تایید می‌شوند. اگر کلاینت نتواند احراز هویت شود، اتصال با شکست مواجه شده و دیگر از مخزن استفاده نمی‌شود. در صورت غیرفعال بودن، می‌توان از اتصالات SSL استفاده کرد، اما گواهی‌ها تایید نمی‌شوند.

پیش‌فرض: True.

storage size

سرعت بارگیری را بر حسب بایت در ثانیه محدود می‌کند. هم برای بارگیری فراداده‌ها و هم بسته‌ها اعمال می‌شود. می‌تواند یک مقدار مطلق باشد (مانند 5M برای ۵ مگابایت بر ثانیه) یا یک درصد (مانند 60%). هنگامی که به صورت درصد داده می‌شود، محدودیت سرعت واقعی نسبت به مقدار گزینه bandwidth محاسبه می‌شود. 0 به معنای عدم اعمال محدودیت است. محدودیت سرعت حاصل نباید کمتر از minrate باشد.

پیش‌فرض: 0.

time in seconds

تعداد ثانیه‌های انتظار برای برقراری اتصال قبل از انقضای زمان (timeout). در ترکیب با گزینه minrate استفاده می‌شود.

پیش‌فرض: 30.

string

نام کاربری برای اتصال به مخزن با احراز هویت پایه‌ای HTTP.

پیش‌فرض: خالی.

string

رشته User-Agent برای درج در درخواست‌های HTTP ارسال‌شده توسط DNF5.

پیش‌فرض:

libdnf (NAME VERSION_ID; VARIANT_ID; OS.BASEARCH)

نکته:

NAME، VERSION_ID و VARIANT_ID شناسه‌های سیستم‌عامل هستند که از فایل os-release(5) خوانده می‌شوند، و OS و BASEARCH به ترتیب نام رسمی سیستم‌عامل و معماری پایه هستند. مثال:
libdnf (Fedora 39; server; Linux.x86_64)

نوع داده‌ای که تنها دو مقدار ممکن دارد.

یکی از گزینه‌های زیر می‌تواند استفاده شود: 1، 0، True، False، yes، no.

رشته‌ای توصیف‌کننده رنگ و تغییردهنده‌ها که با کاما از هم جدا شده‌اند، به عنوان مثال red,bold.
  • رنگ‌ها: black، blue، cyan، green، magenta، red، white، yellow.
  • تغییردهنده‌ها: bold، blink، dim، normal، reverse، underline.
عدد صحیحی که می‌تواند بدون بخش کسری نوشته شود.
رشته‌ای توصیف‌کننده انواع نشانی IP.

یکی از گزینه‌های زیر می‌تواند استفاده شود: 4، IPv4، 6، IPv6.

رشته‌ای نشان‌دهنده یک یا چند رشته که با فاصله یا کاما از هم جدا شده‌اند. کاراکتر بک‌اسلش '\' می‌تواند برای اسکیپ کردن هر کاراکتری استفاده شود و اجازه می‌دهد آن کاراکتر به صورت تحت‌اللفظی در رشته‌های جداگانه گنجانده شود.

مثال: 'item1,item2\,with\,commas,item3\ with\ spaces item4'

رشته‌ای نشان‌دهنده اندازه‌های ذخیره‌سازی بر حسب بایت که از یک عدد صحیح و یک واحد تشکیل شده است.

واحدهای معتبر عبارتند از: k، M، G.

توالی از نمادها یا ارقام بدون هیچ‌گونه کاراکتر فاصله‌ساز (whitespace).
رشته‌ای نشان‌دهنده واحدهای زمان بر حسب ثانیه. می‌تواند روی -1 یا never تنظیم شود.

DNF5 گزینه‌های پیکربندی تعریف‌شده در فایل پیکربندی اصلی، فایل‌های پیکربندی کاربر و فایل‌های پیکربندی توزیع را بارگذاری می‌کند.

فایل‌های پیکربندی طبق ترتیب زیر پردازش می‌شوند:

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

فایل‌های پیکربندی کاربر:

  • /etc/dnf/dnf.conf
  • /etc/dnf/libdnf5.conf.d/20-user-settings.conf
  • /etc/dnf/libdnf5.conf.d/60-something.conf
  • /etc/dnf/libdnf5.conf.d/80-user-settings.conf

فایل‌های پیکربندی توزیع:

  • /usr/share/dnf5/libdnf.conf.d/50-something.conf
  • /usr/share/dnf5/libdnf.conf.d/60-something.conf
  • /usr/share/dnf5/libdnf.conf.d/90-something.conf

ترتیب بارگذاری فایل‌ها در حالت پیش‌فرض (از /usr/share/dnf5/libdnf.conf.d/60-something.conf صرف‌نظر می‌شود زیرا توسط فایل کاربر /etc/dnf/libdnf5.conf.d/60-something.conf پوشانده شده است):

1.
/etc/dnf/libdnf5.conf.d/20-user-settings.conf
2.
/usr/share/dnf5/libdnf.conf.d/50-something.conf
3.
/etc/dnf/libdnf5.conf.d/60-something.conf
4.
/etc/dnf/libdnf5.conf.d/80-user-settings.conf
5.
/usr/share/dnf5/libdnf.conf.d/90-something.conf
6.
/etc/dnf/dnf.conf

پوشه پیکربندی کاربر (User Configuration Directory)
/etc/dnf/libdnf5.conf.d/
فایل‌های پیکربندی کاربر (User Configuration Files)
/etc/dnf/libdnf5.conf.d/20-user-settings.conf
پوشه پیکربندی توزیع (Distribution Configuration Directory)
/usr/share/dnf5/libdnf.conf.d/
فایل‌های پیکربندی توزیع (Distribution Configuration Files)
/usr/share/dnf5/libdnf.conf.d/50-something.conf

پس از بارگذاری پیکربندی‌های مخزن، سایر پیکربندی‌های مخزن را می‌توان از پوشه‌های پوشه بازنویسی مخازن کاربر و پوشه بازنویسی مخازن توزیع بارگذاری و بازنویسی کرد.

فرمت فایل‌های درون این پوشه‌ها همانند فرمت فایل‌های پیکربندی مخزن است. گزینه‌های موجود در فایل‌های بازنویسی‌شده می‌توانند مخازن موجود را اصلاح کنند اما نمی‌توانند مخزن جدیدی ایجاد نمایند.

فایل‌های بازنویسی از الگوهای glob در شناسه مخزن پشتیبانی می‌کنند تا تغییرات گروهی پارامترهای مخزن امکان‌پذیر باشد.

بازنویسی‌های مخزن طبق ترتیب زیر پردازش می‌شوند:

1.
فایل‌های /usr/share/dnf5/repos.override.d/ و /etc/dnf/repos.override.d/ در یک فهرست مرتب‌شده به ترتیب حروف الفبا بارگذاری می‌شوند. در صورتی که فایل‌ها نام یکسانی داشته باشند، فایل موجود در /etc/dnf/repos.override.d/ استفاده می‌شود. این بدین معنی است که فهرست فقط شامل نام فایل‌های یکتا است. همچنین بدین معناست که فایل‌های پیکربندی مخزن را می‌توان به سادگی با ایجاد فایلی با همان نام در پوشه بازنویسی /etc پوشاند (mask کرد).
2.
گزینه‌های فایل‌ها به ترتیبی که بارگذاری می‌شوند اعمال می‌گردند. آخرین گزینه اعمال می‌شود (برنده است).

نکته:

همچنین برای مشاهده موارد استفاده از بازنویسی‌ها، به مستندات دستور Config-manager <#config-manager-plugin-ref-label> مراجعه فرمایید.

# فعال کردن `skip_if_unavailable` برای تمام مخازن
[*]
skip_if_unavailable = true
# و سپس غیرفعال کردن `skip_if_unavailable` برای مخازنی با پیشوند شناسه "fedora"
[fedora*]
skip_if_unavailable = false

این مثال ترتیبی را نشان می‌دهد که فایل‌های بازنویسی در آن پردازش می‌شوند.

فایل‌های حاوی بازنویسی‌های مخازن کاربر:

  • /etc/dnf/repos.override.d/20-user-overrides.repo
  • /etc/dnf/repos.override.d/60-something2.repo
  • /etc/dnf/repos.override.d/80-user-overrides.repo
  • /etc/dnf/repos.override.d/99-config-manager.repo

فایل‌های حاوی بازنویسی‌های مخازن توزیع:

  • /usr/share/dnf5/repos.override.d/50-something2.repo
  • /usr/share/dnf5/repos.override.d/60-something2.repo
  • /usr/share/dnf5/repos.override.d/90-something2.repo

ترتیب پردازش نهایی فایل‌ها:

1.
/etc/dnf/repos.override.d/20-user-overrides.repo
2.
/usr/share/dnf5/repos.override.d/50-something2.repo
3.
/etc/dnf/repos.override.d/60-something2.repo
4.
/etc/dnf/repos.override.d/80-user-overrides.repo
5.
/usr/share/dnf5/repos.override.d/90-something2.repo
6.
/etc/dnf/repos.override.d/99-config-manager.repo

پوشه بازنویسی مخازن کاربر (User Repos Override Directory)
/etc/dnf/repos.override.d/
فایل‌های بازنویسی مخازن کاربر (User Repos Override Files)
/etc/dnf/repos.override.d/20-user-overrides.repo
پوشه بازنویسی مخازن توزیع (Distribution Repos Override Directory)
/usr/share/dnf5/repos.override.d/
فایل‌های بازنویسی مخازن توزیع (Distribution Repos Override Files)
/usr/share/dnf5/repos.override.d/50-something2.repo

فایل اصلی پیکربندی (Main Configuration File)
/etc/dnf/dnf.conf
فایل‌های حافظه موقت (Cache Files)
/var/cache/libdnf5
فایل‌های مخزن (Repository Files)
/etc/yum.repos.d/
متغیرها (Variables)
هر فایلی با نام ویژگی در /etc/dnf/vars به متغیری با نام همان فایل تبدیل می‌شود (یا هر یک از متغیرهای بالا را به جز آن‌هایی که از خط فرمان تنظیم شده‌اند، بازنویسی می‌کند). نام فایل‌ها فقط می‌تواند شامل حروف و ارقام و زیرخط باشد و باید با حروف کوچک نوشته شود. به دلایل سازگاری با YUM، متغیرها از /etc/yum/vars نیز خوانده می‌شوند.

پوشه‌ها به ترتیبی که پردازش می‌شوند فهرست شده‌اند.

نکته:

برخلاف بازنویسی‌ها که پیکربندی یک مخزن موجود را اصلاح می‌کنند، پیکربندی موجود در این پوشه‌ها مخازن جدیدی را تعریف می‌کند. تعریف مخازنی با شناسه یکسان امکان‌پذیر نیست. اگر چندین مخزن با شناسه یکسان تعریف شوند، تنها اولین پیکربندی بارگذاری خواهد شد. بارگذاری مورد بعدی منجر به ثبت خطا می‌شود.
پوشه مخازن YUM (YUM Repositories Directory)
/etc/yum.repos.d/
پوشه مخازن توزیع در etc/ (Distribution Repositories Directory in /etc)
/etc/distro.repos.d/
پوشه مخازن توزیع در usr/ (Distribution Repositories Directory in /usr)
/usr/share/dnf5/repos.d/

پوشه متغیرها (Variables Directory)
/etc/dnf/vars/
پوشه متغیرهای توزیع (Distribution Variables Directory)
/usr/share/dnf5/vars.d/

  • dnf5(8), مرجع دستورات DNF5 <#command-ref-label>
  • dnf5.conf-vendorpolicy(5), مرجع فایل شیوه‌نامه تغییر ارائه‌دهنده DNF5 <#dnf5-vendor-change-policy-label>
  • dnf5.conf-todo(5), گزینه‌هایی که در DNF مستند/پیاده‌سازی شده‌اند اما در DNF5 موجود نیستند <#dnf5-conf-todo-label>
  • dnf5.conf-deprecated(5), گزینه‌های پیکربندی منسوخ‌شده در DNF5 <#dnf5-conf-deprecated-label>

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

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

September 6, 2026