×

دستورات chmod و chown در لینوکس، آموزش مدیریت Permission فایل ها پرینت


دستورات chmod و chown در لینوکس؛ آموزش مدیریت Permission فایل‌ها

مقدمه:

دستورات chmod و chown در لینوکس برای مدیریت Permission فایل‌ها و پوشه‌ها به کار می‌روند، اما وظیفه یکسانی ندارند. chmod مجوز خواندن، نوشتن و اجرا را تغییر می‌دهد؛ درحالی‌که chown مالک و گروه فایل را مشخص می‌کند. برای استفاده ایمن از این فرمان‌ها باید ابتدا مجوز فعلی، مالک فایل، نوع مسیر و نیاز واقعی سرویس را بررسی کرد. اجرای بازگشتی یا تنظیم عمومی 777 بدون ارزیابی می‌تواند امنیت و عملکرد سرور را مختل کند.

فهرست مطالب

  • Permission در لینوکس چیست؟
  • تفاوت chmod و chown
  • مشاهده مجوز و مالکیت فایل‌ها
  • آموزش حالت عددی chmod
  • آموزش حالت نمادین chmod
  • تغییر مالک و گروه با chown
  • استفاده امن از گزینه Recursive
  • تنظیم Permission فایل‌های سایت
  • مجوزهای ویژه لینوکس
  • رفع خطاهای رایج
  • چک‌لیست مدیریت امن مجوزها
  • جمع‌بندی و سؤالات متداول

Permission در لینوکس چیست؟

لینوکس برای کنترل دسترسی به هر فایل یا پوشه، سه گروه کاربری در نظر می‌گیرد:

  • User یا Owner: مالک اصلی فایل
  • Group: اعضای گروهی که فایل به آن تعلق دارد
  • Others: سایر کاربران سیستم

برای هرکدام از این گروه‌ها می‌توان سه مجوز اصلی تعریف کرد:

مجوز نماد مقدار عددی مفهوم برای فایل مفهوم برای پوشه
Read r 4 مشاهده محتوای فایل مشاهده نام محتویات پوشه
Write w 2 تغییر محتوای فایل ایجاد، حذف یا تغییر ورودی‌های پوشه
Execute x 1 اجرای فایل ورود و دسترسی به مسیرهای داخل پوشه

مفهوم x برای پوشه با فایل متفاوت است. مجوز Execute روی پوشه امکان عبور یا جست‌وجوی مسیر را فراهم می‌کند؛ بنابراین ممکن است کاربر نام فایل را بداند، اما بدون x نتواند به آن دسترسی پیدا کند.

اگر یک سرویس وب، پنل یا برنامه به‌دلیل مجوزهای اشتباه اجرا نمی‌شود، تغییر تصادفی Permission می‌تواند مشکل را گسترده‌تر کند. برای بررسی مالکیت و دسترسی مسیرهای سرور می‌توانید از کارشناسان شرکت تجارت الکترونیک نوژن مشاوره فنی دریافت کنید.

تفاوت chmod و chown در لینوکس

chmod از عبارت Change Mode گرفته شده و بیت‌های مربوط به دسترسی فایل یا پوشه را تغییر می‌دهد. chown نیز مخفف Change Owner است و مالک یا گروه فایل را تغییر می‌دهد.

فرمان چه چیزی را تغییر می‌دهد؟ نمونه
chmod مجوزهای خواندن، نوشتن و اجرا chmod 640 config.php
chown مالک و گروه فایل chown user:group config.php
chgrp فقط گروه فایل chgrp developers config.php
stat نمایش اطلاعات دقیق فایل stat config.php
ls -l نمایش خلاصه Permission و مالکیت ls -l config.php

اگر کاربر مالک فایل باشد اما مجوز نوشتن نداشته باشد، احتمالاً باید chmod بررسی شود. اگر فایل متعلق به کاربر یا سرویس اشتباهی باشد، موضوع به chown مربوط است.

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

مطالعه بیشتر: خرید سرور مجازی لینوکس

مشاهده Permission و مالکیت فایل‌ها

پیش از هر تغییر، وضعیت فعلی فایل یا پوشه را مشاهده کنید:

