الفلاتر
طريقة البحث
  • الكلمات العادية تجد الأسماء والنصوص والأمثلة.
  • "كلمتان" تجد العبارة بالضبط.
  • --name أو -x تجد خيارًا.
  • #كلمة تبحث داخل الأوامر فقط.
  • @grep تجد الدروس والمعامل التي تستخدم grep.
  • الفلاتر: cat:network · in:labs · level:rhcsa · ch:8 · root:yes. ضع ! قبل كلمة لاستبعادها. OR بين الكلمات تعني إحداها.
  • ↑ ↓ للتنقل · Enter للفتح · Esc للإغلاق · / للبحث

pip

تثبيت حزم Python للسكربتات والخدمات — والأفضل داخل بيئة افتراضية، مع إصدارات مثبّتة.

المستوى
أداة DevOps
المجموعة
أدوات البناء ولغات البرمجة
يحتاج root
لا
الحزمة
python3-pip
يُسمّى أيضًا
pip3

ماذا يفعل

‏pip يثبّت الحزم من PyPI (أو فهرس خاص). البيئة الافتراضية (python3 -m venv .venv) تبقي حزم مشروع واحد بعيدًا عن Python النظام. ‏requirements.txt يعرض الحزم، ومع إصدارات == يكون التثبيت نفسه في كل مرة.

أدوات DevOps كثيرة مكتوبة بـ Python ‏(Ansible و AWS CLI v1 وسكربتات كثيرة)، لذلك pip جزء من العمل اليومي.

طريقة الكتابة

pip install [OPTIONS] PACKAGE ... | -r requirements.txt

الأجزاء الرئيسية

الأوامر

install PKG / -r FILE
تثبيت حزم / من ملف requirements.
uninstall PKG
حذف حزمة.
freeze
طباعة الحزم المثبتة بإصداراتها الدقيقة.
list [--outdated]
عرض الحزم المثبتة (أو القديمة).
show PKG
التفاصيل: الإصدار والمكان والاعتماديات.
download PKG -d DIR
تنزيل الحزم بدون تثبيت (للتثبيت بدون إنترنت).
check
التأكد أن الاعتماديات متوافقة.
cache purge
تفريغ ذاكرة pip المؤقتة.

الخيارات 9

الأكثر استخدامًا

الخيارات

-r FILE
التثبيت من ملف requirements.
-U, --upgrade
الترقية إلى أحدث إصدار.
--user
التثبيت لهذا المستخدم فقط.
--no-cache-dir
عدم الاحتفاظ بذاكرة مؤقتة (صور Docker أصغر).
-i, --index-url URL
استخدام فهرس حزم آخر (مرآة خاصة).
--require-hashes
تثبيت الملفات التي قيمتها المشفّرة في ملف requirements فقط.
-c FILE
القيود: تحديد الإصدارات بدون تثبيت.
-e PATH
تثبيت قابل للتعديل لمشروع محلي.

أمثلة 11

$ مستخدم عادي# بصلاحية root (أو مع sudo)

  1. 1بيئة افتراضية لمشروع

    python3 -m venv .venv
    source .venv/bin/activate
    pip install -r requirements.txt
  2. 2تثبيت إصدار مثبّت

    pip install 'requests==2.32.3'
  3. 3حفظ الإصدارات الدقيقة

    pip freeze > requirements.txt
  4. 4صورة Python صغيرة

    cat Dockerfile
    FROM python:3.12-slim
    WORKDIR /app
    COPY requirements.txt .
    RUN pip install --no-cache-dir -r requirements.txt
    COPY . .
    USER 1000
    CMD ["python", "app.py"]
  5. 5تثبيت Ansible لمستخدم واحد

    python3 -m pip install --user ansible-core
  6. 6ما القديم؟

    pip list --outdated
  7. 7استخدام مرآة خاصة

    pip install -i https://nexus.example.com/repository/pypi/simple -r requirements.txt
  8. 8تثبيت مع فحص القيم المشفّرة (سلسلة التوريد)

    pip install --require-hashes -r requirements.lock
  9. 9التنزيل لخادم بدون إنترنت، ثم التثبيت هناك

    pip download -r requirements.txt -d wheels/
    pip install --no-index --find-links wheels/ -r requirements.txt
  10. 10أين حزمة وماذا تحتاج؟

    pip show boto3
  11. 11فحص الاعتماديات المكسورة

    pip check

انتبه

  • لا تستخدم sudo pip install على Python النظام، فقد يكسر أدوات النظام (dnf و apt). استخدم venv أو --user.
  • في التوزيعات الجديدة يرفض pip التثبيت في النظام ("externally-managed-environment") — استخدم venv.
  • الحزم غير المثبّتة تتغيّر من تحتك. ثبّتها بـ == أو ملف قفل.

الملفات

requirements.txt
قائمة حزم المشروع.
pip.conf (~/.config/pip/pip.conf)
عنوان الفهرس وإعدادات أخرى.

نصائح للحفظ

  • ‏python3 -m pip يضمن أنك تستخدم pip الخاص بـ Python الصحيح.
  • ‏pip-audit يفحص الحزم المثبتة بحثًا عن ثغرات CVE معروفة.

رموز الخروج

0تم.
1خطأ.