بسم الله الرحمن الرحيم
الصلاة والسلام على اشرف المرسلين صلى الله عليه وسلم
السلام عليكم ورحمة الله
دليل لينكس / كيف يعمل لينكس
يمكن تلخيص طريقة Linux كما يلي:
استخدم البرامج التي تؤدي مهمة واحدة فقط ، ولكن قم بها جيدًا.
لإنجاز المهام المعقدة ، استخدم العديد من البرامج المرتبطة معًا.
قم بتخزين المعلومات في ملفات نصية يمكن قراءتها من قبل الإنسان كلما كان ذلك ممكنًا.
لا توجد "طريقة واحدة حقيقية" لفعل أي شيء.
تفضل أدوات سطر الأوامر على الأدوات الرسومية.
معظم سمات لينكس هي نتيجة لهذه المبادئ. وفقًا لها ، تم تصميم نظام Linux من مكونات صغيرة قابلة للاستبدال. سنبحث أهمها بمزيد من التفصيل. هذه هي: أداة تحميل التمهيد ، و kernel ، و shell وبيئة سطح المكتب. بعد ذلك ، سوف نلقي نظرة على نظام الملفات في Linux. أخيرًا ، سوف نناقش أمان كمبيوتر يعمل بنظام Linux.
المكونات الأساسية لنظام لينكس
محمل التمهيد
هذا هو جزء النظام الذي يتم تنفيذه أولاً. عندما يكون لديك نظام تشغيل واحد مثبت فقط ، فإنه يقوم ببساطة بتحميل النواة . إذا كان لديك أنظمة تشغيل متعددة أو إصدارات متعددة من Linux kernel مثبتة ، فإنه يسمح لك باختيار أي منها تريد أن تبدأ. أكثر برامج تحميل الإقلاع شيوعًا هي GRUB GRAND Unload Bootloader و Lilo LInux LOader. لا يحتاج معظم المستخدمين إلى تحميل أداة تحميل التمهيد ، لأنه يتم تثبيته وتكوينه تلقائيًا. في الواقع ، يقوم Boot Loader بإنشاء تسلسل التمهيد الذي يتطلبه Linux Kernel ، وتحميل kernel وبعض برامج تشغيل الأجهزة المطلوبة لعملية التمهيد المبكرة في الذاكرة (كجزء مما يسمى "initramfs") ، وبدء تشغيل kernel.
النواة
النواة هي المكون الرئيسي للنظام الذي يتصل مباشرة مع الجهاز. في الواقع ، يشير اسم "Linux" بشكل صحيح إلى نوع معين من هذا البرنامج. يسمح للبرامج بتجاهل الاختلافات بين أجهزة الكمبيوتر المختلفة. يخصص kernel موارد النظام مثل الذاكرة ووقت المعالج ومساحة القرص الثابت والأجهزة الخارجية للبرامج التي تعمل على الكمبيوتر. إنه يفصل كل برنامج عن البرامج الأخرى ، بحيث عندما يواجه أحدهم خطأً ، لا يتأثر البرنامج الآخر. لا يحتاج معظم المستخدمين إلى القلق بشأن النواة في الاستخدام اليومي ، ولكن بعض البرامج أو الأجهزة سوف تتطلب أو تعمل بشكل أفضل مع بعض إصدارات kernel.
الشياطين
في نظام Linux النموذجي ، هناك العديد من الخدمات التي تعمل كعمليات في الخلفية ، تهتم بأشياء مثل تكوين اتصال شبكتك ، والاستجابة لأجهزة USB المتصلة ، وإدارة تسجيلات دخول المستخدمين ، وإدارة أنظمة الملفات ، إلخ. وغالبًا ما يطلق عليهم اسم "الشياطين" ، لأن أنها تعمل بصمت وغالبا ما تكون غير مرئية للمستخدم.
يُطلق على أحد هذه "الشياطين" ، التي بدأتها النواة بعد أن تنتهي من تمهيد نفسها ، init ويتمثل دورها في بدء بقية النظام ، بما في ذلك جميع "الشياطين" والجلسات الرسومية الأخرى.
تستخدم توزيعات Linux المختلفة init أنظمة مختلفة . نظام init التقليدي المستخدم منذ عصر Unix القديم ، هو Sys V init (بالإشارة إلى System V Unix ). لكن في الآونة الأخيرة ، تحولت توزيعات عديدة إلى أنظمة أكثر حداثة ، مثل systemd.
شل shell
تقوم shell ، التي تسمى أحيانًا "سطر الأوامر" ، بتنفيذ واجهة نصية تتيح لك تشغيل البرامج والتحكم في النظام عن طريق إدخال أوامر من لوحة المفاتيح. بدون وجود صدفة (أو أي شيء يمكن أن يحل محله ، مثل بيئة سطح المكتب) ، فإن جعل نظامك يعمل شيئًا ما صعبًا. القذيفة مجرد برنامج ؛ هناك العديد من الأصداف المختلفة لنظام التشغيل Linux ، تقدم كل واحدة منها ميزات مختلفة إلى حد ما. تستخدم معظم أنظمة Linux جهاز Bourne Again Shell Bash. تدعم أنظمة تشغيل Linux تعدد المهام (تشغيل عدة برامج مرة واحدة).
نافذة خادم
خادم نافذة X هو بديل رسومي الأوامر. وهي مسؤولة عن رسم الرسومات ومعالجة المدخلات من لوحة المفاتيح والماوس والأجهزة اللوحية والأجهزة الأخرى. خادم X هو شبكة شفافة. بمعنى أنه يسمح لك بالعمل في بيئة رسومية على الكمبيوتر الخاص بك وعلى كمبيوتر بعيد تتصل به عبر شبكة. تحتاج معظم البرامج الرسومية فقط إلى خادم X للتشغيل ، بحيث يمكن استخدامها تحت أي نافذة مدير وبيئة سطح المكتب.
مدير النوافذ
مدير النوافذ هو برنامج يتصل بخادم X. مهمتها هي إدارة النوافذ. إنها مسؤولة عن رسم حدود النافذة ، وإحضار نافذة إلى الأمام عند النقر فوقها ، ونقلها على الشاشة وإخفائها عند تصغير برنامجها. أمثلة لمديري النوافذ الشائعة هي:
Metacity
مدير نافذة بيئة سطح مكتب GNOME
مدير نافذة كيدي-KWin
مدير نوافذ - Xfce Xfwm ، مدير خفيف الوزن مصمم لاستهلاك أقل قدر ممكن من الموارد دون المساس بقابلية الاستخدام
Compiz Fusion
مدير نوافذ متطور يحتوي على الكثير من الحلوى مثل نوافذ المتحركة للنافذة القابلة للتخصيص ، وسطح المكتب المتعددة الموضوعة على مكعب يمكنك تدويرها بالماوس ، وحدود النوافذ الشفافة ، وتذبذب النوافذ أثناء سحبها ، إلخ.
بيئة سطح المكتب
بيئات سطح المكتب مثل GNOME Desktop Environment و KDE و Xfce هي مجموعات من البرامج المصممة لتقديم واجهة مستخدم متسقة لمعظم المهام الشائعة. هم ما يعنيه معظم الناس عندما يقولون "نظام التشغيل" على الرغم من أنهم مجرد جزء من نظام التشغيل بأكمله. يمكن أن تتعايش بيئات سطح المكتب المتعددة على نفس الجهاز. يمكن تثبيتها بسهولة وبعد التثبيت ، سيتم منح المستخدم طريقة لتحديد أي DE لبدء الجلسة به.
نظام الملفات
هناك العديد من أنظمة الملفات التي تستخدمها التوزيعات المستندة إلى Linux. وهي BTRFS و EXT3 / 4 و VFS و NILFS و SquashFS.
يحتوي القرص الصلب لجهاز الكمبيوتر الخاص بك على واجهة بسيطة إلى حد ما. يقبل فقط الأوامر مثل "كتلة القراءة رقم 550923 ووضعها في عنوان الذاكرة 0x0021A400". افترض أنك تقوم بتحرير جزء من النص وتريد حفظه على القرص. إن استخدام أرقام البلوك (العناوين) لتحديد أجزاء من البيانات ، مثل النص الخاص بك لن تحتاج فقط إلى إخبار البرنامج الخاص بك بمكان حفظ الملف باستخدام أرقام البلوكات الخام ، بل عليك التأكد من أن هذه الكتل ليست تستخدم بالفعل للصور العائلية ، أو مجموعة الموسيقى الخاصة بك ، أو حتى نواة نظامك. لحل هذا ، تم تقديم الملفات. الملف هو مساحة على القرص تخزّن البيانات ولها اسم (مثل "example.txt"). يتم تنظيم الملفات في مجموعات تسمى الدلائل. يمكن أن تحتوي الدلائل على أدلة أخرى ، في بنية شبيهة بالشجرة. يمكن تحديد كل ملف بشكل فريد بواسطة "مسار" ، والذي يصف مكانه في التسلسل الهرمي للدليل. بالنسبة لبقية هذا القسم ، سيتم افتراض أنك على دراية بالملفات والدلائل والمسارات.
في نظام Linux ، يسمى دليل المستوى الأعلى بالدليل الجذر. يجب أن يكون كل ملف ودليل في النظام سليل الدليل الجذر. (من الشائع التحدث عن الدلائل باستخدام مصطلحات العلاقات الأسرية ، مثل "الوالد" ، "الطفل" ، "المنحدر" ، "الجد ،" الأخوة ، "وما إلى ذلك.) يمكن أن تحتوي أسماء الملفات والدلائل على جميع الأحرف باستثناء الحرف الفارغة (التي يستحيل إدخالها من لوحة المفاتيح) والحرف "/". مثال المسار سيكون:
/var/logs/apache/error.log
يشير هذا المسار إلى ملف يسمى "error.log" والذي يوجد في دليل يسمى "apache" ، وهو دليل فرعي لدليل يسمى "logs" ، وهو دليل فرعي لدليل يسمى "var" ، وهو دليل فرعي من الدليل الجذر. الدليل الجذر ليس له اسم مثل الآخر ؛ يتم الإشارة إليه فقط بحرف "/" في بداية المسار.
يحتوي الدليل الجذر عادةً على عدد صغير فقط من الدلائل الفرعية. الأهم هي:
bin - البرامج اللازمة لأداء المهام الأساسية ، أي تغيير دليل أو نسخ ملف
dev - الملفات الخاصة التي تمثل الأجهزة
etc - ملفات التكوين
home - يحتوي على أدلة خاصة للمستخدمين
الوسائط أو - mnt نقطة تحميل لمحركات الأقراص الخارجية المتصلة بهذا الكمبيوتر ، أي الأقراص المضغوطة أو مفاتيح USB
tmp - الملفات المؤقتة
usr - البرامج المثبتة على الكمبيوتر
var - البيانات المتغيرة التي تنتجها البرامج ، مثل سجلات الأخطاء
أجهزة كملفات
مثلما يمكن كتابة الملفات وقراءتها ، قد تقوم الأجهزة الموجودة في نظام الكمبيوتر بإرسال واستقبال البيانات. لهذا السبب ، يمثل Linux الأجهزة المتصلة بالنظام كملفات في دليل / dev . لا يمكن إعادة تسمية هذه الملفات أو نقلها (لا يتم تخزينها على أي قرص). هذا النهج يبسط إلى حد كبير برمجة التطبيقات. إذا كنت ترغب في إرسال شيء ما إلى كمبيوتر آخر من خلال منفذ تسلسلي ، فأنت لا تحتاج حتى إلى برنامج آخر - يمكنك ببساطة الكتابة إلى الملف / dev / ttyS0 ، والذي يمثل منفذًا تسلسليًا. بنفس الطريقة ، يمكن قراءة الملف الذي يمثل بطاقة الصوت ( / dev / dsp ) لالتقاط الصوت من ميكروفون متصل أو كتابته لإنتاج صوت عبر مكبرات الصوت.
أين هي أحرف محركات الأقراص؟
إذا كنت قد استخدمت Windows ، فقد تفاجأ بعدم وجود أحرف محركات أقراص في Linux. يمثل الدليل الجذر محرك الأقراص المثبت عليه النظام (C: في Windows). يمكن تثبيت "محركات الأقراص" الأخرى أو "إلغاء تحميلها" في أي دليل (ويفضل أن يكون ذلك فارغًا) في نظام الملفات. بتركيب قرص ، تقوم بإرفاق الدليل الجذر لهذا القرص بدليل في نظام الملفات. بعد ذلك ، يمكنك الوصول إلى القرص كما لو كان جزءًا من قرص النظام الخاص بك. على سبيل المثال: إذا كان لديك قرص يحتوي على نص دليل ، والذي بدوره يحتوي على ملف يسمى linux-intro.tex وقمت بتركيب محرك الأقراص هذا في الدليل / media / usbkey ، يمكنك الوصول إلى الملف linux-intro.tex من خلال المسار /media/usbkey/text/linux-intro.tex.
في معظم توزيعات Linux ، يتم تثبيت مفاتيح USB والأقراص المدمجة تلقائيًا عند إدراجها أو إرفاقها ، ويكون دليل التحميل الافتراضي دليلًا فرعيًا / media أو / mnt . على سبيل المثال ، قد يتم تثبيت أول محرك أقراص مضغوطة على / media / cdrom0 ، بينما يمكن الوصول إلى محتويات مفتاح USB من خلال / media / usb0 . يمكنك تغيير دليل التحميل يدويًا ، لكن سيتعين عليك معرفة أمرين قياديين ومعرفة ملف الجهاز الذي يمثل محرك الأقراص الخاص بك للقيام بذلك (الأمر الذي تحدثنا عنه في القسم السابق - تحصل الأقراص أيضًا على تمثيل ملفها في / dev دليل). سوف نغطي هذا الموضوع في وقت لاحق.
المستخدمين
المستخدم هو استعارة لشخص ما أو شيء يتفاعل مع النظام. يتم تعريف المستخدمين من خلال اسم المستخدم وكلمة المرور. داخليًا ، يكون لكل مستخدم رقم فريد تم تعيينه ، والذي يسمى معرف المستخدم أو UID للاختصار. تحتاج فقط إلى معرفة UID الخاص بك في بعض الحالات النادرة. بالإضافة إلى ذلك ، يمكن تنظيم المستخدمين في مجموعات. يوجد مستخدم خاص واحد في جميع أنظمة Linux ، والذي له اسم المستخدم "root" و UID 0. ويطلق عليه أيضًا اسم المستخدم الخارق. يمكن للمستخدم الخارق فعل أي شيء ولا يتم التحكم به بأي طريقة بواسطة آليات الأمان. وجود حساب مستخدم كهذا مفيد جدًا للمهام الإدارية وتكوين النظام. في بعض التوزيعات (مثل Ubuntu) يتم تعطيل الوصول المباشر إلى حساب الجذر وتستخدم آليات أخرى بدلاً من ذلك.
إذا كان لديك أكثر من حساب مستخدم واحد على نظام Linux ، فلن تحتاج إلى تسجيل الخروج والعودة مرة أخرى لتبديل عمليات التمثيل. هناك أوامر shell خاصة تسمح لك بالوصول إلى الملفات وتنفيذ البرامج كمستخدمين آخرين ، شريطة أن تعرف أسماء المستخدمين وكلمات المرور الخاصة بهم. بفضل هذه الآلية ، يمكنك قضاء معظم الوقت كمستخدم لديه امتيازات منخفضة والتحول إلى حساب ذي امتياز أعلى فقط إذا كنت بحاجة إلى ذلك.
تتمثل ميزة التشغيل كمستخدم غير متميز في أن أي أخطاء ترتكبها من غير المرجح أن تلحق الضرر بالنظام. لا يمكن تغيير المكونات الأساسية للنظام إلا بواسطة المستخدم الجذر.
أذونات الملف
يوجد المستخدمون للتحكم في مدى قدرة الأشخاص والبرامج التي تستخدم النظام على التحكم فيه. ويتم ذلك عن طريق نظام أذونات الملفات. ينتمي كل ملف إلى أحد المستخدمين - أي أن لكل ملف مالك. بالإضافة إلى ذلك ، يمكن تعيين ملف لمجموعة من المستخدمين ، ولكن يجب أن يكون المالك عضوًا في هذه المجموعة. كل ملف له ثلاثة أنواع من الأذونات: قراءة ، كتابة و تنفيذ . يمكن تعيين هذه الأذونات إلى ثلاثة أنواع من العلاقات المالك:
مالك ، مجموعة و غيرها . آخر يشمل جميع المستخدمين الذين ليسوا مالك الملف ولا ينتمون إلى المجموعة التي تملك الملف. يمكن فقط لمالك الملف أو الخارق (الجذر) تغيير أذونات أو ملكية الملف.
يسمح هذا النظام بالتحكم الدقيق في من يمكنه فعل ما على كمبيوتر معين. يمكن منع المستخدمين من تعديل ملفات النظام عن طريق إزالة إذن "الكتابة" منهم ، أو من تنفيذ أوامر معينة عن طريق إزالة إذن "التنفيذ". لاحظ أنه قد يُسمح للمستخدمين بتنفيذ البرامج دون تغييرها. هذا مهم للغاية ، لأن معظم أنظمة Linux تتضمن مترجمًا يتيح لك إنشاء برامجك الخاصة.
عادةً ما يتم منح أذونات الملفات بثلاثة أرقام ثمانية (كل من 0 إلى 7). تمثل الأرقام أذونات المالك والمجموعة والمستخدمين الآخرين على التوالي. كل رقم هو مجموع رموز الأذونات: 1 للتنفيذ ، 2 للكتابة و 4 للقراءة. على سبيل المثال ، يسمح "755" للجميع بقراءة الملف أو تنفيذه ، ولكن فقط مالكه يمكنه كتابته. يسمح "400" للمالك بقراءة الملف ، ولا يُسمح لأي شخص آخر بعمل أي شيء. يسمح "540" للمالك بقراءة الملف أو تنفيذه ، ويقوم أعضاء المجموعة بقراءة الملف والمستخدمين الآخرين دون فعل أي شيء.
تستخدم chmod (وضع التغيير) ، و chown (تغيير المالك) ، و chgrp (مجموعة التغيير) لتغيير أذونات الملف.
ليست هناك تعليقات:
إرسال تعليق
(( مَا يَلْفِظُ مِنْ قَوْلٍ إِلَّا لَدَيْهِ رَقِيبٌ عَتِيدٌ))