Chmod: تفاوت بین نسخه‌ها

از ویکی فارسی اوبونتو
پرش به: ناوبری، جستجو
(تکمیل بخش دیدن مجوز ها)
(در حال تکمیل روش کار (ناقص))
سطر ۳: سطر ۳:
  
 
از این فرمان برای اصلاح این‌که چه کسانی اجازه اجرا، خواندن و نوشتن در کدام دایرکتوری‌ها و بر روی کدام فایل‌ها را دارند، استفاده می‌شود.
 
از این فرمان برای اصلاح این‌که چه کسانی اجازه اجرا، خواندن و نوشتن در کدام دایرکتوری‌ها و بر روی کدام فایل‌ها را دارند، استفاده می‌شود.
دستور '''chmod''' در نگاه اول پیچیده بنظر می‌رسد ولی در واقع ساده و منطقی است.
 
  
 
== دیدن مجوز ها ==
 
== دیدن مجوز ها ==
سطر ۸۱: سطر ۸۰:
 
chmod [OPTION]... --reference=RFILE FILE...
 
chmod [OPTION]... --reference=RFILE FILE...
 
</pre>
 
</pre>
 +
 +
<!-- https://www.howtogeek.com/437958/how-to-use-the-chmod-command-on-linux -->
 +
برای استفاده از '''chmod''' باید سه چیز را به ان بگوییم:
 +
*''' چه‌کسی ''': برای چه کسی مجوزها را تعیین می کنیم.
 +
*''' چه‌کار ''': چه تغییری ایجاد می کنیم؟ آیا ما مجوز را اضافه یا حذف می کنیم؟
 +
*''' چه‌چیز ''': کدام یک از مجوزها را تعیین می کنیم؟
 +
<br>
 +
مقدار هایی که میتوانیم برای "'''چه کسی'''" استفاده کنیم، عبارتند از:
 +
:''' u ''': کاربر('''User''')، به معنی صاحب پرونده یا پوشه.
 +
:''' g ''': گروه('''Group''')، به معنی اعضای گروهی است که پرونده به آن تعلق دارد.
 +
:''' o ''': دیگران('''Others''')، به معنی افرادی است که توسط مجوزهای "'''u'''" و "'''g'''" اداره نمی شوند.
 +
:''' a ''': همه('''All''')، به معنی همه موارد بالا.
 +
 +
مقدار هایی که میتوانیم برای "'''چه‌کار'''" استفاده کنیم، عبارتند از:
 +
:''' + ''': علامت به‌اضافه، از این علامت برای اضافه کردن مجوز به مجوز های موجود استفاده میشود.
 +
:''' - ''': علامت منهی، از این علامت برای حذف کردن مجوز استفاده‌ میشود.
 +
:''' = ''': علامت مساوی، از این علامت برای اضافه کردن مجوز های تعیین شده و حذف بقیه مجوز ها استفاده میشود.
 +
 +
مقدار هایی که میتوانیم برای "'''چه‌چیز'''" استفاده کنیم، عبارتند از:
 +
:''' r ''': مجوز خواندن
 +
:''' w ''': مجوز نوشتن
 +
:''' x ''': مجوز اجرا
 +
:''' s ''': بیت '''[[SUID]]''' یا '''[[SGID]]'''
 +
:''' t ''': بیت چسبناک('''[[sticky-bit]]''')
 +
 +
  
  
 
[[رده:خط فرمان]]
 
[[رده:خط فرمان]]

نسخهٔ ‏۸ دی ۱۳۹۹، ساعت ۱۳:۴۱

Chmod 1.png

chmod که مخفف change mode است، فرمانی برای تغییر مجوزهای یک پرونده یا دایرکتوری(پوشه) است.

از این فرمان برای اصلاح این‌که چه کسانی اجازه اجرا، خواندن و نوشتن در کدام دایرکتوری‌ها و بر روی کدام فایل‌ها را دارند، استفاده می‌شود.

دیدن مجوز ها

برای دیدن مجوزهای پرونده یا پوشه‌ها میتوان از فرمان ls به این صورت استفاده کرد: $ ls -l

در هر خط اولین کاراکتر نشان دهنده نوع ورودی است. بعضی از مقدارهایی که این کاراکتر می‌گیرد:

  • - : نشان دهنده پرونده یا فایل
  • d : نشان دهنده دایرکتوری یا پوشه
  • l : نشان دهنده لینک
  • s : نشان دهنده سوکت
  • b : نشان دهنده بلوک (پاراتیشن)
  • c : نشان دهنده کاراکتر
  • ...

