همانطور که در پست قبلی اشاره شد، سیستم فایل گنو/لینوکس کاملا متفاوت از سیستم فایل های مورد استفاده در سیستم عامل ویندوز مایکروسافت است.
بجای تخصیص یک نام درایو مانند A، C و ... برای هر یک از دستگاه ها مانند دیسک سخت، درایو CD-ROM و...، تمام این دستگاه ها در دایرکتوری های ویژهای متصل با mount میشوند.
شما باید بتوانید این نقاط اتصال را ایجاد نمایید. پس به دایرکتوری هایی که در آنها پارتیشن های مختلف یک دیسک سخت یا درایوهای فلاپی و CD-ROM متصل می شوند، نقاط اتصال یا mount point گویند برای نمایش اینکه در حال حاضر چه پارتیشن هایی از دیسک سختتان به سیستم فایل متصل شد است، باید از دستور mount استفاده نمایید. به این منظور یک پنجره ترمینال باز کرده و دستور زیر را تایپ نمایید. خروجی دستور را در زیر آن مشاهده می کنید
$ mount
/dev/hda5 on/ type ext3 (rw, errors=remount-ro)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw, gid=5, mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/hda1 on /boot type ext3 (rw)
/dev/hda6 on /home type reiserfs (rw)
/dev/hda8 on /data type ext3 (rw, noexec, nosuid, nodev)
/dev/hdb1 on /data2 type ext3 (rw, noexec, nosuid, nodev)
usbfs on /proc/bus/usb type usbfs (rw(
نکته
همانطوری که می بینید، proc و devpts نیز به عنوان سیستم فایل نشان داده شده اند. در حقیقت این ها نوع خاصی ال سيستم فایل هستند که به هیچ پارتیشنی در سیستم مربوط نمی باشند ولی در دستور mount نمایش داده می شوند.
در مثال بالا، پارتیشن های متصل عبارتند از dev/hdal /dev/hda5 /dev/hda6 /dev/hda8 و dev/hdb1 که فضای موجود در دایرکتوری های boot / home data و data2 را فراهم می کنند. به کلام دیگر، نقطه اتصال پارتیشن dev/hda1 / دایرکتوری boot/ و به همین ترتیب است.
در دایرکتوری boot/ اطلاعات لازم برای بوت شدن و مدیر بوت سیستم قرار می گیرد. این اطلاعات شامل برنامه boot loader و فایل های پیکربندی آن است. دایرکتوری home/ حاوی داده های کاربران تعریف شده روی سیستم است.
نیز بخش اصلی سیستم گنو/لینوکس است که اکثر دایرکتوری های سیستمی و فایل های سیستمی سیستم عاملی در آن قرار می گیرند. در مثال بالا پس از کلمه type می توانید نوع فرمت پارتیشن مورد نظر را ببینید. مثلا ext3 یا reiserfs. قرار دادن بخش های مختلف سیستم فایل گنو/لینوکس روی پارتیشن های مختلف می تواند محاسن زیادی داشته باشد. مثلا در صورتی که دایرکتوری مربوط به کاربران یعنی home را در یک پارتیشن جداگانه قرار دهید و آن پارتیشن پر شود، اختلالی در سیستم بوجود نخواهد آمد.
ولی در صورتی که این دایرکتوری در کنار دایرکتوری ریشه در یک پارتیشن قرار گیرند، پر شدن آن منجر به پرشدن كل فضای دیسک سیستم شده و در کار کل سیستم اختلال ایجاد می کند.
البته در سیستم های خانگی معمولا این اتفاق کمتر می افتد و قرار دادن کل سیستم در پارتیشن ریشه به احتمال زیاد مشکلی ایجاد نخواهد کرد، ولی این مسئله در سیستم هایی که به نحوی عملیات سرویس دادن را انجام می دهند، بسیار حیاتی و مهم است.
هنگامی که سیستم دبیان بوت می شود، بیشتر پارتیشن های مربوطه به طور خودکار به سیستم فایل متصل می شوند. بنابراین در این بخش من سعی خواهم کرد بیشتر در مورد چگونگی اتصال ابزارها و پارتیشن های دیگر صحبت کنم.
شما می توانید پارتیشن هایی را که سایر سیستم عامل ها مانند ویندوز اختصاص داده شده اند، در گنو/لینوکس متصل نموده و اطلاعات خود را در آنها ذخیره نموده یا از آنها بخوانید. همچنین می توانید به سادگی دستگاه های فلاپی درایو و CD-ROM را به سیستم فایل خود متصل نمایید.
برای مشاهده اینکه اکنون چه نوع سیستم فایل هایی در هسته سیستم تان پشتیبانی می شوند، از دستور cat مطابق مثال زیر استفاده نمایید
$ cat /proc/filesystems
nodev Sysfs
nodev roots
nodev bdev
nodev proc
nodev sockfs
nodev futexfs
nodev tmpfs
nodev pipefs
nodev devpts
nodev ramfs
nodev devis
nodev mgueue
ext3 / ext2 / isc9660 / vfat / jfs / reiserfs / xfs
nodev usbfs
دیسک های سخت و سیستم فایل های شبکه ای که هر روز استفاده می کنید، به طور معمول طوری تعریف شده اند که در هر بار بوت بطور خودکار سیستم فایل های شما را متصل می کنند. این تعريفها در فایل etc/fslab / ذخیره می شوند که در زیر نمونه ای از این فایل نشان داده شده است :
$ cat /etc/fstab
# etc/fstab: static file system information.
pass | Dump | Options | Type | Mount point | File system |
0 | 0 | defaults | Proc | /proc | Proc |
1 | 0 | defaults | Ext3 | / | /dev/hda5 |
2 | 0 | defaults | Ext3 | /boot | /dev/hda1 |
2 | 0 | defaults | Reiserfs | /home | /dev/hda6 |
0 | 0 | Sw | Swap | None | /dev/hda7 |
0 | 0 | Ro,users,noauto | Iso9660 | /media/cdrom0 | /dev/hdd |
0 | 0 | Ro,users,noauto | Iso9660 | /media/cdrom1 | /dev/hdc |
0 | 0 | Rw,users,noauto | Auto | /media/floppy0 | /dev/fd0 |
0 | Rw,users,defaults | Ext3 | Data | /dev/hda8 | |
0 | Rw,users,defaults | Ext3 | Data2 | /dev/hdb1 |
تمام سیستم فایل هایی که در این فایل وجود دارند هنگام بوت به طور خودکار متصل می شوند، بجز آنهایی که جلوی آنها عبارت noauto قید شده است.
در مثال بالا، سیستم فایل های boot و home هنگام بوت متصل می شوند در حالی که floppy و درایو CD-ROM هنگام بوت به طور خودکار متصل نخواهند شد، اکنون به مواردی که می توانید در یک خط فایل fstab ذکر نمایید می پردازیم :
فیلد اول در این قسمت می توانید نام ابزار مربوط به سیستم فایل را وارد نمایید. برای سیستم فایل های مجازی مانند proc در این قسمت کلمه hone وارد میشود. در گنو/لینوکس دیسکهای سخت IDE به نام hd شناخته می شوند. نخستین دیسک سخت سیستم hda نام دارد. دیسک سخت دوم نیز hdb و به همین ترتیب، پارتیشن اول دیسک سخت اول سیستم hdal نام دارد و به همین ترتیب. پس در مثال بالا به سیستم می گوییم تا پارتیشن اول دیسک سخت اول سیستم را متصل نماید.
فیلد دوم در این قسمت نقطه اتصال یک پارتیشن در سیستم فایل مشخص می شود، اطلاعات موجود در این پارتیشن از طریق نقطه اتصال آن قابل دسترسی خواهد بود.
فيلد سوم در این قسمت باید نوع سیستم فایل را مشخص نمایید که میتواند یکی از سیستم فایلهایی باشد که در توزیع شما پشتیبانی شده و پارتیشن مورد نظر دارای آن سیستم فایل است.
فيلد چهارم گزینه های دستور mount. مثلا در مثال بالا. همانطور که توضیح داده شد، گزینه noauto از اتصال خودکار سیستم فایل هنگام بوت جلوگیری می کند و یا گزینه ro سیستم فایل را بصورت فقط خواندنی متصل می کند، این گزینه ها با استفاده از کاما از هم جدا می شوند.
فیلد پنجم عدد نوشته شده در این فیلد مشخص می کند که آیا سیستم فایل نیاز به dump شدن دارد یا خیر، شماره ۱ نشانگر وجود این نیاز و ۲ نشانگر عدم نیاز به این کار است. Dump به معنای نوشتن محتویات در هنگام بروز خطا در یک فایل جداگانه میباشد.
فيلد ششم عدد نوشته شده در این فیلد نشاندهنده این است که آیا این سیستم قایل نیاز دارد تا بوسيله برنامه تصحيح فایل سیستم يا fsck بررسی شود يا خير، عدد ۱ نشاندهنده وجود این نیاز و عدد ۲ نشانگر عدم نیاز به این کار است.
نکته
به طور معمول، فقط کاربر ریشه مجوز اتصال و برداشتن اتصال سیستم فابلها را دار است. برای دادن این اختیار به سایر کاربران، باید آنها را در بخش گزینه ها یا فبلد چهارم وارد نمایید. برای این کار کلمه User را اضافه نمایید.