الحلقة الدراسية الرابعة عشر: التعامل مع أنظمة الملفات في لينوكس.



تعتبر أنظمة الملفات جزءا هاما من نظام تشغيل لينوكس. يمكن تعريف نظام الملفات بأنه بيئة معينة يتم تهيئتها لتتمكن من حفظ الملفات و المجلدات.

تتضمن أنظمة ملفات لينوكس كلا من:

1- الأقراص المرنة.

2- التقسيمات على القرص الصلب.

3- الأقراص المضغوطة.

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

يتم توفير أنظمة الملفات في لينوكس من خلال عملية تسمى التركيب أو mounting.

يمكن فهم تركيب نظام الملفات في لينوكس بأنه جعل نظام الملفات جزءا من التركيب التدرجي المتفرع من الجذر root و الذي يرمز له بـ /، مما يعني أن نظام الملفات في لينوكس هو عبارة عن ملفات و مجلدات مرتبة في تدرجات متفرعة من الجذر الرئيسي.

للوصول إلى أي ملف في لينوكس يجب أن يكون نظام الملفات الذي ينتمي إليه هذا الملف تم تركيبه mounted على لينوكس.

هناك عدة أوامر تستطيع بواسطتها معرفة أنظمة الملفات التي تم تركيبها على لينوكس و من هذه الأوامر ما يلي:

1- df .

2- mount .

3- cat /etc/mtab .

فمثلا عند تنفيذ الأمر df على جهاز ما حصلنا على النتيجة التالية:



حيث يشير البند Filesystem إلى أجزاء القرص الصلب أو أي قرص مرن أو مضغوط متوفر ، بينما يشير البند Mounted on إلى المجلد الذي تم تركيب نظام الملفات عليه و هناك بعض المصطلحات التي لابد من شرحها أولا لنفهم الرموز في الصورة :

1- يشير dev إلى جهاز أو device.

2- يشير hd إلى القرص الصلب و يعتمد الرمز التالي على ما يلي:

أ- a إذا كان القرص الصلب Primary Master.

ب- b إذا كان القرص الصلب Primary Slave.

ج- c إذا كان القرص الصلب Secondary Master.

د- d إذا كان القرص الصلب Secondary Slave.

أما الرقم التالي فيعتمد على رقم تقسيمة القرص الصلب، و بالتالي فإن hda5 مثلا تشير إلى القسم الخامس من القرص الصلب و هو Primary Master.

3- يشير fd إلى محرك الأقراص المرنة و يشير الرقم التالي إلى ترتيبه و هو مفيد إن كان لديك أكثر من محرك أقراص مرنة.

4- محرك الأقراص المضغوطة في حال وجوده فسيشار إليه بالرمز التالي: dev/cdrom/
هناك العديد من أنواع أنظمة الملفات المختلفة التي يدعمها لينوكس و لكل منها خصائصه الخاصة و منها ما يلي:

