بخشی از مقاله


دستورات و مفاهیم پیشرفته فایل سیستم

مفهوم User/group در لینوکس
User: نمایانگر هویت یک فرد در سیستم می باشد. هر User در لینوکس دارای یک شماره UID می باشد. کاربر اصلی سیستم (مدیر سیستم) دارای UID شماره صفر می باشد.
Group: هر User در گروه خاصی قرار می گیرد که با GID شناخته می شود. هر کاربر می تواند متعلق به یک یا چند گروه باشد. بوسیله دستور id می توانید از مشخصات گروه خود مطلع شوید. بوسیله دستور newgrp می توانید گروه جاری خود را عوض کنید. البته تنها در صورتی که عضو گروه جدید باشید. توجه کنید که دو نفر نمی توانند دارای یک UID یکسان باشند اما می توانند در یک گروه قرار گیرند. یک User می تواند عضو گروه های متعددی باشد. دستور Groups به شمان نشان می دهد که یک کاربر در چه گروه هایی عضویت دارد.
انواع فایل در لینوکس
با اجرای دستور Is – I می توان فهمید که نوع فایل چیست؟ بسته به نوع فایل اولین حرف ستون اول یکی از علائم زیر است.
- = regular file
d = directory
c = character special file (/de/v ttyp.)
b = block special file (de/v fd.)
l = symbolic link
اولین حرف ستون اول خروجی دستور Is – I نوع فایل را مشخص می کند.


فایل های ویژه در /dev
فایل های ویژه، فایل هایی هستند که از طریق آن ها می توان با ابزارهای سیستم ارتباط برقرار کرد.
فایل های ویژه به جای فیلد size دارای major, minor هستند.
کرنل در لیستی تناسب بین major, minor های مختلف و device های سخت افزاری متناسب با آن ها را نگهداری می کند.
برای ساختن یک فایل ویژه دستور mknod را می توان استفاده کرد.
Mknod newdev b 76 8

نکته مهم
شماره های major, minor برای device های مختلف مشخص و رزرو شده می باشد.

سطوح دسترسی در لینوکس
یک فایل،
 متعلق به کاربر است که آن کاربر را صاحب فایل می گوییم.
 متعلق به یک گروه است (به احتمال زیاد همان گروهی که صاحب فایل در آن عضویت دارد).
 هر فایل دارای یک سری اجازه های دسترسی است

• لینوکس برای کاربران سه نوع سطح دسترسی قارار داده است:

 سطح دسترسی Read: این سطح دسترسی تنها اجازه خواندن فایل یا لیست گرفتن از دایرکتوری را می دهد.
 سطح دسترسی Write: این سطح دسترسی اجازه نوشتن بر روی فایل و یا ایجاد یک فایل در یک دایرکتوری را می دهد.
 سطح دسترسی Execute: این سطح دسترسی اجازه اجرای یک فایل یا داخل شدن در یک دایرکتوری را می دهد.


طرح بندی فایل سیستم
• لینوکس چندین طرح بندی را پشتیبانی می کند.
 Ext2, ext3
 Reiserfs
 Minix, ufs
 Fat, vfat, ntfs
 Smb, ncp, nfs, coda
معمولی ترین آن ها Ext2 و Ext3 می باشد.
• با استفاده از دستور زیر می توانید لیست فایل سیستم هایی که سیستم در حال حاضر پشتیبانی می کند را مشاهده کنید.
Cat/proc/filesystems

فایل سیستم EXT2
• در فایل سیستم EXT2 نام هر فایل حداکثر 255 کاراکتر دارد.
• هر فایل می تواند تا 2G حجم داشته باشد. (این محدودیت در لینوکس های جدید مرتفع شده است)
• برای هر فایل در لینوکس پارامترهای مشخصی نگهداری می شود.
• محل ذخیره این اطلاعات در inode است.
• کرنل از طریق شماره inode به آن دستیابی دارد.
• شماره inode یک فایل نیز جزئی از محتویات دایرکتوری است که فایل در آن قرار دارد.
• برای دیدن مشخصات فایل از دستور stat استفاده کنید.


