إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

HowTo Linux Directory Structure

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • HowTo Linux Directory Structure

    السلام عليكم ورحمة الله وبركاته


    فى هذا الموضوع سوف نتحدث عن بعض الأساسيات للتنظيم الهيلكى لجنو/لينوكس أو فيما يعرف بال directory structure.

    المنتقل من ويندوز إلى جنو/لينوكس سوف يجد الأمر غريب بل سيندهش من هيكلة المجلدات على النظام . فى ويندوز تجد الأمور بسيطة كما يعتقد البعض وذلك ﻷننا درجنا على استعمال نظام التشغيل ويندوز لفترات طويلة تتعدى السنوات ولذلك عندما يأتى الوافد الجديد إلى جنو/لينوكس لينظر حوله يجد نفسه كالغريق بل هو الغريق ﻻ يدرى ماذا يفعل بالنظام وما فائدة ذلك النظام العقيم ( وجهة نظر البعض فى البداية ) ولماذا أقحم نفسه فى ذلك الفخ !!

    ببساطة عزيزى أنت تستخدم نظام تشغيل آخر هذه هى الحقيقة !!

    نعم لنفترض جدلا أنك أحد سكان العصر الحجرى ! تستعمل الحجر لإشعال النار وفجأة وجدت أمامك فرن يعمل بالطاقة الشمسية ؟ ماذا ستفعل ماهو اول شعور يخطر ببالك ؟؟ قد يكون خيالك أوسع من الكرة الأرضية وتتخيل أن ذلك الفرن مركبة فضائية أو وحش فضائى هبط من الفضاء لإعلان الحرب !!!


    مهلا ذلك بالضبط ما يحدث مع مستخدمى ويندوز ! بمعنى مستخدم لويندوز لثلاث سنوات يريد تعلم نظام التشغيل جنو/لينوكس فى ثلاث دقائق !


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

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


    والآن لنبدأ فى سرد بعض المجلدات الرئيسية والذى يعتمد عليها نظام التشغيل جنو/لينوكس فى معظم التوزيعات :

    كود:
    < / >
    ترمز العلامة / أو فيما تسمى ال forward slash إلى root filesystem أو root directory ونستطيع تشبيه ال root directory بالبارتشن الخاص الذى تقوم بثبيت ويندوز عليه وغالبا يكون البارتشن الذى يحمل الحرف C والذى يحتوى على مجلد ال Program files ومجلد ال Windows ومجلد ال My Documents .

    ملحوظة : يجب أن تفرق بين ثلاثة أمور :

    الأمر الأول : هو ان ال root directory او ال root filesystem مفهوم بشكل عام يحتوى كل الملفات والمجلدات التى توجد على البارتشن الخاص بأى توزيعة جنو/لينوكس والذى تم ثبيت التوزيعة عليه وهو شبيه بالبارتشن الذى يتم تثبيت الويندوز عليه كما ذكرنا سابقا وغالبا لدى البعض يكون C.

    الأمر الثانى : هو root account وذلك يمثل حساب المستخدم الجذر على التوزيعة أو فيما يقابل ال Administrator على نظام ويندوز .

    الأمر الثالث : هو ال root's home directory أو المجلد الخاص بالمستخدم الجذر وهو يعتبر مجلد فرعى ضمن مكونات المجلد الرئيسى root directory .


    كود:
    < /boot >
    كلمة boot فى مفهوم الحاسب الآلى تعنى الإقلاع والذى يعنى بداية تشغيل النظام من أول الضغط على زر التشغيل حتى الوصول إلى واجهة المستخدم سواء كانت طرفية أو رسومية .

    ومن مفهوم الكلمة هو ذلك المجلد الفرعى تحت المجلد الرئيسى root filesystem الذى يحتفظ بكل المعلومات المطلوبة لجنو/لينوكس أثناء عملية الإقلاع والذى يعنى بداية تشغيل النظام من أول الضغط على زر التشغيل حتى الوصول إلى واجهة المستخدم سواء كانت طرفية أو رسومية .

    ومن مفهوم الكلمة هو ذلك المجلد الفرعى تحت المجلد الرئيسى root filesystem او كما ذكرنا سابقا /والذى يحتفظ بكل المعلومات المطلوبة لجنو/لينوكس أثناء عملية الإقلاع . كما يحتوى ذلك المجلد على الكيرنل الخاصة بجنو/لينوكس تحت إسم vmlinuz كما يحتوى أيضا هذا المجلد على برنامج مدير الإقلاع أو ال bootloader وملفات الإعدادات الخاصة به .



    كود:
    < /etc >
    المجلد الفرعى etc/ يحتوى على ملفات الإعدادت الخاصة بالنظام ككل أو فيما يُعرف ب Configuration Files والتى تشمل أيضا ملفات الإعدادت للحزم التى يتم ثبيتها على النظام . معظم الملفات التى تندرج تحت ذلك المجلد الفرعى عبارة عن ملفات نصية يمكن التعديل عليها من قبل المستخدمين إذا توافرت لهم الصلاحيات المسموح بها من قبل المستخدم الجذر او root .

    بعض الملفات والمجلدات التى توجد فى المجلد etc/ من الأهمية بمكان ومنها على سبيل المثال :

    كود:
    /etc/X11/
    هذا المجلد يحتوى على ملفات ال configuration الخاصة ببيئة الواجهة الرسومية وأهم هذه الملفات التى تجد داخل المجلد X11/ هو الملف xorg.conf .

    كود:
    /etc/inittab
    هذا الملف عبارة عن ملف نصى يحدد أين من العمليات أو processes المراد بدؤها أثناء عملية الإقلاع . على سبيل المثال من خلال ذلك الملف تستطيع تحديد هل يتم الدخول إلى جنو/لينوكس عن طريق بيئة الواجهة الرسومية X-windows أو الدخول فقط بالطرفية وتوجد عدة اوضاع لذلك وكل من تلك الأوضاع يأخذ رقم معين فمثلا بيئة الواجهة الرسومية على توزيعة ديبيان تأخد الأرقام من 2 إلى 5 أو فيما يعرف بال multi-user runlevels والرقم 1 خاص بالدخول إلى النظام بمستخدم واحد فقط أو single-user runleve أما الرقم 0 فيكون خاص بعملية إيقاف التشغيل أو ال halt والرقم 6 خاص بعملية إعادة التشغيل أو reboot .كما يمكنك أيضا من خلال ذلك الملف تحديد ما يمكن فعله عند الضغط على الأزار CTRL+ALT+DEL هل يقوم الجهاز بعمل إيقاف تشغيل أم إعادة تشغيل وهكذا .


    كود:
    /etc/fstab
    هذا الملف عبارة عن ملف نصى أيضا يحتوى على المعلومات التى تخص أنظمة الملفات المختلفة ونقط الضم الخاصة بها أو mount points وكذلك الخيارات التى توضع على تلك النقط الخاصة بعملية ال mount .

    كود:
    < /bin, /usr/bin >
    يحتوى كلا من المجلد الفرعى bin/ والملج الفرعى usr/bin/ على البرامج المُثبتة على النظام ككل . فالمجلد الفرعى bin/ يحتوى على البرامج المهة والتى يحتاجها جنو/لينوكس للعمل بشكل مناسب مثل ال shells, ls, grep,cp,rm وبعض البرامج الأخرى المهمة .

    أما المجلد usr/bin/ فيحتوى على كل التطبيقات والبرامج التى تخص المستخدمين على النظام ، وعادة ﻻيوجد فرق بين كون التطبيق موجود على المجلد bin/ او المجلد usr/bin .

    ملحوظة : قد يختلط على البعض مفهوم مهم وهو : هل الأمر الذى نقوم بكتابته فى الطرفية أو ال shell برنامج أم ﻻ ؟

    نعم الأوامر على نظام التشغيل جنو/لينوكس تسمى برامج وﻻ يوجد فرق بين المُسَميين .

    كود:
    < /sbin, /usr/sbin >
    يحتوى كلا من المجلد الفرعى sbin/ والمجلد usr/sbin/ على برامج إدارة النظام أو system administration programs . وتلك الاوامر أو البرامج يتم تنفيذها من قبل مدير النظام أو المستخدم الجذر أو root ﻷنها تتطلب تصاريح خاصة ﻻ يتم السماح بها إﻻ فى حالة منحها من قِبل ال root .


    كود:
    < /usr >
    يحتوى هذا المجلد على كل التطبيقات التى تخص المستخدمين على جنو/لينوكس كما يحتوى أيضا على ملفات الإعدادات التى تخص التطبيقات الخاصة بهم وملفات الوثائق أو Documents files وغيرها من تلك الأمور ، ولذلك نظرا لكبر حجم هذا المجلد إذا تطلب الأمر يفضل وضعه على بارتشن خاص به أو تخصيص مساحة كبيرة له من ال filesystem.


    بعض الملفات التى توجد فى المجلد usr/ على سبيل المثال لا الحصر :

    كود:
    /usr/src

    هذا المجلد الفرعى يحتوى على الشفرة المصدرية للبرامج والملفات أو فيما يعرف ب source code files ويشمل أيضا الشفرة المصدرية للكيرنل .

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


    كود:
    /usr/include
    يحتوى ذلك المجلد على ال Header Files الخاصة بال C compiler .وتكمن الوظفية الجوهرية لملفات ال Header عند عملية بناء التطبيقات أو Building standard programs ،حيث تحتوى ال Header Files على المعرفات أو ال identifiers التى يجب تعريفها فى أكثر من شفرة مصدرية أو source code .

    كود:
    < /lib >
    يحتوى ذلك المجلد على المكتبات المشتركة التى تستعملها البرامج على النظام . هذه المكتبات تشبه ملفات ال dll على نظام التشغيل ويندوز .


    كود:
    < /home >
    فى هذا المجلد يتم تخزين الأمور الخاصة بالمستخدم أو فيما يعرف ب users's home directories . ومن البديهى أن نعرف ان لكل مستخدم على النظام له مجلد خاص به . ويعتبر هذا المجلد هو المكان الوحيد الذى يكون لدى المستخدم القدرة على الكتابة والقراءة فيه بدون أى مشاكل إﻻ إذا تم سحب تلك التصاريح منه من قِبل المستخدم الجذر .

    كود:
    < /root >
    المجلد الفرعى root/ هو المجلد الخاص بالمستخدم الجذر root على النظام وكما ذكرت سابقا لابد من التفرقة بين ال root filesystem وال root home directory وال root account .


    كود:
    < /var >
    يحتوى المجلد الفرعى var/ على البيانات التى تتغير باستمرار مع عمل النظام ، ويحتوى على بعض المجلدات المهمة ونستعرض بعضها معا :

    كود:
    /var/log

    يحتوى هذا المجلد على ملفات سجلات النظام أو system log files وتتغير هذه الملفات باستمرار تبعا لحالة ووضع النظام ، ولذلك من المهم تصفح محتويات هذه الملفات فى حالة حدوث أعطال بالنظام فقد تحتوى تلك الملفات على معلومات تساعد فى حل هذه الاعطال .


    كود:
    /var/mail
    يحتوى هذا المجلد على رسائل البريد الإلكترونى الصادرة والواردة من وإلى المستخدمين على النظام .



    كود:
    /var/spool
    هذا المجلد يحتوى على الملفات التى تتطلب بعض العمليات وجودها مصطفة او queued مثل عملية الطباعة .


    كود:
    < /tmp >
    المجلد الفرعى tmp/ يحتوى على الملفات المؤقتة التى تنشؤها البرامج أثناء عملها .


    كود:
    < /dev >
    يحتوى هذا المجلد على العتاد الخاص بجهاز الكمبيوتر الخاص بك . ويتعامل لينوكس مع عتاد الكمبيوتر وكأنه عبارة عن ملفات تستطيع قرائتها والكتابة عليها ومن أمثلة العتاد التى توجد داخل ذلك المجلد :

    كود:
    /dev/fd0 (يمثل الفلوبى ديسك) 
    /dev/cdrom (يمثل سواقة الأقراص )
    /dev/hda (ata يمثل الهاردديسك من نوع)  
    /dev/sda (serial-ata يمثل الهاردديسك من نوع)

    كود:
    < /mnt >
    يحتوى هذا المجلد على نقط الضم التى قمنا بإنشائها أثناء عملية ال mount . ونعنى بعملية ال mount هو ربط المسار الأصلى للاجهزة مثل الهارد ديسك والcdrom والfloppy مع نقط يتم إنشائها بواسطة المستخدم كى نستطيع العمل على تلك الأجهزة وتسمى المسارات الأصلية للأجهزة بال physical storage devices .

    كود:
    < /proc >

    بعتبر المجلد proc/ من المجلدات التى توجد وﻻ توجد !! نعم فهذا المجلد ما إﻻ مجلد تخيلى يتم استخدامه من قِبل الكيرنل فى الوقت الحالى أو running time ويحتوى على ملفات تسخدم فى إظهار حالة الكيرنل والعمليات التى تجرى فى صورة ملفات نصية .


    كود:
    < /lost+found >
    يستخدم نظام التشغيل جنو/لينوكس هذا المجلد لتخزين الملفات التى تم استرجاعها بعد حدوث crash للنظام أو فى حالة قام بالنظام بعمل إيقاف تشغيل بدون فك نقطة الضم عن ال root filesystem .


    السلام عليكم ورحمة الله وبركاته
    التعديل الأخير تم بواسطة Seven_Eleven; الساعة 01-12-2007, 11:52 AM.

  • #2
    سلام عليكم ..

    وصباح النور ..

    درس جميع ولو استعنت ببعض الصور لتقسيم الملفات .. لتوضيع لكان رائع .. بارك الله فيك ..

    واسمحلي اضيف هذي الصوره لتوضيع الاندرجات للملفات فى لايونكس ..

    wiki

    دمت بود
    BAD3R

    Twitter
    : @Linux4SA

    تعليق


    • #3
      وعليكم السلام

      كده تمام مع الإضافة اللى انت حطتها يا بدر
      التعديل الأخير تم بواسطة Seven_Eleven; الساعة 01-12-2007, 01:01 PM.

      تعليق


      • #4
        لمزيد من التفاصيل

        كود:
        man hier
        براءة:
        إن سطام لا يضمن صحة و لا دقة ما يكتب ، بل هو إلى الخطأ أقرب منه للصواب ، فدقق و لا تسلّم .
        @ksatux

        تعليق

        يعمل...
        X