التسلسل الهرمي القياسي لنظام الملفات

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث

التسلسل الهرمي القياسي لنظام الملفات (بالاجليزية: Filesystem Hierarchy Standard) تختصر (FHS). يحدد الادلة الرئيسية ومحتوياتها في انظمة التشغيل لينكس. وتقوم مؤسسة لينكس بالمحافظة على (FHS) ومؤسسة لينكس هي منظمة غير ربحية تضم بائعي البرمجيات والعتاد الرئيسيين مثل إتش بي، ريدهات، آي بي إم, وديل.

الإصدار الحالي هو 2.3، الذي اعلن عنه في 29 يناير 2004.

تاريخ[عدل]

تاريخ الإصدارات[عدل]

المعنى
اللون معيار قديم; غير مدعوم
الأصفر معيار قديم; ما زال مدعوم
الأخضر الإصدار الحالي
الأزرق اصدار مستقبلي
الإصدار تاريخ الصدور ملاحظات
v1.0 1994-02-14 FSSTND[1]
v1.1 1994-10-09 FSSTND[2]
v1.2 1995-03-28 FSSTND[3]
v2.0 1997-10-26 FHS 2.0 هو خليفة FSSTND 1.2. تم تغيير اسم "قياسي" إلى التسلسل الهرمي القياسي لنظام الملفات.[4][5][6]
v2.1 2000-04-12 FHS[7][8][9]
v2.2 2001-05-23 FHS[10]
v2.3 2004-01-29 FHS[11]
v3.0 TBA FHS[12]

هيكل الادلة[عدل]

جميع الملفات والادلة في التسلسل الهرمي لنظام الملفات القياسي موجودة تحت الدليل الجذر "/". حتى لو كانت هذه الملفات والادلة موجودة على وسيلة تخزين خارجية مثل قرص مدمج.

التسلسل الهرمي لدليل الجذر /[عدل]