ls -l filename

یک خروجی نمونه می‌تواند چنین ساختاری داشته باشد:

-rw-r----- 1 nojen web 2048 Oct 29 10:30 filename

بخش اول خروجی، نوع و مجوزهای مسیر را نشان می‌دهد:

-rw-r-----

کاراکتر اول نوع مسیر را مشخص می‌کند:

  • - فایل معمولی
  • d پوشه
  • l پیوند نمادین یا Symbolic Link

نه کاراکتر بعدی در سه مجموعه قرار می‌گیرند:

rw-  r--  ---
  • rw- مجوز مالک
  • r-- مجوز گروه
  • --- مجوز سایر کاربران

در مثال بالا، مالک اجازه خواندن و نوشتن دارد، گروه فقط می‌تواند فایل را بخواند و دیگران هیچ دسترسی ندارند.

برای مشاهده اطلاعات دقیق‌تر از stat استفاده کنید:

stat filename

برای نمایش مجوز عددی همراه با نام مالک و گروه:

stat -c '%a %U %G %n' filename

نمونه خروجی:

640 nojen web filename

مطالعه بیشتر: آموزش اتصال به سرور لینوکس با SSH

آموزش دستور chmod در لینوکس

ساختار اصلی فرمان chmod چنین است:

chmod MODE FILE

مقدار MODE را می‌توان به‌صورت عددی یا نمادین وارد کرد. طبق راهنمای GNU، این فرمان بیت‌های حالت فایل را بر اساس نمایش نمادین یا مقدار هشت‌هشتی تغییر می‌دهد. Linux manual page

اگر فایل متعلق به حساب دیگری باشد، ممکن است به دسترسی مدیریتی نیاز داشته باشید:

sudo chmod MODE FILE

استفاده از sudo باید فقط در صورت نیاز و پس از بررسی دقیق مسیر انجام شود.

آموزش Permission عددی در chmod

در روش عددی، هر مجوز مقدار مشخصی دارد:

  • خواندن یا r برابر 4
  • نوشتن یا w برابر 2
  • اجرا یا x برابر 1

برای ساخت عدد هر گروه، مقدار مجوزهای موردنیاز را با یکدیگر جمع می‌کنیم:

Permission محاسبه مقدار
--- 0 0
--x 1 1
-w- 2 2
-wx 2+1 3
r-- 4 4
r-x 4+1 5
rw- 4+2 6
rwx 4+2+1 7

سه رقم نهایی به‌ترتیب متعلق به مالک، گروه و سایر کاربران هستند.

مثال Permission برابر 644

chmod 644 document.txt

مقدار 644 یعنی:

  • مالک: خواندن و نوشتن
  • گروه: فقط خواندن
  • دیگران: فقط خواندن

نمایش نمادین آن چنین است:

rw-r--r--

مثال Permission برابر 755

chmod 755 script.sh

این مقدار یعنی:

  • مالک: خواندن، نوشتن و اجرا
  • گروه: خواندن و اجرا
  • دیگران: خواندن و اجرا

نمایش نمادین:

rwxr-xr-x

مثال Permission برابر 750

chmod 750 private-script.sh

در این حالت مالک دسترسی کامل دارد، اعضای گروه می‌توانند فایل را بخوانند و اجرا کنند و سایر کاربران دسترسی ندارند.

مثال Permission برابر 600

chmod 600 private-key

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

چرا استفاده از chmod 777 خطرناک است؟

فرمان زیر به مالک، گروه و سایر کاربران اجازه کامل خواندن، نوشتن و اجرا می‌دهد:

chmod 777 filename

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

به‌جای 777 ابتدا این موارد را بررسی کنید:

  1. پردازش برنامه با چه کاربری اجرا می‌شود؟
  2. مالک فعلی فایل یا پوشه چه کسی است؟
  3. آیا افزودن کاربر سرویس به یک گروه مشترک کافی است؟
  4. آیا فقط یک مسیر خاص به دسترسی نوشتن نیاز دارد؟
  5. آیا ACL برای نیاز پیچیده‌تر گزینه مناسب‌تری است؟