بعد از اولین کاراکتر 9 کاراکتر بعدی برای نمایش مجوزهای ورودی‌ها استفاده می‌شود. این کاراکترها می‌توانند مقدارهای زیر را داشته باشند:

  • r : نشان دهنده مجوز خواندن (read)
  • w : نشان دهنده مجوز نوشتن (write)
  • x : نشان دهنده مجوز اجرا (execute)
  • - : نشان دهنده این است که مجوز تعیین نشده
  • X : ...
  • s : نشان دهنده بیت SUID یا SGID است
  • S : نشان دهنده بیت SUID یا SGID است، اما مجوز اجرایی(x) متناظر تعیین نشده است
  • t : نشان دهنده بیت چسبناک(sticky-bit) یا محافظت از حذف است
  • T : نشان دهنده بیت چسبناک(sticky-bit) یا محافظت از حذف است، اما بیت اجرایی(x) متناظر تعیین نشده است

بعد از اولین کاراکتر بقیه 9 کاراکتر به سه گروه سه تایی تقسیم میشود. به ترتیب از سمت چپ :

  • سه کاراکتر اول نشان دهنده مجوز های صاحب پرونده یا کاربر(user) : -rwxrwxrwx
  • بعد از ان سه کاراکتر بعدی نشان دهنده مجوز های گروه(group) : -rwxrwxrwx
  • و در اخر سه کاراکتر باقی مانده نشان دهنده دیگران(other) : -rwxrwxrwx

برای مثال :

  • -rwxr-xr-x : نشان میدهد که صاحب پرونده(چون اولین کاراکتر "-" است) تمام دسترسی های خواندن، نوشتن و اجرا کردن را دارد و اعضای گروه پرونده و دیگران اجازه خواندن و اجرا کردن پرونده را دارد، ولی اجازه نوشتن در پرونده را ندارند.
  • drwxr-x--- : نشان میدهد که صاحب دایرکتوری(چون اولین کاراکتر "d" است) تمام دسترسی های خواندن، نوشتن و اجرا کردن را دارد و اعضای گروه دایرکتوری اجازه خواندن و اجرا کردن را دارد و دیگران هیچ اجازه‌ای برای خواندن، نوشتن یا اجرا کردن در دایرکتوری را ندارند.
  • drwxrwxrwt : نشان میدهد که صاحب دایرکتوری(چون اولین کاراکتر "d" است) تمام دسترسی های خواندن، نوشتن و اجرا کردن را دارد و اعضای گروه دایرکتوری نیز مانند صاحب دایرکتوری، اجازه خواندن، نوشتن و اجرا کردن پوشه را دارد و دیگران نیز همه مجوز ها را دارند و همچنین بیت چسبناک(sticky-bit) نیز برای این دایرکتوری تعیین شده است.


گزینه‌ها

-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...

برای استفاده از chmod باید سه چیز را به ان بگوییم:

  • چه‌کسی : برای چه کسی مجوزها را تعیین می کنیم.
  • چه‌کار : چه تغییری ایجاد می کنیم؟ آیا ما مجوز را اضافه یا حذف می کنیم؟
  • چه‌چیز : کدام یک از مجوزها را تعیین می کنیم؟


مقدار هایی که میتوانیم برای "چه کسی" استفاده کنیم، عبارتند از:

u : کاربر(User)، به معنی صاحب پرونده یا پوشه.
g : گروه(Group)، به معنی اعضای گروهی است که پرونده به آن تعلق دارد.
o : دیگران(Others)، به معنی افرادی است که توسط مجوزهای "u" و "g" اداره نمی شوند.
a : همه(All)، به معنی همه موارد بالا.

مقدار هایی که میتوانیم برای "چه‌کار" استفاده کنیم، عبارتند از:

+ : علامت به‌اضافه، از این علامت برای اضافه کردن مجوز به مجوز های موجود استفاده میشود.
- : علامت منهی، از این علامت برای حذف کردن مجوز استفاده‌ میشود.
= : علامت مساوی، از این علامت برای اضافه کردن مجوز های تعیین شده و حذف بقیه مجوز ها استفاده میشود.

مقدار هایی که میتوانیم برای "چه‌چیز" استفاده کنیم، عبارتند از:

r : مجوز خواندن
w : مجوز نوشتن
x : مجوز اجرا
s : بیت SUID یا SGID
t : بیت چسبناک(sticky-bit)