الدليل الوصف
/ المجلد الأساسي جذر النظام, الذي تتفرع منه جميع الملفات والادلة في نظام ملفات التسلسلي.
/bin/ يحتوي على الأوامر الأساسية التي ليس لها واجهة رسومية مثل الامر (ls) والأمر (cat).
/boot/ يحتوي هذا المجلد على جميع الملفات التي يحتاجها النظام لكي يستطيع أن يبدأ العمل فهو يحتوى على ملفات محمل الإقلاع, ونسخة من النواة, وهى التي يتم تحميلها في ذاكرة الوصول العشوائية وهذه هي الخطوه الأولى والبسيطة لبدية النظام، ثم يتبعها النظام بتحميل كل ملفاته وذلك طبقاً لما هو موجود في الملف fstab وinittab ونسخه النواة المصغره تكون في هذا المجلد باسم vmlinuz ويتبعها رقم الكيرنل ووظيفتها فقط هي الإرشاد على النواة الأساسية للنظام لكي يبدأ عمل النواة.
/dev/ هذا المجلد هو اختصار لكلمة (device) وهو يحتوي على جميع ملفات الأجهزة المتصلة بالنظام وغير ذلك من تعاريف العتاد, ومن هذه الأجهزة القرص المرن (floppy disk) والقرص الصلب (hard disk) ويعبر عنهم باختصارات مثل fd اوhd...
/etc/ يحتوي هذا المجلد على ملفات التهيئه الخاصه بالنظام, ويشمل كل ملفات التهيئة والاعداد مثل ملفات اعداد الشبكة, الخادم, البرامج, والإقلاع. وهذا المجلد يحوى ملفات ومجلدات.
/home/ يحتوي هذا المجلد على الأدلة الافتراضية لمستخدمي النظام مثلا إذا كان اسم مستخدم "خالد" بالنظام فسوف تجد الدليل "خالد" داخل هذا المجلد.
/lib/ يحتوى هذا المجلد على المكتبات التي تعتمد عليها الأوامر والبرامج في عملها ولهذا السبب فإن هذه المكتبات تسمى Shared Libraries وفكرتها أنها تحتوى على الأجزاء التي تتكر في الكود البرمجي للبرامج مما يجعل المبرمجين يتفادون تكرار كتابة هذا الجزء مع كل برنامج وأيضا يحتاجها النظام في حالات مثل Single User Mode وحالات الطوارئ أما الأعمال التي يحتاجها النظام في الأعمال الأقل أهميه فيتوجه إلى /usr/lib/.
/media/ نقطة ضم الوسائط القابلة للا زالة مثل القرص المدمج (ظهر في التسلسل الهرمي القياسي لنظام الملفات الإصدار 2.3).
/mnt/ يحتوي على الاجزاء التي تضم لنظام بشكل مؤقت. مثل القرص المرن, القرص المدمج, واقسام القرص الصلب.
/opt/ حزم وبرمجيات من طرف ثالث, اي انها لم تمر على منتجي التوزيعة.[13]
/proc/ يحتوى هذا المجلد على نظام ملفات افتراضي غير حقيقي لانه لا يوجد بالفعل على القرص الصلب, بل أنه يحتوى على عمليات ومعلومات النواة التي تعمل الآن على النظام وتعد هذه المعلومات هامة جدا في حالات الأعطال الطارئة والمتعلقة بالعتاد, وأهم المعلومات التي قد يحتاج إليها هي I/O Port، Devices، interrupts.
/root/ مجلد البيت للمستخدم الجذر.
/sbin/ يحتوى على الأوامر والملفات التي تعد من أدوات إدارة النظام.
/srv/ Site-specific data which is served by the system.
/tmp/ هذا الدليل خاص بملفات النظام المؤقتة التي سوف تذهب عند إعادة تشغيل الجهاز.
/usr/ من أكبر المجلدات يحتوي على مجلدات يوجد فيها البرامج التي يحتاجها النظام في أعماله الاعتيادية, أي لا بحتاجها النظام في عملية بدء التشغيل ولا في حالات الطوارئ. ولهذا المجلد نظام هرمي يشبة الـ Root Directory [14]
/var/ هذا الدليل يحتوي على على الملفات التي يتغير حجمها ووبيانتها باستمرار. اسم الدليل هو اختصار لكلمة (variable) وتعني متغير, ويحتوي على ملفات تسجيل الدخول لجميع المستخدمين (log files), التي تتغير كلما قام النظام بعملية تسجيل دخول جديده هذا بالإضافة إلى ملفات الطابعات, وغيرها مثل خادم الاباتشي, والـ إف تي بي
lost+found
يتكرر هذا الملف على حسب عدد اقسام القرص الصلب, ووظيفتة هو عندما يقوم الأمر fsck بالعمل على نظام الملفات فإن من وظائف هذا الأمر أن يقوم بإرجاع الملفات كما كانت على النظام فإن صادف ولم يتعرف على مكان الملف فإنه يضعها في هذا الملف تاركا عملية تحديد مكان الملف لمدير النظام

التسلسل الهرمي لدليل /etc/[عدل]