استفاده از Permission باز ممکن است خطا را ظاهراً برطرف کند، اما علت اصلی یعنی مالکیت یا طراحی نادرست دسترسی را پنهان می‌کند.

آموزش حالت نمادین chmod

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

ساختار کلی آن چنین است:

WHO OPERATOR PERMISSION

بخش WHO مشخص می‌کند تغییر برای چه کسی اعمال شود:

  • u مالک
  • g گروه
  • o دیگران
  • a همه

عملگرها نیز عبارت‌اند از:

  • + افزودن مجوز
  • - حذف مجوز
  • = تعیین دقیق مجوز

راهنمای GNU ساختار حالت نمادین را به‌صورت ترکیبی از ugoa، یکی از عملگرهای +، - یا = و مجوزهای مربوط تعریف می‌کند. gnu.org

افزودن مجوز اجرا برای مالک

chmod u+x deploy.sh

حذف مجوز نوشتن از سایر کاربران

chmod o-w shared.txt

افزودن خواندن و نوشتن برای گروه

chmod g+rw project.log

تعیین دقیق مجوز مالک

chmod u=rw config.ini

این دستور مجوز مالک را دقیقاً روی خواندن و نوشتن قرار می‌دهد و مجوز اجرای او را حذف می‌کند.

اعمال چند تغییر هم‌زمان

chmod u=rw,g=r,o= document.txt

در این مثال مالک اجازه خواندن و نوشتن دارد، گروه فقط می‌تواند بخواند و سایر کاربران هیچ دسترسی ندارند.

حالت نمادین زمانی مناسب است که نمی‌خواهید تمام Permission را بازنویسی کنید. برای نمونه، chmod g+w فقط مجوز نوشتن گروه را اضافه می‌کند.

آموزش دستور chown در لینوکس

ساختار اصلی chown به شکل زیر است:

chown OWNER FILE

برای تغییر هم‌زمان مالک و گروه:

chown OWNER:GROUP FILE

طبق مستندات این فرمان، اگر فقط مالک مشخص شود گروه تغییر نمی‌کند. اگر مالک و گروه با علامت دونقطه تعیین شوند، هر دو بخش تغییر خواهند کرد. Linux manual page

تغییر مالک فایل

sudo chown nojen document.txt

این دستور مالک فایل را به nojen تغییر می‌دهد و گروه موجود را حفظ می‌کند.

تغییر مالک و گروه

sudo chown nojen:developers document.txt

اکنون مالک nojen و گروه developers خواهد بود.

تغییر فقط گروه با chown

sudo chown :developers document.txt

همچنین می‌توانید از chgrp استفاده کنید:

sudo chgrp developers document.txt

استفاده از مالکیت یک فایل مرجع

اگر می‌خواهید مالکیت یک فایل با فایل دیگری یکسان شود:

sudo chown --reference=reference.txt target.txt

برای Permission مشابه نیز می‌توان از این روش استفاده کرد:

chmod --reference=reference.txt target.txt

استفاده بازگشتی از chmod و chown

گزینه -R تغییر را روی پوشه و محتویات زیرمجموعه آن اعمال می‌کند:

sudo chown -R nojen:developers /srv/project

یا:

sudo chmod -R 755 /srv/project

دستور دوم معمولاً انتخاب دقیقی نیست؛ زیرا فایل‌ها و پوشه‌ها نیاز یکسانی به Execute ندارند. اعمال 755 به همه فایل‌ها، بسیاری از فایل‌های عادی را بی‌دلیل اجرایی می‌کند.

گزینه بازگشتی می‌تواند تعداد زیادی فایل را در چند ثانیه تغییر دهد. قبل از اجرا:

ls -ld /srv/project
find /srv/project -maxdepth 2 -ls

مسیر را دقیق بررسی کنید. از اجرای فرمان بازگشتی روی /، مسیرهای سیستمی یا متغیرهای نامشخص خودداری کنید.

راهنمای GNU هشدار می‌دهد ترکیب پیمایش بازگشتی با دنبال‌کردن Symbolic Linkها می‌تواند خطر امنیتی ایجاد کند؛ زیرا پیوند ممکن است عملیات را به یک هدف خارج از درخت موردنظر هدایت کند. gnu.org

