دستورات کنترل سطح دسترسی در لینوکس

کنترل سطح دسترسی در لینوکس

در دسته‌بندی دستورات لینوکس برای مدیریت دسترسی‌ها و مجوزها، سه دستور کلیدی وجود دارد که برای کنترل سطح دسترسی در لینوکس استفاده می‌شود: chmod، chown، و chgrp. در ادامه مثالهایی برای دستورات همراه با توضیحات کامل برای سوئیچها برای شما آورده ایم.

دستور chmod برای کنترل سطح دسترسی در لینوکس(تغییر مجوزهای دسترسی)

این دستور برای تغییر مجوزهای فایل‌ها و دایرکتوری‌ها استفاده می‌شود.

فرمت اصلی:

chmod [options] mode file

mode می‌تواند به صورت عددی (مثل 755) یا نمادین (مثل u+rwx) باشد.
مثال‌ها:

chmod 755 file.txt: تنظیم مجوز به خواندن/نوشتن/اجرا برای مالک، و فقط خواندن/اجرا برای دیگران.
chmod u+x script.sh: افزودن اجازه اجرای اسکریپت به کاربر مالک.

این دستور برای تغییر مجوزهای و کنترل سطح دسترسی در لینوکس به فایل‌ها و دایرکتوری‌ها استفاده می‌شود. هر فایل یا دایرکتوری در لینوکس دارای سه سطح مجوز برای سه گروه است:

مالک (Owner)
گروه (Group)
دیگران (Others)
مجوزها به سه دسته تقسیم می‌شوند:

خواندن (Read) – r (مقدار عددی: 4)
نوشتن (Write) – w (مقدار عددی: 2)
اجرا (Execute) – x (مقدار عددی: 1)
مجوزها به صورت عددی یا نمادین تعیین می‌شوند. برای مثال، عدد 755 به این صورت تفکیک می‌شود:

7: مالک (read, write, execute) => 4 + 2 + 1 = 7
5: گروه (read, execute) => 4 + 1 = 5
5: دیگران (read, execute) => 4 + 1 = 5
سوئیچ‌های کلیدی:
-R: اجرای تغییر مجوزها به صورت بازگشتی (Recursive) برای تمام فایل‌ها و دایرکتوری‌های داخلی.
مثال‌ها:
chmod 755 file.txt:
مالک فایل می‌تواند آن را بخواند، بنویسد و اجرا کند.
اعضای گروه و دیگران فقط می‌توانند فایل را بخوانند و اجرا کنند.
chmod -R 644 /var/www:
این دستور مجوزهای فایل‌ها و دایرکتوری‌های داخل /var/www را به صورت بازگشتی به 644 تغییر می‌دهد.
6 (برای مالک): خواندن و نوشتن.
4 (برای گروه و دیگران): فقط خواندن.

دستور chown برای کنترل سطح دسترسی در لینوکس(تغییر مالکیت فایل یا دایرکتوری)

این دستور هم برای تغییر مالکیت فایل‌ها و دایرکتوری‌ها به کاربر یا گروه خاص و کنترل سطح دسترسی در لینوکس استفاده می‌شود.

فرمت دستور:

chown [owner][:group] file

owner: نام کاربر جدید یا شناسه کاربری که مالک فایل می‌شود.
group (اختیاری): گروهی که به عنوان مالک فایل یا دایرکتوری تنظیم می‌شود.
سوئیچ‌های کلیدی استفاده شده در این دستور
-R: اجرای تغییر مالکیت به صورت بازگشتی برای دایرکتوری و تمام فایل‌ها و زیر دایرکتوری‌ها.
–reference=FILE: مالکیت فایل مقصد را شبیه به فایل مرجع تنظیم می‌کند.
مثال‌ها:

chown john file.txt: تغییر مالکیت فایل file.txt به کاربر john.
chown john:admin file.txt: تغییر مالکیت فایل به کاربر john و گروه admin.
chown -R john /var/www: تغییر مالکیت دایرکتوری /var/www و تمام فایل‌ها و زیر دایرکتوری‌های داخل آن به کاربر john.

دستور chgrp برای کنترل سطح دسترسی در لینوکس(تغییر گروه مالک فایل یا دایرکتوری)

این دستور هم یکی از دیگر از دستورات کنترل سطح دسترسی در لینوکس است که برای تغییر گروه مالک فایل‌ها و دایرکتوری‌ها استفاده می‌شود.

فرمت دستور:

chgrp [group] file

group: نام گروه جدید که مالک فایل یا دایرکتوری می‌شود.
سوئیچ‌های کلیدی:
-R: اجرای تغییر گروه به صورت بازگشتی برای دایرکتوری و تمام فایل‌ها و زیر دایرکتوری‌ها.
–reference=FILE: گروه مالک فایل مقصد را شبیه به فایل مرجع تنظیم می‌کند.
مثال‌ها:

chgrp admin file.txt: تغییر گروه مالکیت فایل file.txt به گروه admin.
chgrp -R admin /var/www: تغییر گروه مالکیت دایرکتوری /var/www و تمام فایل‌های داخل آن به گروه admin.

توضیح عدد 755
عدد 755 یک روش معمول برای تنظیم مجوزهای دسترسی فایل یا دایرکتوری است. این عدد از سه بخش تشکیل شده که هر بخش نمایانگر سطح دسترسی برای مالک، گروه، و دیگران است:

7: مالک دارای مجوز خواندن (r)، نوشتن (w)، و اجرا (x) است. یعنی rwx یا 4 + 2 + 1 = 7.
5: گروه فقط مجوز خواندن (r) و اجرا (x) دارد. یعنی r-x یا 4 + 0 + 1 = 5.
5: دیگران نیز فقط مجوز خواندن (r) و اجرا (x) دارند. یعنی r-x یا 4 + 0 + 1 = 5.
به این ترتیب:

rwx (مالک): مالک می‌تواند فایل یا دایرکتوری را بخواند، بنویسد و اجرا کند.
r-x (گروه): گروه فقط می‌تواند فایل را بخواند و اجرا کند.
r-x (دیگران): دیگران هم فقط می‌توانند فایل را بخوانند و اجرا کنند.
این سه دستور اصلی برای کنترل سطح دسترسی در لینوکس است که به شما اجازه می‌دهند که به طور دقیق مالکیت و سطح دسترسی فایل‌ها و دایرکتوری‌ها را مدیریت کنید.