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

نظام ملفات يونكس أو (نظام إدارة الملفات على يونكس), هو وسيلة لتخزين المعلومات في الحاسوب وتنظيمها في ملفات على ذاكرة (قرص صلب، فلاش يو اس بي، قرص مضغوط، 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 تدعم الروابط اللينة).

ملفات المستخدم 

UNIX يتتبع الملفات والمجلدات باستخدام نظام الملفات. عند تسجيل الدخول إلى حساب يونكس الخاص بك، يتم وضعك في الدليل الخاص "/home/user". وبالتالي الدليل الرئيسي الخاص بك يصبح «دليل العمل الحالي»، هنا يمكنك إنشاء الملفات والمجلدا.

لكن عند تغيير دليل العمل إلى مجلدات النظام، يتطلب منك تصريح مدير النظام Root لتتمكن من التغيير في الملفات.

مجلدات النظام:

تحرير ملفات النظام

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

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

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

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

الإعدادات الخاصة بالنظام / System Configuration 

يحتوي مجلد /etc على ملفات الإعداد الخاصة بالنظام. فمثلا برنامج ليلو (Lilo) يخزن إعداداته في الملف lilo.conf الموجود في هذا الدليل. ولأيمكن وضع الملفات القابلة للتشغيل (binaries) في هذا الدليل.
و تصنف أنواع الملفات الموجودة تحت هذا الدليل كما يلي.
 ملفات عامة
{ adjtime, csh.login, disktab, fdprm, fstab, gettydefs, group, inittab, confissue, ld.so.conf, lilo.conf, motd, mtab, mtools, passwd, profile, securetty, shells, syslog.conf, ttytype }
  ملفات الشبكة
{ exports, ftpusers, gateways, host.conf, hosts, hosts.allow, hosts.deny, hosts.equiv, hosts.lpd, inetd.conf, networks, printcap, protocols, resolv.conf, rpc, services }

كما يندرج تحت هذا الدليل دليل باسم X11 وهو المكان الأفضل لتخزين ملفات الإعدادات الخاصة ببيئة الواجهة الرسومية X11. ومن أهم الملفات في هذا الدليل الملف xorg.conf الذي يتضمن إعدادات الشاشة وبطاقة VGA .

المراجع 

إدارة نظم الملفات
تكنولوجيا نظام ملفات يونكس
نظم تشغيل