الفصل 10.2 - yum/dnf (Red Hat/CentOS)
الأهداف التعليمية
في نهاية هذا الفصل، ستكون قادرًا على:
- استخدام yum و dnf لتثبيت الحزم
- تحديث النظام
- إدارة المستودعات
- فهم مجموعات الحزم
- استخدام المعاملات
yum مقابل dnf
yum (الكلاسيكي)
Yellowdog Updater Modified:
- Red Hat/CentOS 7 والإصدارات الأقدم
- متاح دائمًا
- واجهة كلاسيكية
dnf (الحديث)
Dandified YUM:
- Red Hat/CentOS 8+ و Fedora
- خليفة yum
- أسرع وأكثر حداثة
- نفس بناء الجملة مثل yum
ملاحظة: yum غالبًا ما يكون اختصارًا لـ dnf على الأنظمة الحديثة.
الأوامر الأساسية
التحديث
# تحديث قائمة الحزم
sudo yum check-update
sudo dnf check-update
# تحديث الحزم
sudo yum update
sudo dnf upgrade
# تحديث حزمة محددة
sudo yum update nom-paquet
sudo dnf upgrade nom-paquet
التثبيت
# تثبيت حزمة
sudo yum install nom-paquet
sudo dnf install nom-paquet
# تثبيت عدة حزم
sudo yum install paquet1 paquet2 paquet3
# تثبيت بدون تأكيد
sudo yum install -y nom-paquet
# تثبيت من ملف .rpm
sudo yum localinstall fichier.rpm
الإزالة
# إزالة حزمة
sudo yum remove nom-paquet
sudo dnf remove nom-paquet
# إزالة حزمة والتبعيات
sudo yum autoremove nom-paquet
# تنظيف الكاش
sudo yum clean all
sudo dnf clean all
البحث والمعلومات
البحث
# البحث عن حزمة
yum search mot-cle
dnf search mot-cle
# البحث بالاسم
yum list nom-paquet
dnf list nom-paquet
# معلومات الحزمة
yum info nom-paquet
dnf info nom-paquet
# قائمة الحزم المثبتة
yum list installed
dnf list installed
# قائمة الحزم المتاحة
yum list available
dnf list available
المعلومات
# معلومات مفصلة
yum info nom-paquet
# التبعيات
yum deplist nom-paquet
dnf repoquery --deplist nom-paquet
# محتوى الحزمة
rpm -ql nom-paquet
المستودعات
عرض المستودعات
# قائمة المستودعات المفعلة
yum repolist
dnf repolist
# جميع المستودعات
yum repolist all
dnf repolist all
# معلومات المستودع
yum repoinfo nom-repo
dnf repoinfo nom-repo
إضافة مستودع
# تثبيت مستودع RPM
sudo yum install epel-release
sudo dnf install epel-release
# إضافة مستودع يدويًا
# إنشاء ملف: /etc/yum.repos.d/mon-repo.repo
[mon-repo]
name=Mon Repository
baseurl=http://repo.example.com/rhel/$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://repo.example.com/RPM-GPG-KEY
# إعادة التحميل
sudo yum makecache
sudo dnf makecache
EPEL (حزم إضافية)
# تثبيت EPEL
sudo yum install epel-release
sudo dnf install epel-release
# التحقق
yum repolist | grep epel
مجموعات الحزم
إدارة المجموعات
# قائمة المجموعات المتاحة
yum grouplist
dnf group list
# معلومات المجموعة
yum groupinfo "Development Tools"
dnf group info "Development Tools"
# تثبيت المجموعة
sudo yum groupinstall "Development Tools"
sudo dnf group install "Development Tools"
# إزالة المجموعة
sudo yum groupremove "Development Tools"
المعاملات والتاريخ
التاريخ
# عرض التاريخ
yum history
dnf history
# عرض معاملة محددة
yum history info 5
dnf history info 5
# إلغاء معاملة
sudo yum history undo 5
sudo dnf history undo 5
# تكرار معاملة
sudo yum history redo 5
أمثلة عملية
التثبيت الكامل
# التحديث
sudo yum check-update
# تثبيت حزمة
sudo yum install httpd
# بدء الخدمة
sudo systemctl start httpd
sudo systemctl enable httpd
# التحقق
systemctl status httpd
تحديث النظام
#!/bin/bash
# سكربت التحديث
echo "التحقق من التحديثات..."
sudo yum check-update
echo "تحديث الحزم..."
sudo yum update -y
echo "التنظيف..."
sudo yum clean all
echo "تم!"
حل المشاكل
التبعيات
# حل التبعيات
sudo yum deplist nom-paquet
# فرض التثبيت
sudo rpm -ivh --nodeps paquet.rpm # انتبه!
الكاش
# تنظيف الكاش
sudo yum clean all
sudo yum clean metadata
sudo yum clean packages
# إعادة بناء الكاش
sudo yum makecache
الملخص
في هذا الفصل، تعلمت:
yum/dnf: مدراء حزم Red Hat/CentOS/Fedora
الأوامر: install, update, remove, search, info
المستودعات: repolist, epel-release, ملفات .repo
المجموعات: grouplist, groupinstall
التاريخ: history, undo, redo
الممارسة: التثبيت، التحديث، الصيانة
الخطوات التالية
الفصل 10.3: التجميع من المصادر
الوحدة 11: المراقبة والسجلات
تم إنشاء الفصل في: ديسمبر 2024