مجوزهای فایل لینوکس – Chmod 777 چیست و چگونه از آن استفاده کنیم

اگر کاربر جدید لینوکس(new Linux user) هستید، احتمالاً در اوایل دوره با دستور Chmod مواجه شده اید. (Chmod)شاید کسی به شما گفته است که "chmod 777" را برای انتقال یک فایل به یک پوشه خاص، و کار کرده است! بنابراین دستور chmod چه می کند و اعداد به چه معنا هستند؟

در این مقاله همه چیزهایی که باید در مورد مجوزهای فایل لینوکس بدانید بحث خواهد شد. (Linux)دانستن این موضوع برای درک دستور chmod و اعدادی که با سطوح دسترسی خاصی مطابقت دارند، مهم است. چه از اوبونتو(Ubuntu) ، چه فدورا یا یک توزیع عجیب‌تر لینوکس استفاده می‌کنید، باید متوجه شوید که چه زمانی با استفاده از دستور (Linux distro)CHMOD مجوزها را روی 777 تنظیم کنید و چه زمانی باید از تنظیمات دیگری استفاده کنید.

نحوه عملکرد مجوزهای فایل لینوکس

در لینوکس(Linux) ، سیستم عامل بر اساس مجوز فایل، مالکیت و ویژگی ها تعیین می کند که چه کسی می تواند به یک فایل خاص دسترسی داشته باشد. این سیستم به شما، مالک یا مدیر، اجازه می دهد تا محدودیت های دسترسی به فایل ها و فهرست های مختلف را فعال کنید. شما می توانید امنیت سیستم خود را با دادن دسترسی فقط به کاربران و برنامه های مورد اعتماد خود بهبود بخشید.

درک کلاس های کاربری(Understanding User Classes)

یک کاربر خاص و یک گروه صاحب هر فایل و فهرست هستند. این بدان معناست که سه دسته از کاربران(three categories of users) وجود دارند که می توانید سطح مشخصی از دسترسی را به آنها اختصاص دهید. این کاربران به شرح زیر طبقه بندی می شوند:

  • مالک
  • گروه
  • دیگران

با کلیک راست روی هر دایرکتوری، انتخاب Properties و رفتن به برگه Permissions ، می توانید این گروه ها را به صورت بصری در اوبونتو ببینید.(Ubuntu)

مالک شخصی(Owner) است که تمام قدرت را دارد. معمولاً آنها به هر فایل و دایرکتوری دسترسی کامل دارند و می توانند مجوزهای فایل سایر کاربران را نیز تغییر دهند.

گروه متشکل از تعدادی کاربر است(Group) که سطح معینی از دسترسی به فایل یا فهرستی که توسط مالک(Owner) ارائه شده است دارند. به عنوان مثال، گروهی از کاربران را می توان از اصلاح یک فایل محروم کرد، در حالی که به آنها اجازه دسترسی برای مشاهده آن فایل داده شد.

کلاس Others به ​​سادگی کاربران مهمان را نشان می دهد که در دو دسته دیگر قرار نمی گیرند. به طور پیش فرض، سطح دسترسی آنها معمولاً محدود است. این به مالک(Owner) است که تعیین کند کاربران مهمان چه کاری می توانند انجام دهند یا نمی توانند انجام دهند.

درک سطوح مجوز فایل(Understanding File Permission Levels)

به عنوان مالک(Owner) می توانید سه سطح دسترسی به فایل ها و دایرکتوری های خود اختصاص دهید:

  1. خواندن(Read) : دسترسی محدودی به یک فایل یا دایرکتوری به شما می دهد. تنها کاری که می توانید انجام دهید خواندن فایل یا مشاهده محتویات دایرکتوری است. نمی‌توانید فایل‌ها را ویرایش کنید، و نمی‌توانید فایل‌های جدیدی را به فهرست حذف یا اضافه کنید.
  2. Write : به شما امکان می‌دهد فایل‌ها را بخوانید و ویرایش کنید. اگر این سطح از دسترسی را به دایرکتوری اختصاص دهید، می توانید فایل ها را نیز حذف یا اضافه کنید.
  3. Execute : فقط هنگام اجرا یا اجرای فایل ها مهم است. برای مثال، نمی‌توانید یک اسکریپت یا یک برنامه را بدون اجازه اجرا اجرا(Execute) کنید.

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

نمادها(Symbols) و اعداد(Numbers) مجوز توضیح داده شده است

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

نمادهای مجوز فایل(File Permission Symbols)

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

