CodeShot
Juniorسختی 2 از ۵· در 58٪ مصاحبه‌های این حوزه پرسیده شده

دسترسی فایل در لینوکس (مثلاً خروجی `chmod 755`) چطور خوانده می‌شود؟

نشان کردن

پاسخ کوتاه

هر فایل سه گروه دسترسی دارد: مالک، گروه، سایرین؛ هرکدام سه مجوز خواندن(4)، نوشتن(2)، اجرا(1) دارند که با جمع اعداد نمایش داده می‌شوند — مثلاً 7 یعنی هر سه مجوز.

پاسخ کامل

دستور ls -l خروجی‌ای شبیه -rwxr-xr-x نشان می‌دهد که به سه بخش سه‌تایی تقسیم می‌شود:

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

بنابراین chmod 755 file یعنی: مالک همه‌کاره (7)، گروه و سایرین فقط بخوانند و اجرا کنند (5)، بدون اجازه نوشتن.

مثال کد

chmod 644 config.json   # مالک بخواند/بنویسد، بقیه فقط بخوانند — مناسب فایل تنظیمات
chmod 755 deploy.sh     # مالک همه‌کاره، بقیه بخوانند و اجرا کنند — مناسب اسکریپت اجرایی
chmod 600 private.key   # فقط مالک بخواند/بنویسد — مناسب کلید خصوصی

نکته مهم

اشتباه رایج

❌ استفاده از chmod 777 برای «حل‌کردن» یک خطای دسترسی — این کار دسترسی نوشتن/اجرا را به همه می‌دهد و یک ریسک امنیتی جدی است.