فایل سیستم EXT3
• قالب فایل سیستم EXT3 دقیقاً مشابه فایل سیستم EXT2 است.
• مهمترین تفاوت آن ها در این است که EXT3 قبل از انجام هر کار، اقدام به انجام آن را در یک فایل به خصوص ثبت می کند. موقعی که سیستم به صورت غیر طبیعی خاموش شود عملیات بازیافت با استفاده از این فایل بسیار سریع انجام خواهد شد.
Is: لیست فایل ها را نمایش می دهد:
Is – a: لیست تمام فایل ها را حتی فایل های مخفی را نمایش می دهد.
Is – I: کلیه اطلاعات یک فایل را نمایش می دهد.
Is – i: این دستور inode number فایل ها را نمایش می دهد.
Is - - color: این دستور فایل ها را بر حسب رنگ های تنظیم شده در /etc/DIR – COLORS نمایش می دهد. هر نوع فایل رنگ به خصوصی دارد. با این گزینه حتی می توان بر حسب پسوند فایل نیز رنگ نمایشی آن را تعیین کرد.
Is – F: موقعی که صفحه تصویر رنگی نباشد برای تشخیص نوع فایل ها می توان از علائم خاصی که در انت های نام فایل می آید نوع آن را فهمید.
Is – R: با این گزینه کلیه شاخه های داخلی نیز پیمایش می شود.

• CP:
اگر دستور CP را به تنهایی به کار ببرید این دستور بدون بررسی وجود فایل آن را در مقصد کپی می کند.
برای اینکه در صورت وجود فایلی هم نام در مقصد ابتدا از ما پرسیده و بعد عمل کپی را انجام دهد می توان از پارامتر – i استفاده کرد.

$ cp – i ./a ./A
$ cp: Owerwrite ‘./A’?
می توان بیش از یک فایل را با یک دستور cp در یک دایرکتوری کپی کرد.
$ cp ./a.c ./b.c /w

در دستور cp می توان از علائم خاص استفاده کرد.
$ cp *.c /w

برای کپی کردن یک دایرکتوری با تمام محتویات آن دستور زیر را اجرا می کنیم.
$ cp –rf /dir1 /dest/

• Mv:
 اگر دستور mv را به تنهایی به کار ببرید این دستور بدون بررسی وجود فایل آن را به مقصد انتقال می دهد.
 برای اینکه در صورت وجود فایلی هم نام در مقصد ابتدا از ما پرسیده و بعد عمل انتقال را انجام دهد می توان از پارامتر – i استفاده کنیم.

$mv – i ./a ./A
$mv: Owerwrite ‘./A’?

 می توان بیش از یک فایل را با یک دستور mv به یک دایرکتوری منتقل کرد.
$ms ./a.c ./b.c /w

 در دستور mv می توان از علائم خاص استفاده کرد.
$mv *.c /w


• Rm:
 این دستور برای پاک کردن فایل به کار می رود.
 برای پاک کردن یک دایرکتوری با محتویات داخلی آن دستور زیر را اجرا کنید.
$rm –rf /directory

• Rmdir:
 این دستور یک دایرکتوری خالی را پاک می کند.
$rmdir dirname

• Chmod:
 با این دستور می توان سطح دسترسی یک کاربر به یک فایل را تغییر داد.
Chmod 755 file ;Owner=rwx Group=r-x other=r-x $
Chmod 500 file2 ;Ownre=r-x Group=--- other=--- $
Chmod 644 file3 ; Owner=rw- Group=r—other=r— $
Chomd +x file ;Add execute permission to file for all $
Chmod o-r ;Remove read permission for everyone $

• این دستور را به دو روش می توان به کار برد.
• اینکه دقیقاً اجازه دسترسی که می خواهیم به یک فایل بدهیم را محاسبه کنیم و دستور زیر را اجرا نماییم.
$ Chmod 764 file

• در روش دوم تغییرات را اعمال می کنیم. به این شکل
$ Chmod laugol +/- lrwxtXsl
• a به معنی all یا همه
• g به معنی group یا گروه
• u به معنی user یا همان صاحب فایل
• r یعنی اجازه خواندن
• w یعنی اجازه نوشتن
• x یعنی اجازه اجرا کردن
• اگر بخواهیم این دستور روی یک شاخه با تمام محتویات آن عمل کند از سوئیچ – R استفاده می کنیم.
$ Chmod 723 dir1/-R

 

• به عنوان مثال اگر بخواهیم برای اعضای گروه فایل اجازه اجرای فایل را اضافه کنیم دستور زیر را اجرا می کنیم.
$ Chmod g+x file
• اگر بخواهیم اجازه خواندن یک فایل را به همه بدهیم
$ Chmod a+r file

Chown:
• Chown: این دستور صاحب فایل و یا گروه فایل یا هر دوی آن ها را عوض می کند.

$ Chown user group file 1 file2 … file n


• اگر بخواهیم یک شاخه با تمامی محتویات آن تغییر پیدا کنند.
$ Chown user group dir1/dir2 –R
• برای عوض کردن فقط صاحب فایل

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید