من UNIX إلى Linux: التاريخ الذي يفسّر كل شيء
خروج

الدرس 6 من 7 · التاريخ

ملحمة Red Hat — RHEL و Fedora و CentOS و Rocky و AlmaLinux

40 د Rocky Linux 9 الإصدارات 6, 7, 8, 9, 10

الهدف

أن تفهم عائلة Red Hat، الأكثر انتشارًا في الشركات الكبرى: من يفعل ماذا بين RHEL و Fedora و CentOS و Rocky و AlmaLinux، ولماذا اختفى CentOS، وما الذي يتغيّر من إصدار RHEL إلى آخر. وهذا هو الخيط الناظم لمسار Red Hat في هذه الدورة.

الخلاصة

  • RHEL (Red Hat Enterprise Linux) هي نسخة الشركات، تُباع باشتراك (دعم + تحديثات)، مع 10 سنوات من الدعم لكل إصدار.
  • Fedora (2003) هي التوزيعة المجتمعية التي يُحضَّر فيها الجديد؛ و CentOS Stream هي معاينة للتحديث القادم من RHEL.
  • كان CentOS (2004) إعادة ترجمة مجانية لـ RHEL. وفي نهاية 2020 أوقفت Red Hat CentOS Linux 8 قبل أوانه (نهاية 2021)؛ أما CentOS 7 فقد توقف في 30 يونيو 2024.
  • Rocky Linux و AlmaLinux (2021) تسلّما المشعل: مجانيان ومتوافقان مع RHEL.
  • كل إصدار من RHEL يأتي بتغيير كبير: systemd في الإصدار 7، و dnf في 8، و OpenSSL 3 في 9، ووضع الصورة (mode image) في 10…

1. من Red Hat Linux إلى RHEL (1994-2003)

رأيت في الدرس 0.5 ولادة Red Hat Linux سنة 1994. وطوال عشر سنوات تقريبًا، كانت توزيعة واحدة، مجانية (قابلة للتنزيل) ومبيعة في علبة مع دليل ودعم في الوقت نفسه. وقد وصلت إلى الإصدار Red Hat Linux 9 (2003).

المشكلة: إصدار جديد كان يصدر تقريبًا كل ستة أشهر. والبنك لا يستطيع إعادة تثبيت خوادمه مرتين في السنة. لذلك أطلقت Red Hat سنة 2002 إصدار Red Hat Linux Advanced Server 2.1، الذي سرعان ما سُمّي Red Hat Enterprise Linux: نسخة مستقرة، ومعتمَدة مع البرمجيات الكبرى (Oracle و SAP…) ومع عتاد المصنّعين (Dell و HP و IBM)، ومصونة لسنوات.

وفي سنة 2003 فصلت Red Hat نهائيًّا بين جمهورَيها:

لفائدة… التوزيعة الثمن الإيقاع
الشركات RHEL اشتراك مدفوع إصدار رئيسي كل 3 إلى 5 سنوات، مدعوم 10 سنوات
المجتمع والشغوفون Fedora (Fedora Core 1، نوفمبر 2003؛ واختفت كلمة «Core» سنة 2007) مجانية إصدار كل 6 أشهر تقريبًا، مدعوم نحو 13 شهرًا

احذر فكرة شائعة خاطئة: اشتراك RHEL ليس ثمن «رخصة» بالمعنى المعروف في Windows. فالشيفرة حرة (GPL وغيرها). والزبون يدفع مقابل الدعم، والتحديثات، والاعتمادات، والوصول إلى أدوات Red Hat.

2. CentOS: نظام RHEL مجانًا (2004-2014)

بما أن RHEL يتكوّن من برمجيات حرة، فإن Red Hat تنشر شيفرته المصدرية. فخطرت لمتطوّعين فكرة بسيطة: إعادة ترجمة هذه الشيفرة، وحذف شعارات Red Hat وعلاماتها التجارية، ونشر النتيجة مجانًا.

إنه CentOS (Community ENTerprise Operating System)، الذي صدرت أولى إصداراته سنة 2004. والنتيجة مطابقة لـ RHEL «علّةً بعلّة»، لكن دون دعم رسمي. وقامت مشاريع أخرى بالشيء نفسه، مثل Scientific Linux (مختبرا Fermilab و CERN، وتوقّف مع الإصدار 7).