/etc/ يحتوي هذا المجلد على ملفات التهيئه الخاصه بالنظام, ويشمل كل ملفات التهيئة والاعداد مثل ملفات اعداد الشبكة, الخادم, البرامج, والإقلاع. وهذا المجلد يحوى ملفات ومجلدات
/etc/passwd/
ملف يحتوي على قاعدة بيانات المستخدمين, كل شيء يتم تخزينة عن المستخدمين في هذا الملف ما عدى كلمة المرور التي تكون في ملف أخر بصوره مشفره داخل الملف /etc/shadow/
/etc/fdprm/
يحتوي على جدول الباراميتر الخاص بالقرص المرن ويحتوي أيضاً على الاختلافات في الصيغ الخاصة بالقرص المرن ويستخدم بواسطة الأمر setfdprm.
/etc/fstab/
عباره عن ملف يحتوي على أنظمة الملفات التي سيقوم بضمها عند بدء التشغيل عن طريق الامرmount -a, وتحديد منطقة السواب التي ستضم عن طريق الأمر swapon -a.
/etc/group/
شبيه بالملف passwd, لكنه لايصف المستخدمون انفسهم, بل المجموعات التي تحتوي على المستخدمين.
/etc/inittab/
ملف إعداد /init/.
/etc/opt/
يحتوي على ملفات اعداد المجلد /opt/.
/etc/magic/
ملف إعدادات الأمر file, يحتوي على وصف للصيغ المختلفة الملفات.
/etc/shadow/
ملف كلامات المرور الخاصة بالمستخدمين وتكون مشفره ويستخدمها ملف /passwd/, وهي مغلقة لكل المستخدمين باستثناء المستخدم الجذر.
/etc/login.defs/
يحتوي على اعدادات تخص الامر login.
/etc/securetty/
يحدد مستوى الأمن في الطرفية, أي ان المستخدم الجذر يقوم بتحديد أي من المستخدمين له حق دخول الطرفية, مما يجعل الأمر صعب على محاولات الاختراق من خلال الشبكة, لأنها لا تسمح للمستخدم الجذر بالدخول من الشبكة ومنع المستخدمين الغير مدرجين في قائمة المصرح لهم باستخدام الامر sudo.
/etc/shells/
يحتوي هذا الملف على قائمة بكل أنواع الطرفيات التي مكنك الدخول منها، ويسمح لك الأمر chsh بتغير نوع الطرفية الخاصة بك والاختيار من بين الموجودين في هذا الملف، وأيضا برنامج ftpd سيقوم بعمل مراجعة عما إذا كان نوع الطرفية التي يستخدمها المستخدم موجود في القائمة أم لا، ولن يسمح للمستخدمين الدخول الطرفية مادام نوعها ليس مدرج في القائمة
/etc/opt/
يحتوي على ملفات اعداد المجلد /opt/.
/etc/X11/
يحتوي على ملفات اعداد نظام النافذة اكس, الإصدار 11.
/etc/sgml/
يحتوي على ملفات اعداد للغة SGML.
/etc/xml/
يحتوي على ملفات اعداد للغة XML.

التسلسل الهرمي لدليل /proc/[عدل]

/proc/ يحتوى هذا المجلد على نظام ملفات افتراضي غير حقيقي لانه لا يوجد بالفعل على القرص الصلب, بل أنه يحتوى على عمليات ومعلومات النواة التي تعمل الآن على النظام وتعد هذه المعلومات هامة جدا في حالات الأعطال الطارئة والمتعلقة بالعتاد, وأهم المعلومات التي قد يحتاج إليها هي I/O Port، Devices، interrupts.
/proc/cpuinfo/ يحتوي هذا الملف على معلومات مفصلة عن المعالج (نوعه، موديله،.... إلخ)
/proc/meminfo/ معلومات عن الذاكرة (الرام+السواب)
/proc/uptime/ الفترة التي بقي الجهاز فيها بدون اعادة تشغيل.
/proc/loadavg/ مقدار الحمل على الجهاز.
/proc/mounts/ أنظمة الملفات المضمومه.
/proc/filesystems/ ملف الإعدادات لانظمة الملفات داخل النواه التي يمكنه التعامل معها.
/proc/devices/ ملف يحتوي على قائمة بكل الأجهزه التي تعمل في الوقت الحالي على النواه.
/proc/interrupts/ لمشاهده الـinterrupts ومعرفة القيم التي تحملها.
/proc/ioports/ لمعرفة وحدات الإدخال والإخراج المستخدمة في الوقت الحالي.
/proc/kcore/ هذه صوره فيزيائية للذاكره في النظام وهي بالضبط نفس مساحة الذاكره الفيزيائية لديك, لكن في الحقيقة لا يأخذ الكثير من الذاكره، وهو مولد لتسهيل التعامل مع البرامج.
/proc/kmsg/ يعرض رسائل النواة, المأخوذ من ملف syslog
/proc/ksyms/ جدول Symbol للنواة.
/proc/modules/ عرض الموديلات المحملة للنواة في الوقت الحالي.
/proc/net/ معلومات عن حالة البروتوكولات في الشبكة.
/proc/self/ عرض الاختصارات التي تعالج في ملف proc وكل برنامج يعالج تحت هذا الملف (proc) له رقم خاص به
/proc/stat/ إحصائيات مختلفه حول حالة النظام.
/proc/version/ عرض رقم إصدار النواة.