ls -l

با استفاده از دستور cd(cd) می توانید به هر دایرکتوری بروید . اگر کاملا مبتدی هستید، مقاله ما را در مورد دستورات اصلی لینوکس(basic Linux commands) بررسی کنید .

در مثال ما، دایرکتوری شامل دو فهرست دیگر و یک فایل است. مجوزها با استفاده از (1+) 9 نماد نوشته شده اند که می توانند برای درک آسان تر به سه قلو تقسیم شوند. بیایید اولین مجموعه از مجوزها را برای فهرست Books بررسی کنیم :

drwxrwxr-x

بیایید آن را برای خوانایی تقسیم کنیم:

d rwx rwx rx

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

بعد، ما سه گروه از نمادها داریم. گروه اول نمایانگر سطوح مجوز مالک، گروه دوم برای کلاس Group و گروه سوم نشان دهنده سایرین است.

هر مجموعه از 3 نماد به معنای خواندن، نوشتن، اجرا - به ترتیب. بنابراین Owner اجازه خواندن، نوشتن و اجرای تمام فایل ها و دایرکتوری های موجود در دایرکتوری Test را دارد. در اینجا یک نمایش بصری وجود دارد:

وقتی به جای r، w یا x یک علامت خط تیره می بینید، به این معنی است که مجوز وجود ندارد.

شماره های مجوز فایل(File Permission Numbers)

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

  • اولین مورد برای صاحب فایل است.
  • مورد دوم نشان دهنده گروه فایل است.
  • رقم آخر برای بقیه است.

اعداد از 0 تا 7 متغیر هستند که در آن:

  • 4 = خواندن
  • 2 = نوشتن
  • 1 = اجرا
  • 0 = بدون اجازه

رقم مجوز هر کلاس با جمع کردن مقادیر مجوزها تعیین می شود. به عبارت دیگر، هر رقم برای هر کلاس می تواند مجموع 4، 2، 1 و 0 باشد. در اینجا لیست کاملی از مجوزها آمده است:

  • 0 (0 + 0 + 0) = کلاس کاربر هیچ مجوزی ندارد.
  • 1 (0 + 0 + 1) = فقط مجوز را اجرا کنید.(Execute)
  • 2 (0 + 2 + 0) = فقط اجازه نوشتن .(Write)
  • 3 (0 + 2 + 1) = مجوزهای نوشتن و اجرا.(Write)
  • 4 (4 + 0 + 0) = فقط مجوز خواندن .(Read)
  • 5 (4 + 0 + 1) = خواندن(Read) و اجرای مجوزها.
  • 6 (4 + 2 + 0) = مجوز خواندن و نوشتن.(Read)
  • 7 (4 + 2 + 1) = همه مجوزها.

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

اجازه 777

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

مجوز 777 اغلب به دلیل راحت بودن استفاده می شود، اما باید به قدری از آن استفاده کنید. در واقع، توصیه می کنیم هرگز از آن استفاده نکنید زیرا خطرات امنیتی بسیار زیاد است. یک کاربر غیرمجاز می تواند سیستم شما را به خطر بیندازد یا مثلاً وب سایت شما را برای توزیع بدافزار تغییر دهد.

در عوض باید مجوز 755 را بدهید. به این ترتیب، شما به عنوان مالک فایل به یک فایل یا دایرکتوری خاص دسترسی کامل دارید، در حالی که بقیه می توانند بخوانند و اجرا کنند، اما بدون تایید شما هیچ تغییری ایجاد نمی کنند.

تغییر مجوزهای فایل با (File)Chmod

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

نام فایل chmod 777(chmod 777 filename)

(Replace “)نام فایل را با نام فایل و مسیر آن جایگزین کنید .

به خاطر داشته باشید که تنها کاربرانی که قدرت تغییر مجوزهای فایل را دارند، کسانی هستند که دسترسی ریشه دارند، صاحبان فایل و هر کس دیگری که از قدرت sudo برخوردار است.(sudo)



About the author

من یک مهندس نرم افزار و وبلاگ نویس با نزدیک به 10 سال تجربه در این زمینه هستم. من در ایجاد بررسی ابزارها و آموزش‌ها برای پلتفرم‌های مک و ویندوز، و همچنین ارائه نظرات تخصصی درباره موضوعات توسعه نرم‌افزار تخصص دارم. من همچنین یک سخنران و مدرس حرفه ای هستم و در کنفرانس های فناوری در سراسر جهان ارائه کرده ام.



Related posts