طالِبٌ جامعيٌّ بَدَأهُ كهِوايَةٍ، فأصبح القلبَ النابضَ للعَالَم الحَدِيث والمستقبلُ الواعدُ للحياةِ الرقمية. المُتَرَبِّعُ على عَرْشِ البِنْيَة التحتية السحابية بِلاَ مُنَازِع، يُستخدم في ٣ مليار هاتف¹ -أندرويد- حول الكوكب، وفي أقوى ٥٠٠ حاسوبٍ خَارِقٍ² في العالمِ، تَسْتَعْمِلَهُ وكالة الفضاء الدولية ناسا NASA فوَصَلَ المريخ³.
يُعدُّ الجيش الأمريكي⁴ أكبر قاعدة مثبتة له، ويعمل به أسطول الغواصات النووية الأميركية⁵، ويعتمد مصادم الهادرون الكبير⁶ من المنظمة الأوروبية للأبحاث النووية CERN⁷ عليه، وبورصة نيويورك⁸ للأوراق المالية.
يتواجد في كل مكان من حولك، في ساعات اليد⁹، والثلاجات¹⁰ الذكية، وشاشات التلفاز، وأنظمة الترفية في الطائرات¹¹، والسيارات¹² ذاتية القيادة، وحتى البندقية¹³ الذكية!
فما هو لينُكس وما نشأته؟
ستكون هذه أول مقالاتنا حول جنو/لينُكس وبدء دورة تدريبية لاستخدام سطر الأوامر (CLI).
تَارِيخُ نَشأَته
لفهم نشأة لينُكس، من أين أتى، سآخذ بيدك لنعود سويةً بالزمن إلى الوراء، إلى حوالي خمسين عامًا ويزيدُ قليلًا…
تخيل أجهزة حاسوب بحجم غرفتك أو منزلك وأكبر. حواسيب ضخمة شكلت مشكلات كبيرة، لكن ما جعل الأمر أسوأ أن كل حاسوب لديه نظام تشغيل مختلف!
لقد خُصِيصَتِ البرامج لخدمة غرضٍ مُعينٍ، والبرمجيات الخاصة بنظام معين لا تعمل على نظام آخر. أن تكون قادرًا على العمل بنظام ما لا يعني تلقائيًا أنه يمكنك العمل بنظام آخر. كان ذلك صعبًا، سواء للمستخدمين أو مدراء الأنظمة.
كانت أجهزة الحاسوب باهظة الثمن ومكلفة للغاية، وكان لاَ بُدَّ من التضحيات حتى بعد شراءه لمجرد جعل المستخدم أو المستخدمون يفهم أو يفهمون كيفية عمله. كانت التكلفة الإجمالية إن أردت إنشاء مشروع أو شراء حاسوب هائلةً جدًا.
المشكلات
- الحجم الهائل لأجهزة الحاسوب.
- نظام تشغيل مختلف لكل جهاز.
- صعوبة صنع البرامج وتشغيلها في كل نظام.
- التكلفة الباهظة.
ظُهورُ يُونكس – UNIX
تقنيًا لم يكن العالم متقدمًا إلى هذا الحد آنَذَاكَ، لذا كان عليهم أن يتعايشوا مع تلك العقبات لعقدٍ آخر من الزمن. في عام تسعة وستين وتسعمائمة وألف (1969)، بدأ فريق من المطورين في مختبرات بيل¹⁴ على حل لمُشكلة البرمجيات، لمعالجة مشكلات توافق البرامج والأنظمة المختلفة. لقد طوَّروا نظام تشغيل جديد، والذي كان:
1. واضح وسهل وأنيق.
2. مكتوبة بلغة البرمجة C بدلًا من لغة التجميع (assembly¹⁵).
3. قابل لإعادة تدوير الرِمَاز البرمجي (code).
أطلق مطوَّروا مختبرات بيل على مشروعهم اسم يُونِكس (unix¹⁶).
قابلية إعادة تدوير الرِمَاز البرمجي
تتسم خاصية إعادة تدوير الرِمَاز البرمجي بأهميَّة بالغة، إذ أنه في ذلك الحين كانت جميع أنظمة الحاسوب المتاحة تجاريًا مكتوبة في رِمَازٍ برمجيّ وُضِعَ خصيصًا لنظامٍ واحدٍ.
يُونِكس لم يحتَجْ سوى لقطعةٍ صغيرةٍ من هذا الرِمَاز البرمجي، والذي يُسمَّى النواة (kernel). تلك النواة هي القطعة الوحيدة من الرِمَاز البرمجي الذي يحتاج إلى تَكييفٍ لكل جهاز معين. نظام التشغيل وجميع الوظائف الأخرى بُنِيَتْ حول هذه النواة وكُتِبَتْ بلغة البرمجة عالية المستوى المسماة C.
لقد حلَّ يُونِكس مُشكِلتَي الأنظمة المختلفة وصعوبة أنشاء البرامج.
لغة C
طوِّرت هذه اللغة خصيصًا لإنشاء نظام يُونِكس. باستخدام هذه التقنية الجديدة، كان من الأسهل بكثير تطوير نظام تشغيل يمكنه أن يَعْمَلَ على العديدِ من أنواعٍ مُختَلِفةٍ من الأجهزةِ.
سُهولَة إنْشاء بَرْنامج
سارع بائعو البرامج إلى التَكَيُّفِ، فكان بوسعهم أن يبيعوا عشرات البرامج دون أي جُهْدٍ يُذْكر، والمستخدمون يعملون على أنظمة مختلفة دون الحاجة إلى تَعَلُّمِ شيءٍ إضافي لاستخدام جهاز حاسوبٍ آخر. وقد قدَّم نظام يُونِكس الكثير لمساعدة المستخدمين على التوافق مع الأجهزةِ المختلفة.
خلال العقدين التاليين، استمر تطوير يُونِكس، وأصبح من الممكن تأدية المزيد من الأعمال، كما أضاف العديد من بائعي الأجهزة والبرمجيات الدعم لنظام يُونِكس إلى منتجاتهم.
يُونِكس يُصبح مدفوعًا
من البداية، أُنشِئ نظام التشغيل يُونكس وحصل على رعايته في بيئةٍ مشتركة، ولم يكن إنشاؤه مدفوعًا باحتياجات السوقِ، بل بالرغبة في التغلب على العقبات التي تحول دون إنتاج البرامج. إيه تي آند تي AT&T¹⁷، التي كانت تملك علامة يُونِكس التجارية، جعلت يُونِكس -في نهاية المطاف- مُنتجًا تجاريًا، لكن بحلول ذلك الوقت قد غيَّر يُونِكس العديد من المفاهيم، وقد نُشِرَ رِمَازه البرمجي المصدري (source code) بين الأنام وأصبح في أيدي الجميع.
حينئذٍ كُنتَ تستطيع استخدام يُونِكس في البيئات الكبيرة جدًا مع الحواسيب الكبيرة فقط، وُجِبَ أن تعمل في جامعة أو لحكومة أو للشركات المالية الكبيرة من أجل الحصول على نظام يُونِكس.
أجهزة الحاسوب الأصغر، الحاسوب الشخصي (PC)، كانت تُطَوَّر، وبحلول نهاية الثمانينات، كان الكثيرون يمتلكون أجهزة حواسيب منزلية وحُلَّتْ مشكلة السعر الباهظ والحجم الهائل. في ذلك الوقت، كانت هناك عدة إصدارات من يُونِكس متاحة لِلحواسيب الشخصية، لكن لم يكن أي منها حُرًا حقًا وأكثر أهمية: كانت جميعها بطيئة للغاية، لذلك شغَّل الناس مايكروسوفت دوس¹⁸ أو ويندوز على حواسيبهم الشخصية المنزلية.
لينوس ولينُكس
مع بداية التسعينات كانت الحواسيب المنزلية أخيرًا قوية ومنتشرة. ظنَّ لينوس تورفالدز¹⁹ وهو شاب يدرس علوم الحاسوب في جامعة هلسنكي، أنها فكرة جيدة أن يكون لدينا النسخة الجامعية من يُونِكس متاحًا مجانًا، وشرع فورًا في كتابة الرِمَاز البرمجي. فطرح الأسئلة، باحثًا عن إجاباتٍ وحلولٍ من شأنها أن تساعده على تطوير فكرته.
وحسب بعض التواريخ هذه أولى تدوينات لينوس في موقع comp.os.minix، يعود تاريخها إلى عام 1991:
From: [email protected] (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix? Summary: small poll for my new operating system
Message-ID:
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki
Hello everybody out there using minix –I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I’d like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).
I’ve currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I’ll get something practical within a few months, and I’d like to know what features most people would want. Any suggestions are welcome, but I won’t promise I’ll implement them 🙂
Linus ([email protected])
PS. Yes – it’s free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that’s all I have :-(.
رابطها²⁰
لقد كان مجرد هواية يشرع فيها طالب جامعي ومن البداية كان هدف لينوس أن يكون لديه نظام حر متوافق تمامًا مع يُونِكس الأصلي.
في تلك الأيام، الكثير من الناس كانوا مهتمين بالحصول على نظام يُونِكس الخاص بهم مجانًا…
يُصبح ناضِجًا
بعد عامين من نشر لينُكس، كان قد أصبح ذو شعبية كبيرة ولديه مستخدمين بالآلاف، نَمَى نموًّا هِسْتيريًّا.
أُضِيفَت جميع ميَّزات يُونكس على مدى العامين المقبلين، مما أدى إلى لينُكس الناضج الذي أصبح ما نعرفهُ اليوم. لينُكس هو نسخة يُونِكس كاملة، صالحة للاستخدام في كل شيء، موجود في كل مكان من حولك حتى كاد لا يخلو شيءٌ منه.
دَعمُ الأجهزة
أصبحت تعريفات القطع متاحة لجميع أنواع الأجهزة الجديدة، بسرعة متزايدة باستمرار، تقريبًا بمجرد أن أصبحت قطعة جديدة من الأجهزة متاحة، شخص ما يشتريها ويقدمها إلى المجتمع، وكان لنُكس في شهرة تصاعدية.
نَشْرُ المزيد من رِمَازٍ برمجي حر (free code) لمجموعة أوسع من تعريفات القطع، كل من يصنع تعريف يشارك رِمَازه البرمجي، أدى ذلك إلى ظهور تعريفات قطع الأجهزة الأخرى، هؤلاء المبرمجون لم يتوقفوا عند حواسيبهم الشخصية، بل كل قطعة من المعدات القديمة التي وجدوها كانت مفيدة للينُكس، إذ برمجوا لها تعريفًا لتصبح قابلة للاستخدام.
في ذلك الوقت، كان يطلق على هؤلاء الأشخاص “المهووسون” أو “المسوخ”، لكن لم يكن يهم بالنسبة لهم اللقب، طالما أن قائمة الأجهزة المدعومة نمت أكثر وأكثر، بفضل هؤلاء الناس، توزيعات جنو/لينُكس الآن ليست مثالية للتشغيل على حواسب جديدة فحسب، لكنها أيضًا المفضلة للأجهزة القديمة والغريب أن الأجهزة القديمة ستكون عديمة الفائدة إذا لم يكن لينُكس موجودًا، لقد قلل من النفايات الإلكترونية وأفاد البيئة!
لينُكس ليس النِظام
لينُكس ليس النظام تقنيًا، لكنهُ جُزْء من النظام فقط. لينُكس هو النواة (kernel)، يُعد قلب النظام والمسؤول الذي يوزع موارد الحاسوب على البرامج الأخرى التي تُشغِلها.
النواة جُزْءٌ جوهري من نظام التشغيل، لكنها غير مفيدة بحد ذاتها ولا تكفي لإنشاء نظام تشغيل، ويمكن أن تؤدي مهمتها في إطار نظام تشغيل كامل فقط.
لينُكس (النواة) مُستَخدَم عادة بجمعه مع نظام التشغيل جنو²¹ . النظام الكامل هو أساسًا جنو مع إضافة لينُكس إليه. كل التوزيعات المسماةُ “لينُكس” هي في الحقيقةِ توزيعَات جنو/لينُكس.
الكثير من الأشخاص لا يفهمون الفرق بين النواة التي هي لينُكس، وكامل النظام الذي هو جنو. أتلقى بعض الأحيان أسئلة مثل: أيهم يُفضَّل أن أستخدم لينُكس أم جنو؟
هؤلاء الأشخاص يعتقدون أن لينُكس نظام قائم بحد ذاته، ولا يدركون بأنه النواة فقط. بعض المبرمجون عادة يعرفون أن لينُكس هو النواة، لكن ولأنهم سمعوا أن كامل النظام يسمى “لينُكس” -كما يُشاع- فهم يتصورون تاريخًا يبرر تسمية النظام الكامل على النواة. على سبيل المثال، يعتقد الكثيرون أنه لحظة انتهاء لينوس تورفالدز من كتابة لينُكس -النواة- بحث مستخدموها عن برمجيات حرة (free software) أخرى لتتماشى معها، ووجدوا -دون سبب معين- أن معظم الأشياء الضرورية لإنشاء نظام شبيه بيُونِكس كانت متوفرة بالفعل، والتي هي جنو!
والحقيقة أن جنو كان متواجدًا قبل إنشاء لينُكس بكثير، ريتشارد ستالمان، الفيلسوف العبقري الذي صنع رخصة جنو العمومية (GPL)، وأوجد حركة البرمجيات الحرة، وخلق مشروع جنو، أنشأ جنو قبل نواة لينُكس بسنوات، ولذا يُصِرُّ ريتشارد ستالمان على تسميتهِ جنو/لينُكس، لكي تظهر مشاركة مشروع جنو.
جنو ينقصه النواة فقط، لأن نظام جنو يمتلك نواة اسمها هيرد (hurd)، لكنها غير مستقرة ولم تُصدر رسميًا، وما زالت في حيز التطوير منذ ذلك الوقت وحتى يومنا هذا.
لذا لكي نكون منصفين، عندما نتحدث عن نظام لينُكس ككل يجب أن نقول: جنو/لينُكس وليس لينُكس، وإن كنت تتحدث عن النواة فقُل: لينُكس.
تسميته
قد يتساءل البعض منكم: لِمَ اسمه لينُكس وماذا يُقصد به؟
لقد كتب لينوس تورفالدز في كتابه: “للمرح فقط²²”، أنه أراد تسميتهُ Freax، والاسم مجموع من أحرف كلمتي “free” و “unix”. أثناء بدء عمله على النظام، خزَّن الملفات تحت اسم “Freax” لمدة نصف عامٍ تقريبًا.
في البداية اعتمد لينوس تورفالدز اسم “لينُكس”، لكنه رفضه لأنه اعتبره مغرورًا للغاية.
من أجل تسهيل التطوير، حُمِّلت الملفات إلى خادم FTP الخاص بـ FUNET في سبتمبر 1991. آري ليمكي، الذي كان أحد المسؤولين المتطوعين بخادم FTP في في ذلك الوقت، لم يعتقد أن “Freax” كان اسمًا جيدًا، لذلك أطلق على المشروع اسم “لينُكس” على الخادم دون استشارة تورفالدز، وفي وقت لاحق، وافق تورفالدز على “linux”.
المصدر:Just for Fun: The Story of an Accidental Revolutionary²³
لماذا البطريق شعار لينُكس؟
لأن لينوس تورفالدز يحب البطاريق، هذا كل شيء!
أتعلم شيئًا؟ البطريق ممتلئ الجسم، لديه اسم ويُعرف باسم تكس “Tux”، وهو اختصار من كلمة Torvolds و Unix:
Torvolds + Unix = TUX
(ت)ورفالدز + يُونـ(كس) = تكس
في عام ستة وتسعين وتسعمائمة وألف (1996)، كان العديد من أعضاء قائمة نواة لينكس البريدية يتحدثون عن شعار مناسب له، في ذلك الوقت، لم تكن العديد من الاقتراحات أكثر من محاكاة ساخرة، كانت الإقتراحات التي تداولت حول الوحوش الأكثر شراسة، مثل أسماك القرش والنسور:
لكن عندما ذكر لينوس تورفالدز أنه كان مولعًا بطيور البطريق، أنهت هذه الإشارة النقاش وأصبح البطريق شعار لينُكس.
وقد أوضح لينوس سبب اختياره قائلًا:
كل الشعارات الأخرى كانت مملة جدًا -لم أكن أبحث عن “صورة شركة لينُكس”، كنت أبحث عن شيء ممتع ومتعاطف مع لينُكس، البطريق السمين قليلًا الذي يجلس بعد تناول وجبة دسمة يناسب الشعار كثيرًا.
هذه صورة لأحد عشاق لينُكس وشم البطريق تكس على يده:
المصدر:The history of tux the linux penguin²⁴
هل لينُكس صعب؟
في الأيام الأولى لتوزيعات جنو/لينُكس، كونك خبيرًا كان مطلوبًا للبدء في استخدام النظام. أولئك الذين أتقنوا التعامل مع جنو/لينُكس شعروا بأنهم أفضل من بقية “المستخدمين” الذين لم يروا الضوء بعد. ومن الأشياء الشائعة أنه يُطلب من المستخدمين المبتدئين: “RTFM“، أي -بصوت مرتفع-: اقرأ صفات الدليل اللعينة (read the fucking manual).
عندما كانت صفحات الدليل (pages manual) موجودة في كل نظام، كانت الشروحات بها من ناحية تقنية بحتة، بحيث أصبح من السهل جعل المستخدم الجديد يَنفُر عن تعلم النظام، وبدأ مجتمع مستخدمي جنو/لينُكس يدرك أنه إذا أُرِيدَ لجنو/لينُكس أن يشتهر في السوق، فلا بُدَّ من بعض التغييرات المهمة في إمكانية الوصول إلى النظام.
لكي تحصل على إجابة صائبة لهذا السؤال فإنه يعتمد على الشخص الذي تسأله.
مثلًا: سيقول مستخدموا نظام يُونِكس المتمرسون: “لا، ليس صعبًا”، لأن نظام جنو/لينُكس هو نظام تشغيل مثالي للمبرمجين، لأنه طُوِّرَ وما زال يطوره هؤلاء الأشخاص، كل ما يتمناه المبرمج متاح من المُصرِّفات (compilers) والمكتبات (libraries) وأدوات التطوير والتصحيح (Development and debugging tools) في مكان واحدٍ، هذه الحزم تأتي مع كل توزيعات جنو/لينُكس.
ضُمِّنَ مُصرِّف سي C-compiler²⁵ بالمجان -على عكس العديد من توزيعات يُونكس التي تطالب برسوم ترخيص لهذه الأداة. فهنالك كل الوثائق والكتيبات، وغالبًا ما تُرفَق أمثلة تساعدك على البدء في العمل في وقت قصير. يبدو الأمر مثل يُونكس والتبديل بين يُونكس ولينُكس هو شيء طبيعي.
استخدام لينُكس ليس صعبًا أو محصورًا للمستخدم ذو الخبرة -كما سـأوضحه في الفقرة التالية- ولكن تعلم سطر الأوامر ليس بالأمر السهل ويأخذ الكثير من الوقت والجهد، والتعب، هو ليس صعبًا أو مستحيلًا، بل هو واسع وضخم. تحتوي توزيعة جنو/لينُكس العادية على آلاف البرامج التي تستطيع استخدامها في سطر الأوامر.
هأنذا أحذرك، تعلم سطر الأوامر ليس بالمهمة السهلة!
لكن لا تقلق، فهذا المساق (course) الكتابي من المقالات من أجلك، لإخراجك من حيرتك، والأخذ بيدك خطوة بخطوة لجعل الأمر سهلًا وكأن مدرسًا خاصًا جالسًا بِقُربِك. لكني أريد منك بعض الصبر والمثابرة والجهد، فهذا سيتطلب منا الكثير من الوقت، ففي المقالات القادمة سنتعلم الكثير عن النظام وسنركز على طريقة التعامل -بشكل كامل- مع سطر الأوامر (command line). سيكون صديقك المفضل الذي لا يخون.
لينُكس للمستخدمين غير ذوي الخبرة
نمت شركات مثل RedHat²⁶ و canonical²⁷ ، ووفرت حزم توزيعات جنو/لينُكس مناسبة للاستهلاك الشامل، دُمِجَ قدر كبير من الواجهات الرسومية (GUIs) التي طورها المجتمع من أجل تسهيل إدارة البرامج والخدمات، وبصفتك مستخدمًا لجنو/لينُكس فاليوم لديك كل الوسائل للتعرف على نظامك من الداخل والخارج، لكن لم يعد من الضروري الحصول على تلك المعرفة لجعل النظام يمتثل لطلباتك.
ففي الوقت الحاضر يمكنك تسجيل الدخول عبر الواجهة الرسومية مثل: GNOME,KDE,XFCE, CINNAMON وغيرها الكثير، وبدء جميع التطبيقات المطلوبة دون حتى الاضطرار إلى كتابة أمر واحد في تلك الطرفية السوداء التي تُرعِبُك، في حين إنك لا تزال لديك القدرة على الوصول إلى جوهر النظام إذا لزم الأمر، وبسبب بنيته يسمح نظام جنو/لينُكس للمستخدم بالنمو داخل النظام، فهو يلائم -بنفس القدر- المستخدمين الجدد وذوي الخبرة. المستخدمون الجدد لا يجبرون على تأدية أشياءٍ صعبة، في حين أن المستخدمين ذوي الخبرة لا يجبرون على العمل بنفس الطريقة التي كانوا يعملون بها عندما بدأوا تعلم جنو/لينُكس، أو عندما كانوا يتعاملون مع نظام ويندوز windows.
في حين أن التطور في مجال سطح المكتب مستمر، وتجري أشياء كبيرة لمستخدمي سطح المكتب، وتعتبر عمومًا المجموعة الأقل احتمالًا لمعرفة كيفية عمل النظام. مطوري تطبيقات سطح المكتب يبذلون جهودًا لا تصدق لجعلها أجمل حواسب مكتب رأيتُها على الإطلاق، أو لجعل الجهاز الذي يعمل بتوزيعات جنو/لينُكس يبدو تماماً مثل ويندوز أو mac os.
ما هي التوزيعة (Distribution – Distro)
لقد كان وجود النص البرمجي المصدري للحزم يجعلها تسافر حول الإنترنت وتنتشر ويمكنك تجميعها وتعبئتها في نظام جنو/لينُكس مفيدة بشكل جيد للمهووسين. ومع ذلك، احتاج مستخدموا جنو/لينُكس إلى طريقة أبسط لوضع الأدوات المطلوبة معًا لعمل النظام حسب هواهم، ولتلبية هذه الحاجة، بدأ بعض أفضل المهووسين ببناء نكهتم الخاصة وأدَّى ذلك إلى ظهور مفهوم التوزيعة (Distribution)، وتُختصر إلى «Distro». يوجد في عالم لينُكس العديد والعديد من التوزيعات في كل مجال قد يخطر على بالك.
تتكون توزيعات جنو/لينُكس من المكونات اللازمة لإنشاء نظام جنو/لينُكس والإجراءات اللازمة لتركيب وتشغيل هذه المكونات. من الناحية الفنية، لينُكس هو ما يشار إليه بالنواة فقط (كما أوضحت سابقًا). قبل أن تكون النواة مفيدة، يجب أن يكون لديك برامج أخرى مثل الأوامر الأساسية -أدوات جنو-، والخدمات التي تريد تقديمها (مثل تسجيل الدخول عن بعد، مثل ssh، أو خوادم الويب، مثل apache)، وربما واجهة سطح المكتب (Desktop Environment) والتطبيقات الرسومية التي تريدها. ثُمَّ يجب أن تكون قادرًا على جمع كل ذلك معًا حسب هواك وما تريده وهذا هو مفهوم التوزيعة.
هل للينُكس مستقبل؟
الفكرة وراء البرمجيات مفتوحة المصدر والحرة (open source and free softwares) واضحة إلى حد ما (وسنتعرف عليهم أكثر في مقالات منفصلة لاحقًا): عندما يتمكن المبرمجون من قراءة وتوزيع وتغيير النص البرمجي المصدري سوف ينضج، فالناس قادرون على تكييفه وإصلاحه وتصحيحه، وبوسعهم أن يفعلوا ذلك بسرعة تجعل أداء مطوري البرمجيات في الشركات الحكرية يبدو ضئيلًا للغاية. ستكون هذه البرمجيات أكثر مرونة وأفضل جودة من البرمجيات التي طورتها الشركات الحكرية، لأن المزيد من الناس اختبروها في ظروف مختلفة أكثر من مطور البرمجيات المغلقة.
مبادرة المصدر المفتوح والحر بدأ لتوضيح هذا للعالم التجاري، وببطء شديد، البائعين التجاريين بدأوا يدركون هذه النقطة، ورغم أن العديد من الأكاديميين والتقنيين اقتنعوا بالفعل منذ أكثر من أربعون عامًا بأن هذا هو الطريق الذي ينبغي أن نسلكه، فإن البائعين التجاريين كانوا في حاجة لشيء يثبت لهم ذلك، لجعلهم يدركون أنهم قادرون على الاستفادة من المصدر المفتوح. الآن لينُكس قد تخطى المرحلة التي كان فيها تقريبًا نظام أكاديمي، مفيد لحفنة من الناس ذوي الخلفية التقنية فقط.
لينُكس هو مثال حي وناجح على ما سبق، وله مستقبل واعد للعالم التقني الحديث، لينُكس هو المستقبل، واستخدامه مطلب أممي ودولي وليس تفضيل شخصي لبعض المبرمجين فقط.
لينُكس هو مثال معقد على حكمة المجتمع. إنه مثال جيد من حيث يظهر أنه يمكنك جعل الناس يعملون بطريقة لا مركزية -أي بدون أن يوجه أي شخص مجهوده في اتجاه معين- ومع ذلك لا أزال أثق في أنهم سيتوصلون إلى أشياء أخرى مثيرة.
James Surowiecki
لماذا سطر الأوامر؟
لماذا قد أكتب هذا المقال للتعريف بلينُكس معلنًّا عن بدء مساق لتعلم سطر الأوامر بعيدًا عن تلك الواجهة الرسومية الجميلة؟
قد تتساءل في نفسك قائلًا: لماذا سطر الأوامر تحديدًا؟
لن استخدم تلك الواجهة السوداء المثيرة للاشمئزاز!
فلقد أصبحت من الماضي، أن لم أتمكن من فعل ما أريده باستخدام الفأرة (mouse) عبر الواجهة الرسومية فلست مهتمًا بتوزيعات جنو/لينُكس!
هذا الكلام غير صحيح البتة، لا يخفى على أحد أن سطر الأوامر يُعدُّ شيئًا لا غنى عنه، وسر قوة جنو/لينُكس، وأحد الأسباب التي جعلت المستخدمين الأوائل لجنو/لينُكس يستخدمونه هو سطر الأوامر الذي جعل المهام الصعبة ممكنة.
قد أوافقك الرأي أن الواجهة الرسومية تجعل الأمور السهلة أسهل ولكن ما غاب عن بالك أن سطر الأوامر يجعل الأمور الصعبة ممكنة، فبعض الأشياء لا يمكنك عملها سوى بسطر الأوامر.
سطر الأوامر يُعدُّ أسرع من الواجهة الرسومية بكثير، فلست بحاجة لرفع يدك من على لوحة المفاتيح (keyboard)، وثُمَّ أخذ الفأرة، وثُمَّ النقر عدة نقرات، أنه بطيئ!
يمكنك التعامل مع المهام المكررة بسهولة -بالأتمتة (Automation)- بكفاءة، ولا يَستخدِم سوى القليل من موارد الجهاز مقارنة بالواجهة الرسومية. يمكنك كتابة برامج نصية (scripts) للجهاز لتأدية عدة وظائف ما، ولا يمكنك إعادة كتابة البرامج الرسومية!
أتعلم شيئًا؟ سطر الأوامر للكسالى!
فعندما أضع يدي على لوحة المفاتيح لا أريد رفع أصابعي عنه، فأنا أكسل من أن إذهب لأخذ الفأرة…
سطر الأوامر يُمثل أداة مهمة لأي مدير أنظمة (systems administrator)، وعلى النقيض من مهارات الحاسوب الأخرى، معرفة سطر الأوامر تدوم لفترة أطول، والمعلومات التي تتعلمها ستبقى مُفيدة بعد عشر سنوات على الأقل.
لقد نجا سطر الأوامر من إختبار الزمن حتى هذه اللحظة.
المتطلبات
شيئان نريدهما فقط، حاسوب وأي توزيعة جنو/لينكس.
ثبت أي توزيعة جنو/لينُكس ولا يهم إن كانت حديثة، أختر أي توزيعة تستهويك.
لكن يجب أن تراعي النصحيتان التاليتان في اختيارك:
- لا تستخدم توزيعة لم تعدّ تطوّر أو توزيعة بُدئ تطويرها للتّو، فتلك التي لم تعد تطوّر قد تحتوي على مشاكل أمنية أو علل برمجية غير محلولة، وأما التوزيعات التي بدُئ تطويرها للتّو (بمعنى أن عمرها لم يتجاوز عامين أو ثلاثة) فهي لا تزال تفتقر للدعم الكبير ومن الصعوبة أن تجد من يساعدك في حلِّ مشاكلها، إضافةً لعدم ضمان توقف تطويرها خلال وقتٍ قصير بعد أن تكون صرفت عليها وقتًا طويلًا في التثبيت والتعلم.
- استخدم واحدة من التوزيعات الكبيرة، تعلمها وابق معها، هذا هو سرّ نجاح تجربتك مع جنو/لينُكس وتمكنك من الانتقال النهائي إليه ويوفر عنك التشتت الذي لا يناسب المبتدئين.
تذكر بأنك في هذا المساق ستتعرف بطريقة التفكير الخاصة بيُونِكس، فهي تختلف عن ويندوز كثيرًا، لينُكس ليس مجرد برمجية بل جزء من ثقافة يُونكس.
الخاتمة
عندما تفكّر بالانتقال إلى جنو/لينُكس أعلم أنك تحتاج إلى القراءة الطويلة والمعمقة لمعرفة استخدامه، هذا النوع من القراءة قد يكلفك شهرًا أو اثنين تبعًا لوقت فراغك، لكنه سيريحك تمامًا على المدى البعيد، فكن صبورًا وانتظر جديد المواضيع.
لن تكون هنا نهايتنا بل بدايتنا لسلسلة متكاملة وشاملة عن جنو/لينُكس والتعامل معه عبر سطر الأوامر.
وها أنا اخط بقلمي الخطوط الأخيرة لهذا المقال الشيق والممتع، ولعل قلمي وفِّق في تقديم ما يدور بعقلي، وأرجو إني قد وفِّقت في تسليط الضوء عن تاريخ لينُكس.
وفي نهاية الأمر لا يسعني سوى أن أشكرك على حسن قراءتك لهذا المقال، وأني لبشر أصيب وأخطِئ، فإن وفِّقت في طرح الموضوع فمن اللّٰه عز وجل وإن أخفقت فمن نفسي والشيطان.
أرجو منك تقييم كفاءة المعلومات من أجل تزويدي بالملاحظات والنقد البناء في خانة التعليقات أو عبر حساب الموقع، والسلام عليكم ورحمة اللّٰه تعالى وبركاته.