8 د قراءة🟢 مبتدئ

قصة نظام جنو لينكس

قصة نظام جنو لينكس
📑 محتويات المقال
  1. لماذا احتاج العالم نظاماً حراً؟
  2. حكاية يونكس (Unix)
  3. قصة الطابعة
  4. البداية: حلم بنظام حر (مشروع جنو GNU)
  5. القطعة الناقصة: نواة لينكس (Linux)
  6. مينكس (Minix): نظام للتعليم فقط
  7. طالب يكتب نواته بنفسه
  8. القانون الذي حمى الفكرة: رخصة جنو العامة (GPL)
  9. حر أم مفتوح المصدر؟ ما الفرق؟
  10. البرمجيات الحرة (Free Software)
  11. مفتوح المصدر (Open Source)
  12. إذن ما الفرق؟
  13. لينكس من حولك اليوم
  14. وماذا عن البطريق؟
  15. مواقع تستحق أن تعرفها
  16. من نظام واحد إلى عائلات كثيرة: التوزيعات
  17. عائلة دبيان (Debian)
  18. عائلة ريد هات (Red Hat)
  19. عائلة آرتش (Arch Linux)
  20. عائلة سلاكوير (Slackware)

كل مرة تفتح موقعاً على الإنترنت، فهناك احتمال كبير أن خادماً يعمل بنظام لينكس هو من أرسل لك الصفحة. لكن قبل أن نكتب أول أمر في الطرفية، دعني أحكي لك كيف بدأت الحكاية، لأن هذا النظام لم يصنعه شخص واحد، بل التقت فيه فكرتان من رجلين لم يعملا معاً.

لماذا احتاج العالم نظاماً حراً؟

لنرجع قليلاً إلى الستينيات والسبعينيات. في ذلك الوقت كانت البرامج تُعامل كالمعرفة العلمية: المبرمجون في الجامعات ومراكز الأبحاث يتبادلون الكود فيما بينهم، يقرؤونه ويصلحون أخطاءه ويضيفون عليه، ولا يفكر أحد في منع غيره.

حتى شركة IBM، التي كانت تسيطر على عالم الحواسيب الكبيرة، كانت تعطي برامجها مجاناً مع الجهاز. لكنها في عام 1969 بدأت تبيع البرامج منفصلة عن الأجهزة، وكانت هذه من أولى الخطوات نحو تحويل البرنامج إلى سلعة.

ثم انتشرت الفكرة. أدركت الشركات أن البرامج يمكن أن تُباع، فصارت تعطيك البرنامج جاهزاً للتشغيل فقط وتخفي الكود المصدري، ومعه اتفاقيات تمنعك من نسخه أو مشاركته أو حتى معرفة كيف يعمل.

حكاية يونكس (Unix)

وأوضح مثال على ذلك نظام يونكس، وهو الجد الذي يشبهه لينكس في كل شيء تقريباً.

في الستينيات كانت مختبرات Bell التابعة لشركة AT&T تشارك جامعة MIT وشركة General Electric في مشروع نظام تشغيل ضخم اسمه Multics. كان المشروع طموحاً لكنه معقد جداً، فانسحبت منه Bell عام 1969.

لكن اثنين من باحثيها، كين تومسون (Ken Thompson) ودينيس ريتشي (Dennis Ritchie)، لم يتخلّيا عن الفكرة. بدأ تومسون عام 1969 يكتب نظاماً أصغر وأبسط، وسمّاه الفريق Unics سخريةً لطيفة من Multics، ثم صار الاسم Unix.

كانت المشكلة أن يونكس كُتب في البداية بلغة Assembly، وهي لغة مرتبطة بنوع المعالج، فلو أردت تشغيله على جهاز آخر لاضطررت لإعادة كتابته من جديد. فطوّر ريتشي لغة برمجة جديدة هي لغة C، وأُعيدت كتابة يونكس بها عام 1973. ومن هنا صار يونكس قادراً على العمل على أجهزة مختلفة، وصارت C من أهم لغات البرمجة في التاريخ.

ولأن AT&T كانت ممنوعة قانونياً وقتها من دخول سوق الحواسيب، وزّعت يونكس على الجامعات بأسعار رمزية ومعه الكود المصدري، فأحبه الطلاب والباحثون وتعلّموا عليه جيلاً بعد جيل. لكن بعد تفكيك الشركة في الثمانينيات زال ذلك المنع، فتحوّل يونكس إلى منتج تجاري برخص غالية وشروط مقيدة، وصار الطلاب الذين تعلّموا عليه لا يستطيعون استخدامه بحرية.

قصة الطابعة

في هذه الأجواء كان المبرمج الأمريكي ريتشارد ستولمن (Richard Stallman) يعمل في مختبر الذكاء الاصطناعي بجامعة MIT. وصلت المختبر طابعة جديدة من شركة Xerox، وكانت تتعطل كثيراً بسبب انحشار الورق، ولا يعرف أحد بالعطل إلا حين يذهب ليأخذ أوراقه فيجدها لم تُطبع.