پیش‌نمایش تغییر مالکیت

برای مشاهده فایل‌هایی که مالک فعلی مشخصی دارند:

find /srv/project -user olduser -print

پس از بررسی خروجی، می‌توان تغییر محدودتری انجام داد:

sudo find /srv/project -user olduser -exec chown newuser:developers {} +

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

تنظیم جداگانه Permission فایل‌ها و پوشه‌ها

پوشه‌ها معمولاً برای پیمایش به مجوز x نیاز دارند، اما فایل‌های متنی عادی نباید بی‌دلیل اجرایی شوند. به همین دلیل بهتر است Permission فایل و پوشه جداگانه تنظیم شود.

برای نمونه، اگر نیاز پروژه با این سطوح دسترسی سازگار باشد:

find /srv/project -type d -exec chmod 755 {} +
find /srv/project -type f -exec chmod 644 {} +

این اعداد نسخه عمومی و قطعی برای همه پروژه‌ها نیستند. اگر گروه توسعه باید فایل‌ها را ویرایش کند، برنامه فایل محرمانه داشته باشد یا سرویس وب با کاربر دیگری اجرا شود، تنظیم مناسب متفاوت خواهد بود.

روش نمادین زیر در برخی سناریوها ایمن‌تر است:

chmod -R u=rwX,g=rX,o= /srv/project

حرف بزرگ X فقط در شرایط مرتبط، مانند پوشه‌ها یا فایل‌هایی که قبلاً اجرایی بوده‌اند، Execute را اعمال می‌کند. این موضوع مانع اجرایی‌شدن بی‌دلیل تمام فایل‌های عادی می‌شود.

[لینک داخلی پیشنهادی: انکرتکست «آموزش ساخت User و دادن دسترسی Sudo در Ubuntu» ← مقاله مدیریت کاربران Ubuntu]

مثال مدیریت Permission فایل‌های یک وب‌سایت

فرض کنید فایل‌های یک سایت در مسیر زیر قرار دارند:

/var/www/example

ابتدا وضعیت مالکیت و مجوز را بررسی کنید:

sudo ls -la /var/www/example
sudo stat /var/www/example

سپس باید مشخص کنید چه کسی سایت را مدیریت می‌کند و سرویس وب با چه کاربری اجرا می‌شود. نام کاربر سرویس در همه سرورها یکسان نیست و نباید بدون بررسی، مالکیت تمام پروژه به یک نام عمومی تغییر داده شود.

یک ساختار قابل بررسی می‌تواند شامل این موارد باشد:

  • مالک فایل‌ها: کاربر مسئول استقرار
  • گروه فایل‌ها: گروه مشترک پروژه یا وب‌سرور
  • فایل‌های عمومی: فقط خواندنی برای سرویس
  • پوشه آپلود یا کش: قابل نوشتن برای پردازش مربوط
  • فایل‌های تنظیمات حساس: محدودتر از فایل‌های عمومی

به‌جای بازکردن تمام پروژه، فقط مسیرهای نیازمند نوشتن را تنظیم کنید. برای مثال، اگر یک پوشه مشخص باید برای گروه پروژه قابل نوشتن باشد:

sudo chown -R deploy:projectgroup /var/www/example/storage
sudo chmod -R u=rwX,g=rwX,o= /var/www/example/storage

نام کاربران، گروه و مسیر صرفاً نمونه هستند. پیش از اجرا، آن‌ها را با ساختار واقعی سرور هماهنگ کنید.

مطالعه بیشتر: امنیت سرور لینوکس بعد از راه‌اندازی

مجوزهای ویژه در لینوکس

علاوه بر rwx، سه بیت ویژه نیز وجود دارد:

Setuid

Setuid روی برخی فایل‌های اجرایی باعث می‌شود برنامه با شناسه مؤثر مالک فایل اجرا شود. استفاده نادرست از آن می‌تواند پیامد امنیتی جدی داشته باشد و نباید بدون شناخت برنامه فعال شود.

نمایش عددی آن با رقم ابتدایی 4 انجام می‌شود:

chmod 4755 executable

