الفصل 10.1 - apt (Debian/Ubuntu)
أهداف التعلم
في نهاية هذا الفصل، ستكون قادرًا على:
- استخدام apt لتثبيت الحزم
- تحديث النظام
- إدارة المستودعات
- حل التبعيات
- البحث عن الحزم
- فهم الفرق بين apt و apt-get
ما هو apt؟
apt (أداة الحزم المتقدمة) هو مدير الحزم لـ Debian و Ubuntu.
الوظائف:
- تثبيت/إزالة الحزم
- تحديث النظام
- إدارة التبعيات
- البحث عن الحزم
الأوامر الأساسية
التحديث
# تحديث قائمة الحزم
sudo apt update
# تحديث الحزم المثبتة
sudo apt upgrade
# تحديث كامل (يشمل تغييرات التبعيات)
sudo apt full-upgrade
# تحديث وترقية في أمر واحد
sudo apt update && sudo apt upgrade
التثبيت
# تثبيت حزمة
sudo apt install nom-paquet
# تثبيت عدة حزم
sudo apt install paquet1 paquet2 paquet3
# تثبيت بدون تأكيد
sudo apt install -y nom-paquet
# تثبيت إصدار محدد
sudo apt install nom-paquet=version
الإزالة
# إزالة حزمة (يحتفظ بالإعدادات)
sudo apt remove nom-paquet
# إزالة حزمة والإعدادات
sudo apt purge nom-paquet
# إزالة التبعيات غير المستخدمة
sudo apt autoremove
# تنظيف الكاش
sudo apt clean
sudo apt autoclean
البحث والمعلومات
البحث
# البحث عن حزمة
apt search mot-cle
# البحث بالاسم الدقيق
apt search --names-only nom-paquet
# عرض معلومات الحزمة
apt show nom-paquet
# قائمة الحزم المثبتة
apt list --installed
# قائمة الحزم المتاحة للتحديث
apt list --upgradable
المعلومات
# معلومات مفصلة
apt show nom-paquet
# التبعيات
apt depends nom-paquet
# الحزم التابعة
apt rdepends nom-paquet
# محتوى حزمة
dpkg -L nom-paquet
المستودعات
ملفات التكوين
# قائمة المستودعات
cat /etc/apt/sources.list
ls /etc/apt/sources.list.d/
# الصيغة
deb http://archive.ubuntu.com/ubuntu/ jammy main restricted
deb-src http://archive.ubuntu.com/ubuntu/ jammy main restricted
إضافة مستودع
# الطريقة 1: ملف في sources.list.d/
echo "deb http://repo.example.com/ubuntu jammy main" | \
sudo tee /etc/apt/sources.list.d/mon-repo.list
# إضافة مفتاح GPG
wget -qO - http://repo.example.com/key.gpg | sudo apt-key add -
# تحديث
sudo apt update
مستودع PPA (Ubuntu)
# إضافة PPA
sudo add-apt-repository ppa:nom/ppa
# إزالة PPA
sudo add-apt-repository --remove ppa:nom/ppa
# تحديث
sudo apt update
apt مقابل apt-get
apt (حديث)
# واجهة حديثة، موصى بها
sudo apt update
sudo apt install
sudo apt upgrade
sudo apt search
apt-get (تقليدي)
# لا يزال يعمل
sudo apt-get update
sudo apt-get install
sudo apt-get upgrade
الفرق:
aptأكثر سهولة في الاستخدام (شريط التقدم، الألوان)apt-getأكثر انخفاضًا في المستوى- استخدم
aptللاستخدام اليومي
أمثلة عملية
التثبيت الكامل
# تحديث
sudo apt update
# تثبيت حزمة
sudo apt install nginx
# التحقق من التثبيت
systemctl status nginx
# عرض الإصدار
nginx -v
تحديث النظام
#!/bin/bash
# سكريبت التحديث
echo "تحديث قائمة الحزم..."
sudo apt update
echo "تحديث الحزم..."
sudo apt upgrade -y
echo "تنظيف..."
sudo apt autoremove -y
sudo apt autoclean
echo "تم!"
البحث والتثبيت
# البحث
apt search nginx
# عرض المعلومات
apt show nginx
# التثبيت
sudo apt install nginx
# التحقق
dpkg -l | grep nginx
حل المشكلات
التبعيات المكسورة
# إصلاح التبعيات
sudo apt --fix-broken install
# إصلاح كامل
sudo apt --fix-missing install
sudo dpkg --configure -a
الكاش التالف
# تنظيف الكاش
sudo apt clean
sudo apt autoclean
# إعادة بناء الكاش
sudo apt update
حزمة محظورة
# عرض العمليات التي تستخدم الحزمة
sudo lsof | grep nom-paquet
# فرض التثبيت
sudo dpkg --force-depends -i paquet.deb
ملخص
في هذا الفصل، تعلمت:
apt: مدير حزم Debian/Ubuntu
الأوامر: update، upgrade، install، remove، search
المستودعات: sources.list، sources.list.d/، PPA
البحث: search، show، list
المشكلات: --fix-broken، clean، dpkg
الممارسة: التثبيت، التحديث، الصيانة
الخطوات التالية
الفصل 10.2: yum/dnf (Red Hat/CentOS)
الفصل 10.3: التجميع من المصادر
تم إنشاء الفصل في: ديسمبر 2024