1- (the Second Extended filesystem (ext2fs و هو أشهر أنظمة ملفات لينوكس و قد تم تصميمه خصيصا له، و هو نظام مرن يسمح باستخدام الأسماء الطويلة حتى 256 رمز، بينما يمكن أن يصل حجم نظام الملفات إلى 4 تيرابايت.

2- نظام ملفات vfat و هو يدعم أنظمة الملفات المستخدمة في الدوس و الويندوز fat و fat32.

3- نظام ملفات proc و هو نظام ملفات ظاهري أو virtual مما يعني أنه لا يتم تخصيص مساحة معينة من القرص لهذا النظام.

4- نظام ملفات UNMSDOS و هو يسمح لكل من لينوكس و MS-DOS بالتواجد و التعايش على نفس القسم من القرص الصلب.

5- نظام ملفات iso9660 و هو مخصص للأقراص المضغوطة.

5- (نظام ملفات Network File System (NFS و هو يستخدم للوصول إلى الملفات عن بعد كما يسمح للملفات المخزنة على الجهاز بأن تكون متوفرة عبر الشبكة.

عندما تقوم بإنشاء نظام ملفات على لينوكس مثل ext2fs فإنه يتم إنشاء المساحات التخزينية التالية تلقائيا في نظام الملفات:

1- superblock و هو عبارة عن مساحة تخزينية يتم إنشاؤها في بداية نظام الملفات و تحتوي على معلومات عن نظام الملفات مثل حجم النظام و وقت و تاريخ تحديثه و حالته في كل وقت، و للحفاظ على هذه المعلومات فإنه يتم حفظ أكثر من نسخة منها في أجزاء مختلفة من نظام الملفات.

2- inodes و هي عبارة عن تراكيب بيانية يتم إنشاؤها في نظام الملفات و تخزن معلومات عن جميع الملفات و المجلدات التي يتم إنشاؤها في نظام الملفات مثل نوع الملفات و أحجامها و موقعها و مالكها و التصاريح المرتبطة بها و الوصلات المرتبطة بها، بالإضافة إلى تاريخ و وقت إنشائها أو تعديلها، و لمعرفة عدد inodes في كل نظام ملفات يستخدم الأمر df -I كما في الصورة التالية:




3- storageblock و هي المساحة التخزينية المتبقية و التي يتم تخزين الملفات و المجلدات عليها.

لتركيب أي نظام ملفات لم يتم تركيبه أثناء عملية التنصيب نستخدم الأمر mount و تم تنفيذه من قبل مدير النظام root و يتم كتابته كما يلي:

<mount -t <type> <device> <mount point

يشير<t <type- إلى نوع نظام الملفات.

يشير <device> إلى الجهاز المركب عليه نظام الملفات (قسم من القرص الصلب كمثال).

يشير <mount point> إلى المجلد الذي سيتم تركيب نظام الملفات عليه و لا بد من إنشائه قبل تنفيذ الأمر mount ، و يتم إنشاء المجلد كأي مجلد آخر باستخدام الأمر mkdir .

فمثلا لإنشاء نظام ملفات من النوع ext2 على القسم dev/hda10/ بحيث يركب على المجلد usr/local/ نستخدم الأمر التالي:

mount -t ext2 /dev/hda10 /usr/local

و لإلغاء تركيب أي نظام ملفات نستخدم الأمر unmount فمثلا لإلغاء تركيب نظام الملفات على القرص المرن نستخدم الأمر كما يلي:

unmount /dev/fd0

عندما إقلاع الجهاز boot فإن عدة أنظمة ملفات يتم تركيبها تلقائيا على مجلدات معينة و تكون معلومات التركيب هذه مخزنة في الملف etc/fstab/ ، مما يعني أنه عند الرغبة بتركيب نظام ملفات معين بحيث يكون متوفرا في كل مرة نشغل فيها الجهاز ، لابد من إضافته إلى الملف fstab و في الصورة التالية مثال عن محتوى الملف :



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

1- اسم الجهاز الذي يحتوي على نظام الملفات.

2- المجلد الذي يركب عليه نظام الملفات.

3- نوع نظام الملفات.

4- بعض الخيارات المستخدمة عند تركيب نظام الملفات و هي مشروحة أدناه.

5- معدل إجراء النسخ الاحتياطي.

6- أولوية إجراء اختبار لنظام الملفات.

أما الخيارات المستخدمة لتركيب نظام الملفات فتتضمن ما يلي:

1- ro و هي اختصار لـ read-only و تسمح للمستخدم بقراءة محتويات نظام الملفات فقط دون حق التعديل أو الكتابة عليها.

2- rw و تسمح للمستخدم بقراءة محتويات نظام الملفات و الكتابة عليها و تعديلها.

4- noauto و تفيد أن نظام الملفات لن يتم تركيبه تلقائيا عند تنفيذ الأمر mount -a عند بداية التشغيل.
5- user و يسمح للمستخدمين من غير root بتركيب نظام الملفات.

6- auto لتركيب نظام الملفات تلقائيا عند بداية التشغيل.

لتحرير هذا الملف لابد أن تكون root و يمكن تحريره باستخدام أي محرر نصوص متوفر لديك أو من خلال سطر الأوامر باستخدام الأمر vi /etc/fstab و للكتابة في مكان معين اضغط على زر Insert و بعد أن تنتهي اضغط على Esc ثم أدخل الأمر التالي:

w:

ثم اضغط Enter و من ثم أدخل الأمر التالي:

q:

ثم اضغط Enter .

لنفترض أن لديك نظام تشغيل ويندوز مركب على قسم من القرص الصلب بالإضافة إلى نظام لينوكس و لنفترض أن نظام الملفات المستخدم في قسم ويندوز هو fat32 ، و تريد أن تتمكن من الوصول إلى ملفاتك المخزنة في قسم الويندوز من داخل لينوكس ، لفعل ذلك نضيف السطر التالي إلى ملف fstab :

dev/hda1 /mnt/windows vfat user,rw 0 0/

و لا تنس إنشاء مجلد جديد اسمه windows داخل المجلد /mnt حيث سيكون المجلد الذي سيركب عليه نظام ملفات المستخدم في قسم الويندوز في لينوكس.

ملاحظة :

في توزيعة Mandrake لن تحتاج إلى إدخال السطر السابق حيث يتعرف Mandrake تلقائيا على أقسام ويندوز و يركبها على المجلد mnt/windows/ أو ما شابه.

أما لإنشاء نظام ملفات ext2 على قرص جديد مثلا فنستخدم الأمر mke2fs و يكتب كما يلي:

<mke2fs -t <type> -c <device

كما في المثال التالي:

mke2fs -t ext2 -c /dev/hdc1

حيث يشير t ext2- إلى نوع نظام الملفات بينما يشير c /dev/hdc1- إلى أن نظام الملفات سيكون على القسم الأول من القرص الصلب Secondary Master.

أما عند الرغبة بإنشاء نوع آخر غير ext2 فنستبدل الأمر mke2fs بالأمر mkfs .

بهذا نأتي إلى نهاية درس اليوم و إلى اللقاء مع درس جديد في رحلة اكتشاف لينوكس.

 

 


Copyright © www.kettaneh.net