Skip to Content

7 نظام الملفات

soppy_boy's picture

نظام الملفات

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

في الجزء السابق,ذكرت ان سكربتات الـinit تقوم بفحص و إلحاق لنظام الملفات و الاوامر التي تقوم بذلك هي fsck و mount على الترتيب.

ان القرص الصلب هو عبارة عن مساحة كبيرة حيث تستطيع ان تكتب احاد و اصفار عليه .

نظام الملفات بفرض بعض الهيكلة على ذلك ويجعله يشبه الملفات داخل مجلدات و هذة المجلدات بداخل مجلدات اخرى و هكذا . كل ملف يمثل عن طريق inode (عقدة إالكترونية) ,التي تخبرك ملف من هذا , و متى انشئ, و اين تجد محتويات الملف, و المجلدات ايضا تمثل بـ inode لكن هذة الـ inode تخبر اين تجد الـ inode الخاصة بالملفات الموجوده في هذا المجلد و اذا كان النظام يريد مثلا قراءةhome/greg/bigboobs.jpeg/ فإنه يقوم اولا بإجاد الـ inode للـدليل الاصلي / في الـsuperblock , وبعد ذلك يبحث عن الت inode للدليل home/ في وجود محتويات الـ / ثم البحث عن الـ inode للدليل greg في وجود محتويات home/ثم البحث عن الـ inode لملف bigboobs.jepg التي ستخبرة اي بلوك من القرص يقوم بقراءته.

اذا اضفنا بعض المعلومات او البيانات لنهاية ملف قد يكون تم اضافة تلك البيانات الي الملف قبل ان تقوم بعمل تحديث للـinode حتى تعلم ان البلوك الجديد ينتمي الي هذا الاملف و بالعكس .

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

عادة النواة تحمل نظام الملفات للقراءة فقط, لكن الامرmount يقوم بتحميل نظام الملفات للقراءة و الكتابة بعد ان يقوم امر fsck بعمل الفحص و التأكد انه سليم.

نظام التشغيل لينكس يدعم العديد من انوع الملفات الاخرى من نظام الملفات msdos , vfat, minix والي ذلك...

إن تفاصيل بعض نظم الملفات المعينة يتم تجردها الي نظام ملفات افتراضي لن اقوم بالدخول في كثير من التفاصيل في هذة النقطه ويوجد شرح لها في الجزء الخاص بـنواة اللينكس.

نوع مختلف تماما من نظم الملفات يتم الحاقة في الدليل proc/ , انه في الحقيقة عرض للاشياء الموجودة في النواة,هناك دليل لكل عملية تجري في نظام و اسم المجلد يكون على رقم العمليه التي تجري .

هناك ايضا ملفات مثل interrupt وmeminfo التي تخبرك كيف تعمل وتستخدم العتاد,تستطيع ان تتعلم الكثير بتفصح الـproc/ .

الاعدادات :

هناك براميترات للامر mke2fs التي تنشئ نظام الملفات ext2 هذا الامر يتحكم في حجم البلوك و عدد الـinode والي ذلك , انظر في صفحة دليل المستخدم لامر mke2fs للتفاصيل.

ما يتم الحاقفي نظام ملفاتك يتم التحكم به في etc/fstab/ ولها ايضا صفحة دليل مستخدم انظر بها للتفاصيل .

تمارين:

قم بأنشاء نظام ملفات صغير و قم بعرضة على نظام ترير النصوص hex على النظام الرقمي بقاعدة 16 وبـinode محددة والبلوكاتالعليا و محتويات الملفات .

اعتقد ان هناك ادوات التي تسهللك رؤية النظام بطريقة مصورة أعثر على واحد و جربة و ارسل الي و اخبرني عنه . افحص نظام الملفات ext2 في المصدر النواة .

معلومات اضافية:

الفصل التاسع من كتاب IDP نواة اللينكس عرض ممتاز لملفات النظام تستطيع ان تجدة في

www.Mirror.aarnet.edu.au/linux/LDP/LDP

ان امر mount جزء من حزمة util-لينكس هناك رابطة في بناء نظام لينكس صغير من كود المصدر وهي:

www.netspace.net.au/~gok/power2bash

صفحة دليل المستخدم للاوامرmount , fstab, fsck, mke2fs, proc . إن الملف doucumentation/proc.txt/ المصدر البرمجي لينكس يقوم بشرح /proc

ادوات نظام الملفات ext2 ,الصفحة الرئيسيه له هي:

www.mit.edu/tytse/www/linux/esfsprogs.html

وهناك ايضا مستند يعرض ext2fs رغم انه قديم وليس قابل للقراءة كما في الفصل التاسع نواة اللينكس.

هناك وصلة اخرى لنظام الملفات يونكس القياسي وهذة تقوم بشرح ماذا و اين يجب ان يذهب الي نظام الملفات يونكس و لماذا يجب ان يذهب الي هذا المكان كما انها تقول لك الحد الادنى للمتطلبات من محتويات /bin و /sbin وما الي ذلك و هذا مرجع جيد اذا كنت تريد ان تنشئ نظام صغير متكامل و هي:

www.Tsx-ll.mit.edu/pub/linux/docs/linux-standards/fsstnd



Dr. Radut | book