وسرعان ما أصبح CentOS الخادم المجاني المفضّل لدى:

  • مستضيفي المواقع (لوحة الاستضافة cPanel، الواسعة الانتشار، ظلّت مدة طويلة تشترط CentOS أو RHEL)؛
  • الشركات الناشئة (startups)، التي تريد RHEL دون أن تدفع؛
  • مديري الأنظمة، الذين يتكوّنون على CentOS لاجتياز امتحان RHCSA؛
  • الشركات، لخوادم الاختبار لديها (و RHEL في الإنتاج).

وفي يناير 2014 وظّفت Red Hat فريق CentOS وأخذت المشروع تحت جناحها. فبدا للكثيرين أن مستقبل CentOS أصبح مضمونًا لمدة طويلة.

3. CentOS Stream وصدمة ديسمبر 2020

في سبتمبر 2019، ومع CentOS 8، أطلقت Red Hat أيضًا CentOS Stream: نسخة تتقدّم بشكل مستمر، قبل التحديث القادم من RHEL مباشرة.

قبل (2004-2020): CentOS يتبع RHEL

  Fedora ──► RHEL 8.3 ──► (بضعة أسابيع) ──► CentOS 8.3
                     نشر الشيفرة المصدرية، ثم إعادة ترجمتها

بعد (2021 →): CentOS Stream يسبق RHEL

  Fedora ──► CentOS Stream 9 ──► RHEL 9.x
              (ما سيدخل في التحديث الفرعي القادم من RHEL)

وفي 8 ديسمبر 2020 أعلنت Red Hat أن CentOS Linux 8، الموعود بالدعم حتى 2029، سيتوقف في 31 ديسمبر 2021. ومنذ ذلك الحين يركّز مشروع CentOS على CentOS Stream.

وكانت صدمة للمستخدمين:

  • آلاف الشركات ثبّتت CentOS 8 ظنًّا منها أن أمامها ثماني سنوات؛
  • و CentOS Stream لا يناسب الجميع: فهو يتلقى التغييرات قبل RHEL، ولم يعد إذن نسخة مطابقة لإصدار RHEL سبق التحقق منه.

أما CentOS Linux 7 فقد احتفظ بتاريخ نهايته الأصلي: 30 يونيو 2024. وكانت خوادم CentOS 7 كثيرة ما تزال تعمل في ذلك التاريخ، وبعضها ما زال يعمل: وربما تصادف بعضها.

4. Rocky Linux و AlmaLinux (2021)

ردّ المجتمع في بضعة أيام. فوُلد مشروعان ليأخذا دور CentOS: إعادة ترجمة مجانية ومتوافقة لـ RHEL.

Rocky Linux AlmaLinux
الإعلان ديسمبر 2020 ديسمبر 2020
المؤسِّس غريغوري كورتزر (Gregory Kurtzer)، أحد مؤسسي مشروع CentOS CloudLinux، شركة تصنع أصلًا توزيعات للمستضيفين
أصل الاسم تكريم لـ روكي ماكغو (Rocky McGaugh)، مؤسس آخر لـ CentOS، توفي «Alma» تعني «الروح» بالإسبانية والبرتغالية
أول إصدار مستقر Rocky 8.4، يونيو 2021 AlmaLinux 8.3، مارس 2021
التنظيم Rocky Enterprise Software Foundation AlmaLinux OS Foundation (جمعية غير ربحية)

وللانتقال من CentOS 8 إلى أحدهما، يوفّر كل مشروع سكربت ترحيل (migration) في المكان (migrate2rocky، almalinux-deploy)، دون إعادة تثبيت. وتوجد بدائل أخرى: Oracle Linux (إعادة ترجمة RHEL منذ 2006)، أو CentOS Stream نفسه، أو RHEL مباشرة.

وقد ليّنت Red Hat أيضًا عرضها: فمنذ 2021 يسمح الاشتراك المجاني Red Hat Developer Subscription for Individuals للأفراد باستعمال RHEL على عدد صغير من الآلات (حتى 16).

يونيو 2023: منعطف جديد

في يونيو 2023 أعلنت Red Hat أن CentOS Stream أصبح المصدر العلني الوحيد للشيفرة المرتبطة بـ RHEL: فالشيفرة المصدرية الدقيقة لكل إصدار من RHEL لم تعد تُنشر بحرية، بل أصبحت محصورة في الزبائن.