این دستور فقط یک نمونه آموزشی است و نباید روی برنامه‌های ناشناس اجرا شود.

Setgid

Setgid روی فایل اجرایی به گروه فایل مربوط است. روی یک پوشه می‌تواند باعث شود فایل‌ها و پوشه‌های جدید، گروه مسیر والد را به ارث ببرند.

برای یک پوشه اشتراکی تیمی:

sudo chmod g+s /srv/shared-project

سپس گروه و Permission مسیر باید متناسب با اعضای تیم تنظیم شوند.

Sticky Bit

Sticky Bit روی یک پوشه اشتراکی باعث می‌شود کاربران معمولاً فقط فایل‌های متعلق به خود یا مسیر را حذف کنند. نمونه شناخته‌شده این رفتار در پوشه‌هایی مانند /tmp دیده می‌شود. Linux manual page

تنظیم نمادین آن:

chmod +t shared-directory

این مجوز نیز باید بر اساس سناریوی واقعی استفاده شود و جایگزین طراحی صحیح گروه‌ها نیست.

نقش umask در Permission فایل‌های جدید

umask تعیین می‌کند هنگام ایجاد فایل یا پوشه، کدام مجوزها از حالت پایه حذف شوند. برای مشاهده مقدار فعلی:

umask

برای نمایش نمادین:

umask -S

chmod مجوز مسیر موجود را تغییر می‌دهد، اما umask روی مجوز اولیه فایل‌ها و پوشه‌های جدید اثر می‌گذارد. اگر فایل‌های جدید دائماً با Permission نامناسب ساخته می‌شوند، ممکن است مشکل از umask، تنظیم سرویس یا روش استقرار باشد؛ نه فایل‌های موجود.

رفع خطاهای رایج Permission در لینوکس

خطای Permission denied

ابتدا تمام اجزای مسیر را بررسی کنید:

namei -l /path/to/file

ممکن است خود فایل مجوز کافی داشته باشد، اما یکی از پوشه‌های والد فاقد مجوز Execute باشد. سپس مالکیت و Permission فایل را مشاهده کنید:

ls -l /path/to/file
stat /path/to/file

خطای Operation not permitted در chown

تغییر مالک فایل معمولاً به دسترسی مدیریتی نیاز دارد:

sudo chown user:group filename

اگر حتی Root نیز نمی‌تواند فایل را تغییر دهد، عواملی مانند فایل‌سیستم فقط‌خواندنی، ویژگی Immutable، Mount خاص یا محدودیت محیط کانتینری باید بررسی شوند.

تغییرات chmod اثر مورد انتظار ندارد

موارد زیر را بررسی کنید:

  • مسیر موردنظر Symbolic Link نباشد.
  • برنامه از ACLهای اضافه استفاده نکرده باشد.
  • فایل‌سیستم از Permissionهای POSIX پشتیبانی کند.
  • سرویس با کاربر مورد انتظار اجرا شود.
  • SELinux یا AppArmor محدودیت دیگری ایجاد نکرده باشد.
  • فایل روی یک Mount خارجی با تنظیمات متفاوت قرار نداشته باشد.

پس از chown سایت از دسترس خارج شده است

احتمالاً سرویس وب دیگر به فایل‌ها یا پوشه‌های لازم دسترسی ندارد. مالک و گروه قبلی را از بکاپ، فایل مرجع یا مستندات سرویس پیدا کنید.

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

اسکریپت اجرا نمی‌شود

ابتدا Permission را بررسی کنید:

ls -l script.sh

در صورت اطمینان از محتوای فایل، مجوز اجرا را برای مالک اضافه کنید:

chmod u+x script.sh

وجود مجوز Execute به‌تنهایی کافی نیست. Shebang، مسیر مفسر، فرمت خط‌های فایل و گزینه noexec روی Mount نیز ممکن است مانع اجرا شوند.

مطالعه بیشتر: آموزش تغییر پورت SSH در Ubuntu

مطالعه بیشتر: نصب Fail2ban برای محافظت از SSH

