| RPM-CONFIG(5) | File Formats Manual | RPM-CONFIG(5) |
نام (NAME)
rpm-config - پیکربندی ماکروهای زمان اجرای rpm
خلاصه دستور (SYNOPSIS)
NAME VALUE
فایلها (FILES)
/usr/lib/rpm/macros
/usr/lib/rpm/macros.d/macros.*
/usr/lib/rpm/platform/%{_target}/macros
/usr/lib/rpm/fileattrs/*.attr
/usr/lib/rpm/<vendor>/macros
/etc/rpm/macros.*
/etc/rpm/macros
/etc/rpm/%{_target}/macros
~/.config/rpm/macros
توضیحات (DESCRIPTION)
سازوکار اصلی پیکربندی در rpm صفحه rpm-macros(7) است. در زمان راهاندازی، rpm مجموعهای از فایلهای rpm-macrofile(5) را که توسط مسیر ماکرو (macro path) تعیین میشوند میخواند.
هر فایل یا الگوی glob(7) در macro path (جداشده با دونقطه) به صورت ترتیبی توسط rpm برای تعاریف ماکرو خوانده میشود. عبارت %{_target} به بستر شناساییشده <arch>-<os> گسترش مییابد. علامتهای مدک (تکواژ ~) به مقدار متغیر محیطی HOME بسط داده میشوند.
اگر ماکرویی چندین بار تعریف شود، آخرین ورودی اعمال خواهد شد. macro path پیشفرض از این سازوکار برای دستیابی به سلسلهمراتب تنظیمات زیر استفاده میکند:
- 1.
- پیشفرضهای عمومی کارخانهای rpm
- 2.
- پیشفرضهای کارخانهای rpm مخصوص هر بستر (platform)
- 3.
- تنظیمات ویژه توزیع یا سازنده (vendor)
- 4.
- تنظیمات اختصاصی میزبان (host)
- 5.
- تنظیمات اختصاصی کاربر
- 6.
- تنظیمات بازنویسی از خط فرمان
مسیر پیشفرض macro path را میتوان با دستور rpm --showrc|grep ^Macro مشاهده کرد.
در نسخههای قدیمیتر rpm، مسیر ماکروهای هر کاربر ~/.rpmmacros بود. اگر این فایل وجود داشته باشد و دایرکتوری پیکربندی جدید وجود نداشته باشد، همچنان پردازش میشود.
پیکربندی (CONFIGURATION)
موارد پیکربندی زیر برای بخشهای زمان اجرای rpm (برخلاف بخشهای صرفاً مربوط به ساخت بسته) پشتیبانی میشوند:
%_color_output MODE
%_db_backend BACKEND
- dummy: بکاند ساختگی (بدون عملکرد واقعی)
- bdb_ro: پایگاه داده Berkeley DB (فقط خواندنی)
- ndb: پایگاه داده بومی (بدون وابستگیهای خارجی)
- sqlite: پایگاه داده Sqlite
%_dbpath DIRECTORY
%_excludedocs VALUE
%_flush_io VALUE
%_group_path PATH
%_httpport PORT
%_httpproxy HOSTNAME
%_install_langs LOCALES
%_install_script_path PATH
%_keyring BACKEND
- fs: فایلهای متنی اسکی (ASCII) ساده در یک دایرکتوری
- openpgp: دایرکتوری گواهی مشترک OpenPGP
- rpmdb: بستههای ساختگی (pseudo-packages) در پایگاه داده rpmdb
%_keyringpath DIRECTORY
%_minimize_writes VALUE
- 0: غیرفعال
- 1: فعال
- -1: (یا تعریفنشده) تشخیص خودکار روی بسترهایی که پشتیبانی میشوند، در غیر این صورت به طور پیشفرض غیرفعال است
%_netsharedpath PATH
%_passwd_path PATH
%_pkgverify_digests HASHALGOS
%_pkgverify_flags VSFLAGS
%_pkgverify_level MODE
- all: نیازمند چکیده(ها) و امضا(های) معتبر
- signature: نیازمند امضا(های) معتبر
- digest: نیازمند چکیده(های) معتبر
- none: رفتار سنتی rpm، هیچ چیزی الزامی نیست
%_prefer_color VALUE
- 0: غیرفعال
- 1: ترجیح بستههای ۳۲ بیتی
- 2: ترجیح بستههای ۶۴ بیتی
%__plugindir DIRECTORY
%_query_all_fmt FORMAT
%_rpmlock_path FILE
%_tmppath PATH
%__urlhelpercmd EXECUTABLE
%__urlhelperopts OPTIONS
%__urlhelper_localopts OPTIONS
%__urlhelper_proxyopts OPTIONS
%_urlhelper COMMAND
%_transaction_color VALUE
- 0: به «رنگها» توجه نکن، تنها از نقشه سازگاری معماری استفاده کن
- 1: تنها اجازه به بستههای ۳۲ بیتی
- 2: تنها اجازه به بستههای ۶۴ بیتی
- 3: اجازه به بستههای ۳۲ و ۶۴ بیتی برای اشتراک فایلها
%_vsflags_erase VSFLAGS
%_vsflags_install VSFLAGS
%_vsflags_query VSFLAGS
%_vsflags_rebuilddb VSFLAGS
%_vsflags_verify VSFLAGS
فلگهای اعتبارسنجی (Verification flags)
فلگهای اعتبارسنجی چکیده/امضا برای عملیات گوناگون rpm توسط ماسک بیتی موسوم به VSFLAGS کنترل میشوند. این فلگها جنبههای گوناگون بررسی مجموع مقابلهای و اعتبارسنجی امضای دیجیتال را هنگام خواندن فایلهای بسته rpm و هدرهای آنها کنترل میکنند.
متغیر VSFLAGS از طریق عملیات OR بیتی میان فلگهای تکی تشکیل میشود:
- 0x00001 (RPMVSF_NOHDRCHK): هدرها از rpmdb بررسی نشوند
- 0x00100 (RPMVSF_NOSHA1HEADER): چکیده SHA1 هدر بررسی نشود
- 0x00200 (RPMVSF_NOSHA256HEADER): چکیده SHA256 هدر بررسی نشود
- 0x00400 (RPMVSF_NODSAHEADER): امضا(های) DSA هدر بررسی نشود
- 0x00800 (RPMVSF_NORSAHEADER): امضا(های) RSA هدر بررسی نشود
- 0x01000 (RPMVSF_NOOPENPGP): امضا(های) OpenPGP هدر بررسی نشود
- 0x02000 (RPMVSF_NOSHA3_256HEADER): چکیده SHA3_256 هدر بررسی نشود
- 0x04000 (RPMVSF_NOSHA512PAYLOAD): چکیده SHA512 بار بسته (payload) بررسی نشود
- 0x08000 (RPMVSF_NOSHA3_256PAYLOAD): چکیده SHA3_256 بار بسته بررسی نشود
- 0x10000 (RPMVSF_NOSHA256PAYLOAD): چکیده SHA256 بار بسته بررسی نشود
- 0x20000 (RPMVSF_NOMD5): چکیده سنتی MD5 هدر+بار بسته بررسی نشود
- 0x40000 (RPMVSF_NODSA): امضای سنتی DSA هدر+بار بسته بررسی نشود
- 0x80000 (RPMVSF_NORSA): امضای سنتی RSA هدر+بار بسته بررسی نشود
اتصالات پایتون RPM (Python bindings) میتوانند برای کار با این مقادیر مفید باشند، برای نمونه:
>>> import rpm >>> hex(rpm.RPMVSF_NOSHA1HEADER) '0x100' >>> hex(rpm.RPMVSF_NOSHA1HEADER|rpm.RPMVSF_NOMD5) '0x20100' >>>
الگوریتمهای درهمسازی (Hash algorithms)
الگوریتمهای درهمسازی زیر (که با HASHALGO مشخص میشوند) برای rpm شناختهشده هستند، اما در دسترس بودن آنها بسته به نحوه ساخت rpm و کتابخانههای زیربنایی آن ممکن است متفاوت باشد:
- 1: MD5 (منسوخشده)
- 2: SHA1 (منسوخشده)
- 8: SHA256
- 9: SHA384
- 10: SHA512
- 12: SHA3-256
- 14: SHA3-512
محیط (ENVIRONMENT)
اگر متغیر محیطی XDG_CONFIG_HOME تنظیم شده باشد، جایگزین ~/.config در macro path میشود.
همچنین ببینید (SEE ALSO)
rpm(8), rpm-common(8), rpm-macrofile(5), rpm-rpmrc(5), rpm-macros(7)
| 2026-03-06 | RPM 6.0.1 |