مع الطابعة القديمة كان ستولمن قد عدّل برنامجها بنفسه، فصار يرسل تنبيهاً للمستخدمين عند انحشار الورق. أراد أن يفعل الشيء نفسه مع الطابعة الجديدة، لكنه اكتشف أن الشركة لم تعطِ أحداً الكود المصدري.

وحين علم أن باحثاً في جامعة أخرى لديه نسخة من الكود، ذهب ليطلبها منه. فرفض الباحث، لأنه وقّع مع الشركة اتفاقية تمنعه من مشاركته.

قد تبدو المشكلة صغيرة، لكنها أوضحت لستولمن الصورة كاملة: المستخدم لم يعد يتحكم في البرنامج الذي يستخدمه، والبرنامج هو الذي يتحكم فيه. لا يستطيع إصلاحه ولا تحسينه ولا مساعدة غيره به.

واليوم ترى نتيجة هذا الطريق بنفسك: نظام Windows من Microsoft ونظام macOS من Apple، كلاهما نظام مغلق لا تستطيع أن ترى كيف يعمل من الداخل، ولا يحق لك تعديله أو مشاركته.

البداية: حلم بنظام حر (مشروع جنو GNU)

وهكذا، في عام 1983، أعلن ستولمن عن مشروع جديد اسمه GNU.

ريتشارد ستولمن، مؤسس مشروع GNU ومؤسسة البرمجيات الحرة
ريتشارد ستولمن، مؤسس مشروع GNU ومؤسسة البرمجيات الحرة

فكرته كانت بسيطة لكنها جريئة: نظام تشغيل حر ومفتوح المصدر، يستطيع أي شخص أن يستخدمه، ويعدّله، ويشاركه مع غيره.

حتى الاسم كان فيه شيء من الطرافة، فـ GNU اختصار لعبارة GNU's Not Unix، أي «جنو ليس يونكس». اسم يعرّف نفسه بما ليس هو!

بدأ المشروع يبني أدواته واحدة تلو الأخرى، ومن أشهرها:

  • Bash: الطرفية التي ستكتب فيها أوامرك طوال هذه الدورة
  • GCC: مترجم لغة C/C++
  • GDB: أداة تتبّع الأخطاء في البرامج
  • Coreutils: الأوامر الأساسية مثل ls و cp

وفي عام 1985 أسس ستولمن مؤسسة البرمجيات الحرة (FSF) لتحمي هذه الفكرة وتدعمها.

لكن بقيت قطعة ناقصة في الأحجية.

القطعة الناقصة: نواة لينكس (Linux)

مرّت السنوات، وأدوات GNU تكتمل واحدة بعد الأخرى، لكن القلب ما زال غائباً.

مينكس (Minix): نظام للتعليم فقط

في هذه الأثناء، وبعد أن صار يونكس تجارياً، احتاجت الجامعات نظاماً تشرح به لطلابها كيف تعمل أنظمة التشغيل. فبنى البروفيسور الهولندي أندرو تانينباوم (Andrew Tanenbaum) في جامعة أمستردام الحرة نظاماً صغيراً شبيهاً بيونكس سمّاه Minix، وأصدره عام 1987 مع كتابه الجامعي.

كان Minix رائعاً للتعلّم، وكوده متاحاً للدراسة، لكنه صُمم للتعليم لا للاستخدام اليومي، ورخصته وقتها لم تكن تسمح للناس بتعديله ونشره بحرية.

طالب يكتب نواته بنفسه

في عام 1991، كان طالب فنلندي في جامعة هلسنكي اسمه لينوس تورفالدس (Linus Torvalds) قد اشترى حاسوباً جديداً، وجرّب عليه Minix، لكنه لم يكن راضياً عن حدوده. فقرر أن يكتب نواة نظام تشغيل خاصة به، من الصفر.

وفي 25 أغسطس 1991 كتب رسالة قصيرة في مجموعة نقاش لمستخدمي Minix، يقول فيها ما معناه:

«أعمل على نظام تشغيل (مجاني)، مجرد هواية، لن يكون كبيراً واحترافياً مثل GNU».

مجرد هواية! ولم يكن يعلم أن هذه «الهواية» ستصبح أكبر مشروع برمجي تعاوني في التاريخ.

بعد أقل من شهر، في 17 سبتمبر 1991، أصدر أول نسخة من نواته، وعُرفت باسم Linux.

لينوس تورفالدس، مُنشئ نواة لينكس
لينوس تورفالدس، مُنشئ نواة لينكس

مصدر الصورة: Krd عبر ويكيميديا كومنز، برخصة CC BY-SA 4.0، مع قصّ الصورة.

لم يكن Linux نظاماً كاملاً، بل نواة فقط (Kernel). والنواة هي قلب النظام، الجزء الذي يتولى:

  • إدارة المعالج
  • إدارة الذاكرة
  • التعامل مع الأقراص
  • إدارة الشبكات
  • تشغيل تعريفات الأجهزة

وهنا التقت القطعتان: أدوات GNU كانت تنتظر نواة، ونواة Linux كانت تحتاج أدوات. وعندما اجتمعتا وُلد نظام تشغيل متكامل. وفي بداية عام 1992 نشر لينوس نواته تحت رخصة GPL، رخصة ستولمن نفسها، لتبقى حرة للأبد.

