نظام ملفات يونكس

نظام ملفات يونكس أو( نظام إدارة الملفات على يونكس) , هو وسيلة لتخزين المعلومات في الحاسوب وتنظيمها في ملفات على ذاكرة (قرص صلب ، فلاش يو اس بي ، قرص مضغوط ، KSSD ، قرص مرن، الخ).
يستعمل هذا النظام في العديد من نسخ يونكس و أنظمة التشغيل الشبيه بيونكس مثل لينكس و ماك او اس , وهذا للتمكن من إدارة الملفات وتخزين كميات كبيرة من البيانات ومشاركتها بين عدة برامج الكمبيوتر, تم إنشاء هذا النظام من طرف كين تومسون في عام 1969.
يتم الوصول إلى كل ملفات النظام على نظام يونكس من خلال ملف الكتلة الخاصة. تحفظ كل المعلومات في قاعدة بيانات النظام يسمى "جدول نظام الملفات"، ويكون عادتا الملف /var/fstab. وهو يتضمن معلومات عن اسم الجهاز، اسم الدليل التي بموجبها سوف يتم تركيبه، والقراءة و كتابة و إمتيازات الجهاز. فمن الممكن لتركيب نظام الملف "للقراءة فقط"، لمنع المستخدمين من تغيير أي شيء.
مثل غيرها من أنظمة التشغيل ( ماك أو ويندوز ) يتم تخزين المعلومات على أنظمة يونكس "UNIX " في ملفات. وإلى جانب هذا ، يتيح يونكس إنشاء المجلدات .

بنية نظام الملفات

الدليل الجذر (/) هو بداية أو الدليل الأعلى لنظام الملفات. يتكون نظام الملفات يونكس من جدر والدلائل الفرعية (المجلدات). دليل الجذر لا يوجد لديه دلائل الأصل، ولكن يحتوي على العديد الدلائل الفرعية، مثل etc, var, bin, and home .
قد يكون المجلد عبارة عن قسم من القرص ويعمل مغاير للنظام, مثلا (دليل الجدر يعمل ب EXT4 و home يعمل بXFS) , يتم تركيب أفسام النظام خلال إقلاع النواة من الإعدادات المتواجدة في fstab و في بعض الأحيان يدويا عبر أمر mount.
يتم الفصل في مسار سلسلة المجدات المتداخلة بعارضة (/)  عوض (\) المعمول به في وينداوز .

أنواع البيانات

كل البيانات في نظام ملفات يونكس يمكن أن تنتمي إلى واحدة من أربعة أنواع محتملة:

الملفات العادية

يمكن الملفات العادية تحتوي على نص أو بيانات أو معلومات للبرنامج . لا يمكن أن يحتوي ملف عادي ملف آخر ، أو دليل . ملف عادي يمكن اعتباره مصفوفة أحادية الأبعاد من وحدات البايت .

المجلدات

هي حاويات يمكن أن تحتوي ملفات ،أو مجلدات أخرى .و المجلدات تعتبر ملف له سطر واحد لكل بند . كل سطر في ملف الدليل يحتوي فقط على اسم العنصر ، وإشارة رقمية إلى الموقع في هذا البند .
خلافا لما حدث في أنظمة الملفات مثل NTFS، مجلدات يونكس لا "تحتوي على " ملفات بشكل فعلي. بدلا من ذلك، أنها تحتوي على أسماء الملفات المقترنة مع إشارات إلى ما يسمى  inode، والتي بدورها تحتوي على كل من الملف وبيانات التعريف الخاصة بها (المستخدم، التصريحات، وقت الإنشاء ، أخز تعديل ) . لا يوجد اسم فعلي للمجلد . الأسماء في نظام الملفات قد تشير إلى نفس الملف، هذه ميزة تعرف باسم الرابط (hard) .
اتخذ قرار عدم السماح للواصلات المتعددة لدليل واحد، هذا لصعوبة فهمه و لكي يبقى شكل الشجرة في ترابط مجلدات النظام .

ملفات خاصة

تتمثل في ملفات الإدخال / الإخراج ( I / O) الأجهزة ، مثل TTY ( محطة ) ، محرك أقراص ، أو طابعة . لأن يونكس يتعامل مع الأجهزة على شكل ملفات ، حيث يتم التخاطب مع الأجهزة عبر إرسال كتل من البيانات . بأحجام نموذجية هي 512 بايت ، بايت 1024 ، و 2048 بايت.
هناك ملفات أخرى مثل ملفات التخاطب بين البرامج (pipes الأنبوبية ) و ملفات الشبكة المقبس sockets و هي ملفات غير موجودة في القرص و يتم إنشائها خلال تشغيل النظام أو البرامج , لا تبقى هذه الملفات في النظام لأنها لن تحفظ في القرص الصلب , إنما توضع في مجلدات الذاكرة RAM ; وهي مجلد /proc , مجلد tmp او run.

وصلات

أو الارتباطات ، هي مؤشر إلى ملف آخر . تذكر أن المجلدات ليس أكثر من قائمة من الأسماء و أرقام من الملفات.، وخلافا لوينداوز , الوصلة لا يمكن تمييزها عن الملف الأصلي لأن الدليل يشير إلى نفس العقدة في inode . عندما يتم ارتباط ثابت(hard) .
لهذا السبب ، وجدت . الوصلة اللينة ( أو الارتباط الرمزي ) وهي مؤشر غير مباشر إلى ملف . يتم تنفيذ وصلة لينة كإدخال ملف الدليل الذي يحتوي على اسم مسار .
الروابط لينة يمكن تمييزها عن الملفات ، ويمكن أن تمتد عبر أنظمة الملفات . (ليس كل إصدارات UNIX تدعم الروابط اللينة ).

دليل أوامر النظام /bin System commands

يحتوي هذا الدليل على الأوامر (commands) الضرورية للنظام. ويمكن أن يستخدمها المشرف على النظام (administrator) والمستخدم العادي و يجب أن لا تكون هناك دلائل فرعية في هذا الدليل.

دليل ملفات الأجهزة /Device Files

هذا المجلد خاص بالأجهزة المرفقة بالحاسب الآلي. ويحتوي على إدخال لكل جهاز تم تجهيز نواة النظام للتعامل معه. فمثلا
للقرص المرن الأول يوجد الملف /dev/fd0
و للمودم يوجد الملف /dev/modem
وتوجد أوامر خاصة بهذا الدليل مثل الأمر mknod لإنشاء ملفات الأجهزة.