معدل الدورات في الدقيقة (مدير حزمة القبعة الحمراء) هو أداة إدارة حزم مفتوحة المصدر وشائعة الاستخدام افتراضيًا لأنظمة القبعة الحمراء المبنية على مثل CentOS Fedora وRocky وAlma Linux.
تمكن أداة إدارة حزم rpm المسؤولين عن النظام والمستخدمين من تثبيت وتحديث وإلغاء تثبيت واستعلام والتحقق من وإدارة حزم البرمجيات على أنظمة التشغيل Unix/Linux، والتي كانت معروفة سابقًا باسم ملف .rpm
وتحتوي على برامج البرمجيات المترجمة والمكتبات المطلوبة بواسطة الحزم.
يقدم هذا المقال 20 مثالًا مفيدًا عن أوامر RPM التي قد تكون مفيدة لك. باستخدام هذه الأوامر RPM، يمكنك إدارة التثبيت والتحديث وإزالة الحزم على أنظمة Linux الخاصة بك.
حقائق عن RPM
فيما يلي بعض الحقائق حول RPM (مدير حزمة القبعة الحمراء):
- يتوفر RPM بحرية ويتم إصداره بموجب رخصة العام العامة (GPL).
- يحتفظ RPM بقاعدة بيانات لجميع الحزم المثبتة، ويخزن هذه المعلومات في دليل
/var/lib/rpm
. - يعمل RPM كالطريقة الرئيسية لتثبيت الحزم على أنظمة Linux. إذا تم تثبيت الحزم باستخدام الشفرة المصدرية، فإن RPM لا يديرها.
- يعمل RPM مع ملفات
.rpm
، والتي تحتوي على معلومات الحزمة الأساسية مثل هويتها ومصدرها والتبعيات وتفاصيل الإصدار وغير ذلك.
وضعيات أساسية لأمر RPM
فيما يلي الوضعيات الرئيسية لأمر RPM:
- تثبيت – يقوم الأمر
rpm -i
بتثبيت حزمة جديدة على النظام. - ترقية – يقوم الأمر
rpm -U
بترقية حزمة موجودة إلى نسخة أحدث. - إزالة – يقوم الأمر
rpm -e
بإلغاء تثبيت أو إزالة حزمة من النظام. - استعلام – يقوم الأمر
rpm -q
بالاستعلام عن قاعدة بيانات RPM للحصول على معلومات حول الحزم المثبتة. - التحقق – يقوم الأمر
rpm -V
بالتحقق من سلامة ملفات الحزم المثبتة. - تحديث – يقوم الأمر
rpm -F
بترقية أو تثبيت حزمة فقط إذا كانت مثبتة بالفعل. - إعادة بناء قاعدة البيانات – يقوم الأمر
rpm --rebuilddb
بإعادة بناء قاعدة بيانات RPM، مع حل مشاكل تلف قاعدة البيانات. - استيراد مفتاح GPG – يقوم الأمر
rpm --import
باستيراد مفتاح GPG المستخدم للتحقق من توقيع الحزمة. - استعلام الكل – يقوم الأمر
rpm -qa
بعرض قائمة بجميع الحزم المثبتة على النظام. - استعلام الملفات – يقوم الأمر
rpm -ql
بعرض قائمة بجميع الملفات التي تم تثبيتها بواسطة حزمة محددة. - استعلام الوثائق – يقوم الأمر
rpm -qd
بعرض قائمة بملفات الوثائق المقدمة من قبل حزمة. - استعلام الاعتماديات – يقوم الأمر
rpm -qR
بعرض قائمة بالاعتماديات الزمنية لحزمة. - توفير الاستعلام – يُظهر الأمر
rpm -q --provides
القدرات التي يوفرها الحزمة. - الاستعلام عن المتطلبات – يُظهر الأمر
rpm -q --requires
التبعيات المطلوبة من قبل الحزمة.
أين يمكن العثور على حزم RPM
يمكنك العثور على حزم RPM في عدة أماكن، اعتمادًا على توزيعة Linux الخاصة بك. هنا بعض المواقع الشائعة التي يمكنك من خلالها العثور على حزم RPM وتنزيلها.
يجب أن تتذكر أنك يجب أن تكون مستخدمًا رئيسيًا عند تثبيت الحزم في لينكس، مع أذونات الجذر يمكنك إدارة أوامر rpm بخياراتها المناسبة.
1. كيفية فحص توقيع حزمة RPM
تحقق دائمًا من توقيع PGP للحزم قبل تثبيتها على أنظمة لينكس الخاصة بك وتأكد من أن سلامتها وأصلها موافق.
استخدم الأمر التالي مع --checksig
(فحص التوقيع) خيار للتحقق من توقيع حزمة تسمى hardinfo.
rpm --checksig hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm: digests OK
2. كيفية تثبيت حزمة RPM
لتثبيت حزمة برنامج RPM، استخدم الأمر التالي مع -ivh
خيار، والتي ستثبت حزمة rpm تسمى hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm على نظام لينكس.
rpm -ivh hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm Verifying... ################################# [100%] Preparing... ################################# [100%] Updating / installing... 1:hardinfo-2.0.11-1 ################################# [100%]
دعونا نفصل مكونات الأمر أعلاه:
-i
: تثبيت حزمة-v
: مفصل لعرض أجمل-h
: طباعة نجمات (#) لإظهار تقدم تثبيت البرنامج الثابت.
3. كيفية فحص التبعيات لحزمة RPM قبل التثبيت
لنفترض أنك ترغب في إجراء فحص للتبعيات قبل تثبيت أو ترقية حزمة. على سبيل المثال، استخدم الأمر التالي لفحص التبعيات لحزمة hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm.
يستعرض الأمر ويعرض التبعيات التشغيلية المطلوبة من حزمة “hardinfo“، مما يساعد على تحديد والتأكد من توافر جميع التبعيات اللازمة قبل تثبيت الحزمة.
rpm -qpR hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm libX11.so.6()(64bit) libatk-1.0.so.0()(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.38)(64bit) libc.so.6(GLIBC_2.7)(64bit) libcairo-gobject.so.2()(64bit) libcairo.so.2()(64bit) ...
دعونا نحلل مكونات الأمر أعلاه:
-q
: استعلام حزمة.-p
: سرد القدرات التي توفرها هذه الحزمة.-R
: سرد القدرات التي تعتمد عليها هذه الحزمة.
4. كيفية تثبيت حزمة RPM بدون تبعيات
لتثبيت حزمة rpm بدون تبعيات، يمكنك استخدام خيار --nodeps
، الذي سيقوم بتثبيت حزمة RPM بشكل عزل دون فحص أو حل تبعيات.
rpm -ivh --nodeps hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm
سيقوم الأمر أعلاه بتثبيت حزمة RPM بشكل عزل من خلال تجاهل أخطاء التبعيات، ولكن إذا كانت تلك الملفات التبعية مفقودة، فلن يعمل البرنامج على الإطلاق حتى تقوم بتثبيتها.
5. كيفية فحص حزمة RPM المثبتة
للتحقق من حزمة rpm المثبتة، يمكنك استخدام خيار -q
، الذي سيستعلم ويعرض معلومات حول الإصدار المثبت من الحزمة.
rpm -q hardinfo hardinfo-2.0.11-1.x86_64
6. كيفية العثور على مواقع تثبيت ملفات RPM
لعرض جميع الملفات لحزمة rpm المثبتة ، استخدم -ql
(استعلام عن القائمة) مع أمر rpm.
rpm -ql hardinfo /usr/bin/hardinfo2 /usr/lib/.build-id /usr/lib/.build-id/3a /usr/lib/.build-id/53 /usr/lib/.build-id/7c /usr/lib/.build-id/ba /usr/lib/.build-id/e0 /usr/lib64/hardinfo2 /usr/lib64/hardinfo2/modules /usr/lib64/hardinfo2/modules/benchmark.so /usr/lib64/hardinfo2/modules/computer.so /usr/lib64/hardinfo2/modules/devices.so /usr/lib64/hardinfo2/modules/network.so ...
7. كيفية سرد الحزم RPM المثبتة مؤخرًا
استخدم الأمر rpm التالي مع -qa
(استعلام عن الكل) ، سيسرد جميع الحزم rpm المثبتة مؤخرًا.
rpm -qa --last hardinfo-2.0.11-1.x86_64 Mon 04 Mar 2024 01:32:14 PM IST pipewire-pulseaudio-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST pipewire-jack-audio-connection-kit-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST pipewire-alsa-1.0.3-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST libsoup-devel-2.74.3-3.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST json-glib-devel-1.8.0-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST gtk3-devel-3.24.41-1.fc39.x86_64 Mon 04 Mar 2024 01:32:02 PM IST xdg-desktop-portal-gtk-1.15.1-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST xdg-desktop-portal-1.18.2-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST libcanberra-gtk3-0.30-32.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST gtk3-3.24.41-1.fc39.x86_64 Mon 04 Mar 2024 01:32:01 PM IST ...
8. كيفية سرد جميع الحزم المثبتة RPM
اكتب الأمر التالي لطباعة جميع أسماء الحزم المثبتة على نظام Linux الخاص بك.
rpm -qa fonts-filesystem-2.0.5-12.fc39.noarch libreport-filesystem-2.17.11-3.fc39.noarch hunspell-filesystem-1.7.2-5.fc39.x86_64 abattis-cantarell-vf-fonts-0.301-10.fc39.noarch fedora-gpg-keys-39-1.noarch fedora-repos-39-1.noarch setup-2.14.4-1.fc39.noarch filesystem-3.18-6.fc39.x86_64 basesystem-11-18.fc39.noarch default-fonts-core-sans-4.0-9.fc39.noarch langpacks-fonts-en-4.0-9.fc39.noarch ...
9. كيفية ترقية حزمة RPM
إذا كنا نريد ترقية أي حزمة RPM ” –U
” (ترقية) سيتم استخدام الخيار. إحدى المزايا الرئيسية لاستخدام هذا الخيار هو أنه لن يقوم فقط بترقية الإصدار الأحدث من أي حزمة ، بل سيحافظ أيضًا على نسخة احتياطية من الحزمة القديمة بحيث في حالة لم يعمل الحزمة المترقية الأحدث ، يمكن استخدام الحزمة المثبتة مسبقًا مرة أخرى.
rpm -Uvh hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm
10. كيفية التخلص من حزمة RPM
للغاء تثبيت حزمة RPM ، على سبيل المثال ، نستخدم اسم الحزمة hardinfo ، وليس اسم الحزمة الأصلي hardinfo-2.0.11-FedoraLinux-39.x86_64.rpm. يتم استخدام الخيار -e (محو)
لإزالة الحزمة.
rpm -evv hardinfo
11. كيفية إزالة حزمة RPM بدون تبعيات
يُستخدم الخيار --nodeps
(لا تتحقق من التبعيات) لإزالة الحزمة rpm بقوة من النظام. لكن احتفظ بفكرة إزالة حزمة معينة قد تكسر تطبيقات عامة تعمل.
rpm -ev --nodeps hardinfo
12. كيفية العثور على حزمة RPM لملف معين
لنفترض أن لديك قائمة من الملفات وترغب في معرفة أي حزمة تنتمي إلى هذه الملفات. على سبيل المثال، سيعرض الأمر التالي بخيار -qf
(استعلام ملف) ملف /usr/bin/htpasswd الذي يملكه الحزمة httpd-tools-2.4.58-1.fc39.x86_64.
rpm -qf /usr/bin/htpasswd httpd-tools-2.4.58-1.fc39.x86_64
13. كيفية الاستعلام عن معلومات الحزمة RPM المثبتة
لنفترض أنك قد قمت بتثبيت حزمة rpm وترغب في معرفة المعلومات حول الحزمة. سيطبع الخيار -qi
(استعلام معلومات) التالي المعلومات المتاحة للحزمة المثبتة.
rpm -qi hardinfo Name : hardinfo Version : 2.0.11 Release : 1 Architecture: x86_64 Install Date: Mon 04 Mar 2024 01:32:14 PM IST Group : unknown Size : 5174404 License : GPL2+ Signature : (none) Source RPM : hardinfo-2.0.11-1.src.rpm Build Date : Sat 02 Mar 2024 06:37:42 AM IST Build Host : fedora.bigbear.dk Relocations : /usr Vendor : Humanity URL : https://www.hardinfo2.org Summary : hardinfo2 built using CMake Description : Hardinfo2 is a small application that displays information about your hardware and operating system. It has online benchmarking to check your machine performance against other machines.
14. الحصول على معلومات حزمة RPM قبل التثبيت
لقد قمت بتنزيل حزمة من الإنترنت وترغب في معرفة معلومات الحزمة قبل التثبيت. على سبيل المثال، سيقوم الخيار التالي -qip
(استعلام معلومات الحزمة) بطباعة معلومات الحزمة sqlbuddy.
rpm -qip sqlbuddy Name : sqlbuddy Relocations: (not relocatable) Version : 1.3.3 Vendor: (none) Release : 1 Build Date: Wed 02 Nov 2011 11:01:21 PM BDT Install Date: (not installed) Build Host: rpm.bar.baz Group : Applications/Internet Source RPM: sqlbuddy-1.3.3-1.src.rpm Size : 1155804 License: MIT Signature : (none) Packager : Erik M Jacobs URL : http://www.sqlbuddy.com/ Summary : SQL Buddy â Web based MySQL administration Description : SQLBuddy is a PHP script that allows for web-based MySQL administration.
15. كيفية الاستعلام عن الوثائق لحزمة RPM المثبتة
للحصول على قائمة الوثائق المتاحة لحزمة مثبتة، استخدم الأمر التالي مع الخيار -qdf
(استعلام عن ملف الوثائق) سيعرض الصفحات الدليلية المتعلقة بحزمة vmstat.
rpm -qdf /usr/bin/vmstat /usr/share/doc/procps-ng/AUTHORS /usr/share/doc/procps-ng/FAQ /usr/share/doc/procps-ng/NEWS /usr/share/doc/procps-ng/README.md /usr/share/doc/procps-ng/bugs.md /usr/share/man/man1/free.1.gz /usr/share/man/man1/pgrep.1.gz ...
16. كيفية التحقق من حزمة RPM
تحقق الحزمة من خلال مقارنة معلومات الملفات المثبتة من الحزمة مع قاعدة بيانات rpm. يُستخدم -Vp
(التحقق من الحزمة) للتحقق من حزمة.
rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm S.5....T. c /etc/httpd/conf.d/sqlbuddy.conf
17. كيفية التحقق من جميع حزم RPM
اكتب الأمر التالي للتحقق من جميع حزم rpm المثبتة.
rpm -Va S.5....T. c /etc/rc.d/rc.local .......T. c /etc/dnsmasq.conf .......T. /etc/ld.so.conf.d/kernel-2.6.32-279.5.2.el6.i686.conf S.5....T. c /etc/yum.conf S.5....T. c /etc/yum.repos.d/epel.repo
18. كيفية استيراد مفتاح RPM GPG
للتحقق من حزم RHEL/CentOS/Fedora، يجب عليك استيراد مفتاح GPG. للقيام بذلك، قم بتنفيذ الأمر التالي. سيتم استيراد مفتاح CentOS 8 GPG.
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-8
19. كيفية عرض جميع مفاتيح RPM GPG المستوردة
لطباعة جميع مفاتيح GPG المستوردة في النظام الخاص بك، استخدم الأمر التالي.
rpm -qa gpg-pubkey* gpg-pubkey-0608b895-4bd22942 gpg-pubkey-7fac5991-4615767f gpg-pubkey-0f2672c8-4cd950ee gpg-pubkey-c105b9de-4e0fd3a3 gpg-pubkey-00f97f56-467e318a gpg-pubkey-6b8d79e6-3f49313d gpg-pubkey-849c449f-4cb9df30
20. كيفية إعادة بناء قاعدة بيانات RPM التالفة
أحيانًا تتلف قاعدة بيانات rpm وتوقف جميع وظائف rpm والتطبيقات الأخرى على النظام. لذلك، في هذا الوقت نحتاج إلى إعادة بناء قاعدة بيانات rpm واستعادتها بمساعدة الأمر التالي.
cd /var/lib rm __db* rpm --rebuilddb rpmdb_verify Packages
في الختام، تقدم أوامر rpm المقدمة دليلاً شاملاً لإدارة الحزم البرمجية بكفاءة على توزيعات Linux المعتمدة على RHEL.
Source:
https://www.tecmint.com/20-practical-examples-of-rpm-commands-in-linux/