سیستم rpm.versions در cPanel & WHM (چگونه بسته‌ها را Override کنیم – نسخه‌های 110 تا جدیدترین)

این مقاله سیستم rpm.versions در cPanel & WHM را توضیح می‌دهد، اینکه چگونه بسته‌های RPM و DEB مدیریت می‌شوند، چطور می‌توان تنظیمات پیش‌فرض cPanel را Override کرد، ساختار فایل‌های YAML چگونه است، و چگونه با ابزار update_local_rpm_versions به‌صورت امن تغییرات اعمال کنیم. همچنین شامل مثال‌های کاربردی و هشدارهای مهم است.

rpm.versions, cPanel WHMpackage override, local.versions, update_local_rpm_versionsunmanaged packages

~3 min read • Updated Feb 18, 2026

1. مقدمه


سیستم rpm.versions در cPanel & WHM مسئول مدیریت نصب، حذف و به‌روزرسانی بسته‌های RPM در سیستم‌های مبتنی بر Red Hat (AlmaLinux، Rocky، CentOS، CloudLinux) و بسته‌های DEB در Ubuntu است. این سیستم تضمین می‌کند که نسخه‌های صحیح بسته‌های موردنیاز cPanel همیشه نصب باشند.


فایل اصلی تنظیمات در مسیر زیر قرار دارد:

/usr/local/cpanel/etc/rpm.versions

هشدار: این فایل در هر آپدیت cPanel بازنویسی می‌شود و نباید مستقیماً ویرایش شود.


برای Override کردن تنظیمات، باید از مسیر زیر استفاده کنید:

/var/cpanel/rpm.versions.d/

فایل‌های این پوشه (با پسوند .versions و فرمت YAML) نسبت به فایل اصلی اولویت بالاتری دارند.




2. فایل‌های مهم در /var/cpanel/rpm.versions.d/


فایل توضیحات اولویت توصیه
local.versions فایل مخصوص ادمین سرور بالاترین تنها فایلی که باید دستی ویرایش شود
*.versions (third‑party) فایل افزونه‌ها و توسعه‌دهندگان متوسط ممکن است با هم تداخل داشته باشند
/usr/local/cpanel/etc/rpm.versions فایل پیش‌فرض cPanel پایین فقط خواندنی



3. ساختار فایل .versions (YAML)


فایل‌های Override با فرمت YAML هستند و نسبت به فاصله‌گذاری حساس‌اند.

file_format:
  version: 2

install_targets: {}
rpm_groups: {}
deferred_settings: {}
deferred_optional: {}
rpm_locations: {}
srpm_sub_packages: {}
srpm_versions: {}

target_settings:
  pure-ftpd: unmanaged   # مثال

url_templates: {}

بخش مهم برای ما: target_settings



4. وضعیت‌های ممکن برای Targetها


وضعیت توضیح کاربرد هشدار
installed cPanel بسته را نصب و فعال نگه می‌دارد حالت پیش‌فرض
uninstalled cPanel بسته را حذف می‌کند وقتی سرویس را نمی‌خواهید
unmanaged cPanel هیچ دخالتی نمی‌کند وقتی خودتان مدیریت می‌کنید خطرناک: ممکن است آپگریدها را بلاک کند

هشدارهای unmanaged:

  • بسته به‌روزرسانی خودکار نمی‌شود.
  • اگر FTP unmanaged باشد، رابط FTP در cPanel ممکن است خراب شود.
  • unmanaged کردن MySQL/MariaDB می‌تواند آپگریدهای آینده را غیرممکن کند.



5. اسکریپت update_local_rpm_versions


برای جلوگیری از خطاهای YAML، از این اسکریپت استفاده کنید.


افزودن یا ویرایش Target:

/usr/local/cpanel/scripts/update_local_rpm_versions --edit target_settings.pure-ftpd unmanaged

حذف Override:

/usr/local/cpanel/scripts/update_local_rpm_versions --del target_settings.pure-ftpd

اعمال تغییرات:

/usr/local/cpanel/scripts/check_cpanel_pkgs --fix



6. مثال‌های کاربردی


غیرفعال کردن Pure‑FTPd (unmanaged):

/usr/local/cpanel/scripts/update_local_rpm_versions --edit target_settings.pure-ftpd unmanaged
/usr/local/cpanel/scripts/update_local_rpm_versions --edit target_settings.proftpd unmanaged
/usr/local/cpanel/scripts/check_cpanel_pkgs --fix

حذف ClamAV (uninstalled):

/usr/local/cpanel/scripts/update_local_rpm_versions --edit target_settings.clamav uninstalled
/usr/local/cpanel/scripts/check_cpanel_pkgs --fix

بازگرداندن به حالت پیش‌فرض cPanel:

/usr/local/cpanel/scripts/update_local_rpm_versions --del target_settings.clamav
/usr/local/cpanel/scripts/check_cpanel_pkgs --fix



7. نکات طلایی


  • هرگز فایل /usr/local/cpanel/etc/rpm.versions را ویرایش نکنید.
  • افزونه‌های third‑party ممکن است روی یک target تداخل ایجاد کنند.
  • local.versions بالاترین اولویت را دارد.
  • با unmanaged بسیار محتاط باشید؛ ممکن است آپگریدها را مختل کند.



8. نتیجه‌گیری


سیستم rpm.versions یک ابزار قدرتمند برای کنترل مدیریت بسته‌ها در cPanel & WHM است. با استفاده از فایل‌های Override و اسکریپت update_local_rpm_versions می‌توانید رفتار بسته‌ها را بدون خطر از دست رفتن تنظیمات سفارشی کنترل کنید. همیشه از بهترین روش‌ها پیروی کنید و فقط در مواقع ضروری از unmanaged استفاده کنید.


Written & researched by Dr. Shahin Siami