التسلسل الهرمي لدليل /usr/[عدل]

/usr/ من أكبر المجلدات يحتوي على مجلدات يوجد فيها البرامج التي يحتاجها النظام في أعماله الاعتيادية, أي لا بحتاجها النظام في عملية بدء التشغيل ولا في حالات الطوارئ. ولهذا المجلد نظام هرمي يشبة الـ Root Directory [14]
/usr/bin/
تحتوي تقريبا على كل أوامر المستخدمين.
/usr/sbin/
يحتوي على أوامر إدارة النظام التي عادة المستخدم الجذر فقط لديه صلاحية لتنفيذها. لكن يمكن ان تستخدمها بعض البرامج والخدمات...
/usr/lib/
مكتبات البرامج ولكنها قد تحتوي أحياناً مجلدات فرعية تحتوي وثائق أمثلة لبعض لغات البرمجة والمكتبات.
/usr/share/
يحتوي على كل ملفات البرامج (الصور والخطوط والوثائق).
/usr/include/
يحتوي على ملفات الـ Header الخاصة بلغة السي.
/usr/src/
يحتوي على الملفات المصدرية, على سبيل المثال ملفات النواة المصدرية مع ملفات header الخاصة بها.
/usr/X11R6/
يحتوي هذا الملف على كل ملفات الاعداد الخاصة بنظام النافذة اكس, النسخة 11 الإصدار 6.
/usr/local/
البرامج التي تقع خارج سيطرة نظام إدارة الحزم، مثل برامج تم بنائها من المصدر.
/usr/info/
معلومات مفصلة عن البرامج.
/usr/log/
يحتوي ملفات Log لبرامج مختلفه ويوجد فيه ملف مميز جدا وهو ملف wtmp المسؤول عن الـ Log لكل عمليات الدخول والخروج من النظام ويسمى login وهناك ملف أخر وهو syslog والموجود باسم messages وهو يحتوي على كل الرسائل الصادره من النواة.
/usr/lock/
عباره عن ملفات مغلقه، بعض البرامج تفضل عمل ملفات مغلقها للتعامل معها من خلال جهاز أو برنامج، بصوره أوضح تتعامل مع الـ User System

التسلسل الهرمي لدليل /var/[عدل]

/var/ هذا الدليل يحتوي على على الملفات التي يتغير حجمها ووبيانتها باستمرار. اسم الدليل هو اختصار لكلمة (variable) وتعني متغير, ويحتوي على ملفات تسجيل الدخول لجميع المستخدمين (log files), التي تتغير كلما قام النظام بعملية تسجيل دخول جديده هذا بالإضافة إلى ملفات الطابعات, وغيرها مثل خادم الاباتشي, والـ إف تي بي.
/var/cache/
Application cache data. Such data is locally generated as a result of time-consuming I/O or calculation. The application must be able to regenerate or restore the data. The cached files can be deleted without data loss
/var/lib/
توضع به متغيرات النظام.
/var/lock/
عباره عن ملفات مغلقه، بعض البرامج تفضل عمل ملفات مغلقها للتعامل معها من خلال جهاز أو برنامج.
/var/log/
التقارير التي تكتبها البرامج.
/var/mail/
عبارة عن صندوق بريد بين مستخدمي النظام.
/var/run/
يحتوي على معلومات عن النظام, فمثلا ملف utmp يحتوي على المستخدمين الذين قاموا بتسجيل الدخول على النظام.
/var/spool/
[[ملف للأخبار ووظائف الطباعة وبعض الوظائف الأخرى فملف الأخبار يكون داخل ملف (news) وأيضا يحتوي على ملف البريد (mail). ويتوقف على مدى دعم التوزيعة له.
/var/spool/mail/
موقع متروك لصناديق بريد المستخدمين.
/var/tmp/
يحتوي على الملفات المؤقته سواء أن كانت كبيره في الحجم أو التي ستضل لفترة طويله ومن السهل على مدير النظام تحديد عمر الملفات المؤقته بها.

مراجع[عدل]