القانون الذي حمى الفكرة: رخصة جنو العامة (GPL)

كيف تضمن أن يبقى البرنامج الحر حراً، ولا تأتي شركة فتأخذه وتغلقه وتبيعه؟

كتب ستولمن لهذا الغرض رخصة اسمها GNU General Public License (GPL)، وهي اليوم من أشهر رخص البرمجيات الحرة في عالم لينكس 🐧

تقوم الرخصة على فكرة ذكية اسمها «الحقوق المتروكة» (Copyleft). فهي تعطيك الحرية في:

  • استخدام البرنامج
  • تعديله
  • إعادة توزيعه

لكن بشرط واحد مهم: أي نسخة معدّلة يجب أن تبقى حرة أيضاً، فلا يحق لأحد أن يغلقها أو يحتكرها.

حر أم مفتوح المصدر؟ ما الفرق؟

سمعنا الكلمتين كثيراً في هذه القصة، وقد يظن البعض أنهما شيء واحد، أو أن «حر» تعني «مجاني». لنوضّح:

البرمجيات الحرة (Free Software)

كلمة «حر» هنا تعني الحرية، لا السعر. ولهذا يقول ستولمن عبارته المشهورة: «حر كما في حرية التعبير، لا كما في المشروب المجاني».

والبرنامج يكون حراً إذا أعطاك أربع حريات:

  1. حرية تشغيل البرنامج لأي غرض
  2. حرية دراسة طريقة عمله وتعديله، وهذا يتطلب أن يكون كوده المصدري متاحاً
  3. حرية نسخه ومشاركته مع غيرك
  4. حرية نشر نسختك المعدّلة ليستفيد منها الآخرون

مفتوح المصدر (Open Source)

يعني أن الكود المصدري للبرنامج، أي التعليمات التي كتبها المبرمجون، متاح للجميع: يستطيع أي شخص قراءته وتحسينه والمساهمة فيه.

ظهر هذا المصطلح عام 1998، وركّز أصحابه على الفائدة العملية: الكود المفتوح يراجعه آلاف المبرمجين، فتُكتشف أخطاؤه أسرع ويتطور بشكل أفضل.

إذن ما الفرق؟

في الواقع، أغلب البرامج الحرة مفتوحة المصدر، وأغلب البرامج مفتوحة المصدر حرة. الفرق في الفكرة أكثر منه في البرنامج نفسه:

  • البرمجيات الحرة تنظر للأمر كقضية حرية وأخلاق: من حق المستخدم أن يتحكم في البرنامج الذي يستخدمه.
  • المصدر المفتوح ينظر له كطريقة أفضل لتطوير البرامج.

لينكس من حولك اليوم

ذلك المشروع الذي بدأ «هواية» صار اليوم في كل مكان تقريباً، وغالباً أنت تستخدمه دون أن تعرف:

  • الإنترنت: أغلب خوادم المواقع والخدمات السحابية تعمل بلينكس.
  • هاتفك: نظام أندرويد مبني على نواة لينكس.
  • الحواسيب العملاقة: أقوى 500 حاسوب عملاق في العالم تعمل كلها بلينكس.
  • بيتك: كثير من أجهزة التلفاز الذكية، والراوترات، والأجهزة المنزلية الحديثة.

وماذا عن البطريق؟

شعار لينكس بطريق لطيف اسمه Tux، رُسم عام 1996. ويحكي لينوس أنه اختار البطريق لأنه يحب البطاريق، بل ويروي مازحاً أن بطريقاً صغيراً عضّه مرة في حديقة حيوانات بأستراليا 🐧

مواقع تستحق أن تعرفها

  • kernel.org: الموقع الرسمي لنواة لينكس، فيه إصداراتها وأخبار تطويرها، ويستخدمه مطورو النواة حول العالم.
  • gnu.org: الموقع الرسمي لمشروع GNU.
  • fsf.org: موقع مؤسسة البرمجيات الحرة.

من نظام واحد إلى عائلات كثيرة: التوزيعات

لأن النظام حر، بدأ الناس يبنون عليه نسخهم الخاصة. كل نسخة تجمع النواة مع مجموعة برامج وطريقة معينة في إدارتها، وتُسمى توزيعة (Distribution).

ومع الوقت صارت هذه التوزيعات عائلات، كل عائلة لها أصل تفرعت منه. وضعت لك رابط الموقع الرسمي لكل توزيعة، ومنه تستطيع تحميلها:

عائلة دبيان (Debian)

  • Debian: الأصل
  • Ubuntu: من أشهر التوزيعات بين المستخدمين
  • Linux Mint: واجهة سهلة للمبتدئين
  • Kali Linux: متخصصة في الأمن السيبراني

عائلة ريد هات (Red Hat)

عائلة آرتش (Arch Linux)

عائلة سلاكوير (Slackware)

  • Slackware: من أقدم توزيعات لينكس، وتتميز بالبساطة والاستقرار

#دورة لينكس#لينكس

0

التعليقات (0)

كن أول من يعلّق.