| DNF5-VERSIONLOCK(8) | dnf5 | DNF5-VERSIONLOCK(8) |
نام (NAME)
dnf5-versionlock - قفل کردن نسخه بستهها جهت جلوگیری از ارتقا در DNF5
خلاصه دستور (SYNOPSIS)
dnf5 versionlock <subcommand> <package-spec-N>...
توضیحات (DESCRIPTION)
دستور versionlock در DNF5 مجموعهای از نامها و نسخهها را برای بستهها دریافت کرده و تمامی نسخههای دیگر آن بستهها را مستثنی میکند. این کار به شما امکان میدهد بستهها را در برابر بهروزرسانی توسط نسخههای جدیدتر محافظت کنید. همچنین، این دستور نسخه مشخصی از یک بسته را برای مستثنی کردن از بهروزرسانیها میپذیرد؛ به عنوان مثال هنگامی که لازم است از یک انتشار خاص از بستهای که مشکلات شناختهشدهای دارد صرفنظر شود.
این افزونه تکتک مدخلهای فایل قفل نسخه را پیمایش کرده و هر بستهای با نام دادهشده را که با شرایط ذکرشده در فایل مطابقت نداشته باشد، مستثنی میکند. این کار اساساً مشابه استفاده از dnf5 --exclude برای خود نام بسته است (چرا که نمیتوانید بستههای نصبشده را مستثنی کنید)، اما dnf همچنان نسخههایی را که نصب کردهاید یا قفل نسخه شدهاند را در دسترس در نظر میگیرد تا دستور dnf reinstall همچنان کار کند.
توجه داشته باشید که دستور versionlock هیچگونه استثنایی را در عملیاتهای غیرتراکنشی مانند repoquery، list، info و غیره اعمال نمیکند.
زیردستورها (SUBCOMMANDS)
- add
-
افزودن قفل نسخه برای تمام بستههای موجود منطبق با مشخصه. این بدان معناست که تنها نسخههایی از بستهها که توسط package-spec-N مشخص شدهاند برای عملیاتهای تراکنش در دسترس خواهند بود. شناسههای NEVRA برای قفل شدن، ابتدا در میان بستههای نصبشده و سپس (در صورت پیدا نشدن) در میان تمام بستههای در دسترس فعلی جستجو میشوند.
- exclude
-
افزودن یک استثنا (در قفل نسخه) برای بستههای موجود منطبق با مشخصه. این بدان معناست که بستههای مشخصشده توسط package-spec-N از عملیاتهای تراکنش مستثنی خواهند شد.
- clear
-
حذف تمام مدخلهای قفل نسخه.
- delete
-
حذف هرگونه مدخل منطبق قفل نسخه.
- list
-
فهرست کردن مدخلهای فعلی قفل نسخه.
مثالها (EXAMPLES)
- dnf5 versionlock add acpi
-
اگر بسته acpi نصب شده باشد، آن را روی نسخه نصبشده فعلی قفل میکند. اگر نصب نشده باشد، acpi را روی هر یک از نسخههای موجود فعلی قفل میکند.
- dnf5 versionlock list
-
نمایش پیکربندی فعلی قفل نسخه.
- dnf5 versionlock delete acpi
-
حذف هرگونه قانون برای بسته acpi.
- dnf5 versionlock exclude iftop-1.2.3-7.fc38
-
مستثنی کردن انتشار iftop-1.2.3-7.fc38.
قالب فایل قفل نسخه (VERSIONLOCK FILE FORMAT)
فایل قفل نسخه یک فایل TOML است که در مسیر /etc/dnf/versionlock.toml ذخیره میشود. این فایل باید شامل کلید version باشد؛ نسخه پشتیبانیشده فعلی 1.0 است. سپس شامل packages است - فهرستی از مدخلهای قفلگذاری. هر مدخل از نام بسته و فهرستی از شرایط تشکیل شده است. مشخصه نام بسته از همان تطبیق الگوی عمومی (glob) شل پشتیبانی میکند. برای مطابقت داشتن یک بسته، تمام شرایط باید برقرار باشند (با استفاده از عملگر منطقی AND ترکیب میشوند). سپس تمام مدخلها با استفاده از عملیات منطقی OR با یکدیگر ترکیب میشوند.
نمونه فایل قفل نسخه (Example of versionlock file)
version = "1.0" # keep package bash on version 0:5.2.15-5.fc39 [[packages]] name = "bash" # name of the package comment = "description" # optional description of the entry [[packages.conditions]] # conditions for the package "bash" key = "evr" # epoch, evr, and arch keys are supported comparator = "=" # <, <=, =, >=, >, and != operators are supported value = "0:5.2.15-5.fc39" # pattern to match # exclude iftop-1.2.3-7.fc38 version (versionlock exclude iftop-1.2.3-7.fc38) [[packages]] name = "iftop" [[packages.conditions]] key = "evr" comparator = "!=" value = "0:1.0-0.31.pre4.fc39" # keep acpi on major version 3 [[packages]] name = "acpi" [[packages.conditions]] key = "evr" comparator = "<" value = "4" [[packages.conditions]] key = "evr" comparator = ">=" value = "3" # keep all *nvidia* packages on version 3:570.* [[packages]] name = "*nvidia*" [[packages.conditions]] key = "evr" comparator = ">=" value = "3:570" [[packages.conditions]] key = "evr" comparator = "<" value = "3:571"
همچنین ببینید (SEE ALSO)
dnf5-specs(7)، مشخصات الگوها <#specs-misc-ref-label>
نویسنده (AUTHOR)
فایل AUTHORS.md را در توزیع کد منبع dnf5 ببینید.
حق نشر (COPYRIGHT)
مشارکتکنندگان پروژه dnf5.
| September 6, 2026 |