چک‌لیست مدیریت امن Permission فایل‌ها

  • مسیر دقیق با ls یا realpath بررسی شده است.
  • مجوز و مالکیت فعلی ثبت شده است.
  • از فایل‌ها یا تنظیمات حساس نسخه پشتیبان وجود دارد.
  • کاربر اجراکننده سرویس مشخص شده است.
  • از chmod 777 به‌عنوان راهکار سریع استفاده نشده است.
  • گزینه -R فقط پس از بررسی زیرپوشه‌ها استفاده می‌شود.
  • Permission فایل‌ها و پوشه‌ها جداگانه تنظیم می‌شود.
  • Symbolic Linkهای مسیر پیش از عملیات بازگشتی بررسی شده‌اند.
  • دسترسی نوشتن فقط به کاربران یا گروه‌های ضروری داده شده است.
  • Setuid، Setgid و Sticky Bit بدون ضرورت فعال نشده‌اند.
  • پس از تغییر، سایت یا سرویس مربوط آزمایش شده است.
  • نتیجه نهایی با stat و ls -l کنترل شده است.

جمع‌ بندی

در موضوع «دستورات chmod و chown در لینوکس، آموزش مدیریت Permission فایل‌ها»، مهم‌ترین نکته شناخت تفاوت مجوز و مالکیت است. chmod سطح خواندن، نوشتن و اجرا را تعیین می‌کند؛ درحالی‌که chown مالک و گروه فایل یا پوشه را تغییر می‌دهد.

پیش از هر تغییر، خروجی ls -l و stat را بررسی کنید. در عملیات بازگشتی نیز فایل‌ها، پوشه‌ها و Symbolic Linkها را جداگانه در نظر بگیرید تا تغییر ناخواسته به مسیرهای دیگر سرایت نکند.

Permission مناسب یک عدد ثابت برای همه سایت‌ها و برنامه‌ها نیست. ساختار کاربران، گروه‌ها، نوع سرویس و نیاز نوشتن در هر پروژه تعیین می‌کند چه مجوزی مناسب است. به‌جای بازکردن دسترسی عمومی، حداقل مجوز لازم را اعمال کنید.

اگر مجوزهای اشتباه باعث اختلال سایت، وب‌سرور یا سرویس‌های لینوکسی شده‌اند، می‌توانید برای بررسی مالکیت مسیرها، امنیت دسترسی و پشتیبانی زیرساخت با شرکت تجارت الکترونیک نوژن تماس بگیرید.

سؤالات متداول

تفاوت chmod و chown چیست؟

chmod مجوزهای خواندن، نوشتن و اجرای فایل را تغییر می‌دهد. chown برای تغییر مالک یا گروه فایل و پوشه استفاده می‌شود.

Permission عددی 755 چه معنایی دارد؟

مالک اجازه خواندن، نوشتن و اجرا دارد. گروه و سایر کاربران فقط اجازه خواندن و اجرا خواهند داشت.

Permission عددی 644 برای چیست؟

در 644، مالک می‌تواند فایل را بخواند و تغییر دهد، اما گروه و دیگران فقط اجازه خواندن دارند. مناسب‌بودن آن به نوع فایل و ساختار سرویس بستگی دارد.

آیا استفاده از chmod 777 درست است؟

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

چگونه مالک یک پوشه و همه محتویات آن را تغییر دهیم؟

می‌توان از chown -R USER:GROUP DIRECTORY استفاده کرد. قبل از اجرا، مسیر و Symbolic Linkهای موجود را دقیق بررسی کنید.

چرا فایل Permission مناسب دارد اما باز هم قابل دسترسی نیست؟

ممکن است یکی از پوشه‌های والد مجوز Execute نداشته باشد یا ACL، AppArmor، SELinux، تنظیمات Mount یا مالکیت مسیر مانع دسترسی شود.

آیا فایل‌ها و پوشه‌ها باید Permission یکسان داشته باشند؟

خیر. پوشه‌ها برای پیمایش به x نیاز دارند، اما فایل‌های عادی معمولاً نباید بی‌دلیل اجرایی شوند. بهتر است مجوز آن‌ها جداگانه تنظیم شود.


آیا این پاسخ به شما کمک کرد؟

  • دستورات chemod و chown در لینوکس
  • 0
« برگشت