Chmod: تفاوت بین نسخهها
سطر ۱: | سطر ۱: | ||
[[پرونده:chmod_1.png|500px|left]] | [[پرونده:chmod_1.png|500px|left]] | ||
− | '''chmod''' که مخفف change mode است، فرمانی برای تغییر [[دسترسیها| | + | '''chmod''' که مخفف change mode است، فرمانی برای تغییر [[دسترسیها|مجوزهای]] یک پرونده یا دایرکتوری(پوشه) است. |
− | از این فرمان برای اصلاح | + | از این فرمان برای اصلاح اینکه چه کسانی اجازه اجرا، خواندن و نوشتن در کدام دایرکتوریها و بر روی کدام فایلها را دارند، استفاده میشود. |
− | دستور '''chmod''' در نگاه اول | + | دستور '''chmod''' در نگاه اول پیچیده بنظر میرسد ولی در واقع ساده و منطقی است. |
== دیدن مجوز ها == | == دیدن مجوز ها == | ||
− | برای دیدن | + | برای دیدن مجوزهای پرونده یا پوشهها میتوان از فرمان '''[[ls]]''' به این صورت استفاده کرد: |
<code dir=ltr>$ ls -l</code> | <code dir=ltr>$ ls -l</code> | ||
− | در هر خط اولین کاراکتر نشان دهنده نوع ورودی است. بعضی از | + | در هر خط اولین کاراکتر نشان دهنده نوع ورودی است. بعضی از مقدارهایی که این کاراکتر میگیرد: |
* ''' - ''': نشان دهنده پرونده یا فایل | * ''' - ''': نشان دهنده پرونده یا فایل | ||
* ''' d ''': نشان دهنده دایرکتوری یا پوشه | * ''' d ''': نشان دهنده دایرکتوری یا پوشه | ||
سطر ۱۸: | سطر ۱۸: | ||
* ''' ... ''' | * ''' ... ''' | ||
− | بعد از اولین کاراکتر 9 کاراکتر بعدی برای نمایش | + | بعد از اولین کاراکتر 9 کاراکتر بعدی برای نمایش مجوزهای ورودیها استفاده میشود. 9 کاراکتر بعدی میتوانند مقدارهای زیر را داشته باشند: |
* ''' r ''': نشان دهنده مجوز خواندن (read) | * ''' r ''': نشان دهنده مجوز خواندن (read) | ||
* ''' w ''': نشان دهنده مجوز نوشتن (write) | * ''' w ''': نشان دهنده مجوز نوشتن (write) | ||
سطر ۲۹: | سطر ۲۹: | ||
− | + | == گزینهها == | |
− | |||
− | |||
− | == | ||
<code dir=ltr>'''-c, --changes'''</code> | <code dir=ltr>'''-c, --changes'''</code> | ||
− | : مانند '''verbose''' اما فقط در صورت ایجاد تغییر گزارش | + | : مانند '''verbose''' اما فقط در صورت ایجاد تغییر گزارش میدهید |
<code dir=ltr>'''-f, --silent, --quiet'''</code> | <code dir=ltr>'''-f, --silent, --quiet'''</code> | ||
− | : بیشتر پیغام های خطا را نادیده | + | : بیشتر پیغام های خطا را نادیده میگیرد |
<code dir=ltr>'''-v, --verbose'''</code> | <code dir=ltr>'''-v, --verbose'''</code> | ||
− | : برای هر پروسه اطلاعات اضافی را چاپ | + | : برای هر پروسه اطلاعات اضافی را چاپ میکند |
<code dir=ltr>'''--no-preserve-root'''</code> | <code dir=ltr>'''--no-preserve-root'''</code> | ||
سطر ۵۰: | سطر ۴۷: | ||
<code dir=ltr>'''--reference=RFILE'''</code> | <code dir=ltr>'''--reference=RFILE'''</code> | ||
− | : استفاده از مجوز های فایل 'RFILE' به عنوان مرجع (از | + | : استفاده از مجوز های فایل 'RFILE' به عنوان مرجع (از مجوزهای فایل 'RFILE' استفاده میکند) |
<code dir=ltr>'''-R, --recursive'''</code> | <code dir=ltr>'''-R, --recursive'''</code> | ||
− | : | + | : تغییر همه پروندهها و دایرکتوریها به صورت بازگشتی |
<code dir=ltr>'''--help'''</code> | <code dir=ltr>'''--help'''</code> | ||
− | : راهنما را نمایش | + | : راهنما را نمایش میدهد |
<code dir=ltr>'''--version'''</code> | <code dir=ltr>'''--version'''</code> | ||
− | : نسخه برنامه را نمایش | + | : نسخه برنامه را نمایش میدهد |
− | == | + | == روش کار == |
− | از | + | میتوان از فرمان '''chmod''' به این شکل استفاده کرد: |
<!-- https://man7.org/linux/man-pages/man1/chmod.1.html --> | <!-- https://man7.org/linux/man-pages/man1/chmod.1.html --> | ||
<pre> | <pre> | ||
سطر ۷۰: | سطر ۶۷: | ||
chmod [OPTION]... --reference=RFILE FILE... | chmod [OPTION]... --reference=RFILE FILE... | ||
</pre> | </pre> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[رده:خط فرمان]] | [[رده:خط فرمان]] |
نسخهٔ ۳ دی ۱۳۹۹، ساعت ۲۳:۲۴
chmod که مخفف change mode است، فرمانی برای تغییر مجوزهای یک پرونده یا دایرکتوری(پوشه) است.
از این فرمان برای اصلاح اینکه چه کسانی اجازه اجرا، خواندن و نوشتن در کدام دایرکتوریها و بر روی کدام فایلها را دارند، استفاده میشود. دستور chmod در نگاه اول پیچیده بنظر میرسد ولی در واقع ساده و منطقی است.
دیدن مجوز ها
برای دیدن مجوزهای پرونده یا پوشهها میتوان از فرمان ls به این صورت استفاده کرد:
$ ls -l
در هر خط اولین کاراکتر نشان دهنده نوع ورودی است. بعضی از مقدارهایی که این کاراکتر میگیرد:
- - : نشان دهنده پرونده یا فایل
- d : نشان دهنده دایرکتوری یا پوشه
- l : نشان دهنده لینک
- s : نشان دهنده سوکت
- b : نشان دهنده بلوک (پاراتیشن)
- c : نشان دهنده کاراکتر
- ...
بعد از اولین کاراکتر 9 کاراکتر بعدی برای نمایش مجوزهای ورودیها استفاده میشود. 9 کاراکتر بعدی میتوانند مقدارهای زیر را داشته باشند:
- r : نشان دهنده مجوز خواندن (read)
- w : نشان دهنده مجوز نوشتن (write)
- x : نشان دهنده مجوز اجرا (execute)
- X : ...
- s : نشان دهنده بیت SUID یا SGID است
- S : نشان دهنده بیت SUID یا SGID است، اما مجوز اجرایی(x) متناظر تعیین نشده است
- t : نشان دهنده بیت چسبناک(sticky-bit) یا محافظت از حذف است
- T : نشان دهنده بیت چسبناک(sticky-bit) یا محافظت از حذف است، اما بیت اجرایی(x) متناظر تعیین نشده است
گزینهها
-c, --changes
- مانند verbose اما فقط در صورت ایجاد تغییر گزارش میدهید
-f, --silent, --quiet
- بیشتر پیغام های خطا را نادیده میگیرد
-v, --verbose
- برای هر پروسه اطلاعات اضافی را چاپ میکند
--no-preserve-root
- do not treat '/' specially (the default)
--preserve-root
- fail to operate recursively on '/'
--reference=RFILE
- استفاده از مجوز های فایل 'RFILE' به عنوان مرجع (از مجوزهای فایل 'RFILE' استفاده میکند)
-R, --recursive
- تغییر همه پروندهها و دایرکتوریها به صورت بازگشتی
--help
- راهنما را نمایش میدهد
--version
- نسخه برنامه را نمایش میدهد
روش کار
میتوان از فرمان chmod به این شکل استفاده کرد:
chmod [OPTION]... MODE[,MODE]... FILE... chmod [OPTION]... OCTAL-MODE FILE... chmod [OPTION]... --reference=RFILE FILE...