فكان على مشاريع إعادة الترجمة أن تتكيّف:

  • اختارت AlmaLinux أن تكون متوافقة على المستوى الثنائي (ABI) مع RHEL، بدل أن تكون نسخة «علّةً بعلّة»: فالبرامج المعدّة لـ RHEL تعمل عليها، لكن قد توجد فروق صغيرة؛
  • وتواصل Rocky Linux السعي إلى التطابق مع RHEL، بالحصول على الشيفرة بوسائل قانونية أخرى؛
  • وأسّست CIQ (الشركة التي تقف وراء Rocky) و Oracle و SUSE في أغسطس 2023 OpenELA، وهي جمعية تنشر شيفرة مصدرية متوافقة مع RHEL.

وبالنسبة إليك، كمدير أنظمة، النتيجة بسيطة: ما تتعلّمه على Rocky أو Alma يصلح لـ RHEL، والعكس صحيح. فالأوامر وملفات الإعداد وامتحان RHCSA هي نفسها.

5. العائلة اليوم

             الجديد، كل 6 أشهر
  FEDORA  ─────────────────────────────────►   (المختبر)
     │  كل 3 سنوات تقريبًا، تُستعمل Fedora أساسًا لـ
     ▼
  CENTOS STREAM N  ───────────────────────►   (التحديث القادم من RHEL، مسبقًا)
     │
     ▼
  RHEL N.0, N.1, N.2…                          (المنتج، 10 سنوات من الدعم)
     │  شيفرة متوافقة
     ▼
  ROCKY LINUX N.x   ALMALINUX N.x   ORACLE LINUX N.x   (مجانية، متوافقة)

وفي سنة 2018 أعلنت IBM عن شراء Red Hat بنحو 34 مليار دولار، وهي صفقة اكتملت في يوليو 2019. وبقيت Red Hat قسمًا مستقلًّا، يواصل تطوير RHEL والمساهمة بقوة في Linux و systemd و GNOME و Podman…

6. دورة حياة إصدار RHEL

لكل إصدار رئيسي من RHEL عمر يقارب عشر سنوات، في مرحلتين كبيرتين، إضافة إلى خيار مدفوع:

المرحلة المدة التقريبية ما تتلقاه
الدعم الكامل (Full Support) ≈ 5 سنوات تصحيحات، وأمان، ودعم عتاد جديد، وميزات صغيرة مع كل إصدار فرعي (9.1، 9.2…)
الصيانة (Maintenance) ≈ 5 سنوات إضافية تصحيحات الأمان والعلل المهمة فقط
الدعم الممتد (ELS، مدفوع إضافيًّا) بضع سنوات إضافية تصحيحات حرجة لمن لم يتمكّنوا من الترحيل

تصدر الإصدارات الفرعية تقريبًا كل ستة أشهر: 9.0، و 9.1، و 9.2… وتتبع Rocky و Alma الجدول الزمني نفسه، مع تأخّر طفيف.

حسب الإصدار

الإصدار الصدور النواة ما يتغيّر بالنسبة إلى مدير الأنظمة نهاية الصيانة
RHEL 6 نوفمبر 2010 2.6.32 إقلاع بواسطة Upstart لكن الخدمات تُدار بالطريقة القديمة: service httpd start، و chkconfig httpd on؛ ونظام ext4 افتراضيًّا؛ والجدار الناري iptables؛ و yum نوفمبر 2020
RHEL 7 يونيو 2014 3.10 وصول systemd (systemctl)؛ والجدار الناري firewalld؛ و XFS افتراضيًّا؛ و GRUB 2؛ و 64 بت فقط؛ و MariaDB تحلّ محلّ MySQL؛ و chronyd لضبط الوقت يونيو 2024
RHEL 8 مايو 2019 4.18 dnf يحلّ محلّ yum (ويبقى الأمر yum اسمًا بديلًا)؛ ومستودعا BaseOS و AppStream مع «وحدات» (modules)؛ و nftables تحت firewalld؛ و Podman بدل Docker؛ و Python 3 (لم يعد الأمر python موجودًا افتراضيًّا)؛ وواجهة الويب Cockpit؛ وسياسات التشفير على مستوى النظام مايو 2029
RHEL 9 مايو 2022 5.14 مبني انطلاقًا من CentOS Stream 9؛ و OpenSSL 3؛ ورفض اتصال SSH للمستخدم root بكلمة المرور افتراضيًّا؛ وإهمال توقيعات SHA-1؛ وإهمال ملفات الشبكة القديمة ifcfg لصالح ملفات NetworkManager؛ واشتراط معالجات x86-64 من المستوى v2 مايو 2032
RHEL 10 مايو 2025 6.12 وضع الصورة (mode image: نشر النظام كصورة حاوية، بواسطة bootc)؛ وأولى خوارزميات التشفير ما بعد الكمّي؛ والمساعد في سطر الأوامر Lightspeed؛ وسحب الخادم الرسومي Xorg (Wayland فقط)؛ و Valkey يحلّ محلّ Redis؛ واشتراط معالجات x86-64 من المستوى v3 متوقعة سنة 2035

هذا الجدول هو سبب وجود مسار Red Hat في هذه الدورة: كل درس مهم فيه قسمه الخاص «حسب الإصدار»، لأنك ستصادف في الشركات خوادم RHEL أو CentOS 6 و 7 إلى جانب RHEL 9 و 10.

# على RHEL 6 / CentOS 6                       # على RHEL 7 وما بعده
service sshd restart                          systemctl restart sshd
chkconfig sshd on                             systemctl enable sshd
iptables -L                                   firewall-cmd --list-all
yum install httpd                             dnf install httpd   (RHEL 8+)

7. الخط الزمني للدرس

1994  Red Hat Linux
1999  Red Hat تدخل البورصة
2002  Red Hat Linux Advanced Server 2.1 → قريبًا « RHEL »
2003  Red Hat Linux 9، الأخير؛ RHEL 3؛ Fedora Core 1
2004  أولى إصدارات CentOS
2007  RHEL 5
2010  RHEL 6
2014  Red Hat توظّف فريق CentOS (يناير)؛ RHEL 7 (يونيو)
2019  RHEL 8 (مايو)؛ IBM تكمل الشراء (يوليو)؛ CentOS Stream (سبتمبر)
2020  8 ديسمبر: الإعلان عن النهاية المبكرة لـ CentOS Linux 8
2021  AlmaLinux 8.3 (مارس)، Rocky Linux 8.4 (يونيو)؛ نهاية CentOS Linux 8 (31 ديسمبر)
2022  RHEL 9 (مايو)، يليه Rocky 9 و AlmaLinux 9
2023  الشيفرة المصدرية لـ RHEL محصورة في الزبائن (يونيو)؛ OpenELA (أغسطس)
2024  نهاية CentOS Linux 7 (30 يونيو)
2025  RHEL 10 (مايو)، يليه AlmaLinux 10 و Rocky 10

أخطاء متكررة

  • قول «CentOS» عند الحديث عن خادم Red Hat حديث. لم يعد CentOS Linux موجودًا: وخادم CentOS 7 ما زال في الخدمة لا يتلقى تصحيحات مجانية منذ يوليو 2024. وهذا خطر أمني يجب التنبيه إليه.
  • الخلط بين CentOS Stream و CentOS القديم. Stream متقدّم على RHEL، وليس نسخة من إصدار RHEL سبق التحقق منه.
  • الاعتقاد بأن Rocky و Alma «أقل احترافية». إنهما مستعملان في الإنتاج لدى مؤسسات كبرى. والفرق مع RHEL يكمن في الدعم واعتمادات الناشرين، لا في الأوامر.
  • تطبيق إجراء خاص بـ RHEL 6 على RHEL 9 (أو العكس). انظر دائمًا في الإصدار (cat /etc/redhat-release) قبل اتباع أي درس تطبيقي.

التطبيق العملي (Lab)

أنت على Rocky Linux 9. تحقّق من قرابتها مع RHEL:

grep -E '^(ID|ID_LIKE|VERSION_ID)=' /etc/os-release
cat /etc/redhat-release       # موجود في كل عائلة Red Hat
rpm -qa | wc -l               # عدد حزم RPM المثبّتة
rpm -q rocky-release          # الحزمة التي « توقّع » التوزيعة

المهام: تسجيل العائلة التي يصرّح بها ID_LIKE، وسطر /etc/redhat-release، وعدد الحزم، والإصدار الدقيق لـ rocky-release. ثم انقر على تحقّق.


اختبار قصير

  1. ما الفرق بين Fedora و RHEL؟
  2. ما الذي كانه CentOS، ولماذا كان شائعًا إلى هذا الحد؟
  3. بماذا أعلنت Red Hat في 8 ديسمبر 2020؟
  4. أين يقع CentOS Stream بالنسبة إلى RHEL؟
  5. في أي إصدار من RHEL ظهر systemctl و firewalld؟ وماذا عن dnf؟
الأجوبة
  1. Fedora مجتمعية ومجانية، بإصدار كل 6 أشهر تقريبًا: إنها مختبر الجديد. أما RHEL فهي نسخة الشركات، تُباع باشتراك، مستقرة ومدعومة 10 سنوات.
  2. إعادة ترجمة مجانية للشيفرة المصدرية لـ RHEL، بدون علامات Red Hat: أي RHEL مجاني، مطابق «علّةً بعلّة»، دون دعم رسمي. وكان المستضيفون والشركات الناشئة ومديرو الأنظمة في طور التكوين يعشقونه.
  3. أن CentOS Linux 8، المقرَّر حتى 2029، سيتوقف في 31 ديسمبر 2021، وأن المشروع سيركّز على CentOS Stream.
  4. قبل RHEL: فهو يحتوي على ما سيدخل في التحديث الفرعي القادم من RHEL.
  5. systemctl و firewalld: في RHEL 7 (2014). و dnf: في RHEL 8 (2019).

المصادر المرجعية: دورة حياة Red Hat Enterprise Linux وملاحظات إصداراته (توثيق Red Hat، رخصة CC BY-SA 3.0)، والإعلانات الرسمية لـ CentOS و Rocky Linux و AlmaLinux. نص أصلي من MasterLinux.

تمارين تطبيقية

تُنجَز على Rocky Linux 9

الطرفية عبر الإنترنت قادمة قريبًا. في انتظار ذلك، أنجِز هذه المهام على جهازك بنظام لينكس أو على آلة افتراضية أو WSL.

  1. احفظ السطر ID_LIKE من الملف /etc/os-release في /root/famille.txt: فهو يخبرك بمن هي Rocky «قريبته».
    عرض تلميحgrep '^ID_LIKE=' /etc/os-release > /root/famille.txt
    عرض الحل
    grep '^ID_LIKE=' /etc/os-release > /root/famille.txt

    التحقق : grep -q '^ID_LIKE=.*rhel' /root/famille.txt

  2. كل توزيعة من عائلة Red Hat فيها ملف /etc/redhat-release. انسخه إلى /root/release.txt
    عرض تلميحcat /etc/redhat-release > /root/release.txt
    عرض الحل
    cat /etc/redhat-release > /root/release.txt

    التحقق : grep -q 'release 9' /root/release.txt

  3. احسب عدد حزم RPM المثبّتة (الأمر rpm -qa يعرض حزمة في كل سطر) واحفظ العدد في /root/nb-rpm.txt
    عرض تلميحrpm -qa | wc -l > /root/nb-rpm.txt
    عرض الحل
    rpm -qa | wc -l > /root/nb-rpm.txt

    التحقق : grep -qx "$(rpm -qa | wc -l)" /root/nb-rpm.txt

  4. اسأل rpm عن الإصدار الدقيق للحزمة التي «توقّع» التوزيعة، أي rocky-release، واحفظ الجواب في /root/rocky-release.txt
    عرض تلميحالأمر rpm -q متبوعًا باسم حزمة يعطي إصدارها: rpm -q rocky-release > /root/rocky-release.txt
    عرض الحل
    rpm -q rocky-release > /root/rocky-release.txt

    التحقق : grep -q '^rocky-release-9' /root/rocky-release.txt

المراجع الرسمية المعتمدة: Red Hat — Red Hat Enterprise Linux Life Cycle (access.redhat.com) ; Notes de version de RHEL 6, 7, 8, 9 et 10 (docs.redhat.com) ; Annonces officielles du projet CentOS (blog.centos.org), de Rocky Linux et d'AlmaLinux. نص أصلي من MasterLinux.