دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۰
  • اسفند

جلسه ۰۴-۰۱ : مدهای دسترسی و سطح دسترسی فایل در یونیکس (UNIX)

  • دسته‌بندی‌ها :
جلسه ۰۴-۰۱ : مدهای دسترسی و سطح دسترسی فایل در یونیکس (UNIX)
    • جزئیات
    • نوع محتواآموزشی

      دوستان و علاقمندان به مباحث آموزش یونیکس (UNIX) ، این آموزش را از سایت پی وی لرن دنبال خواهیم نمود. مدهای دسترسی و سطوح دسترسی فایل در یونیکس (UNIX) را در این بخش از آموزش مورد بررسی قرار خواهیم داد. این بخش در دو جلسه تنظیم شده است. با ادامه ی آموزش یونیکس همراه باشید.

      مدهای دسترسی و سطوح دسترسی فایل در یونیکس (UNIX)

      در این بخش، در مورد جزئیات مدهای دسترسی و سطوح دسترسی فایل در یونیکس (UNIX) به تفصیل صحبت خواهیم کرد. مالکیت فایل (File ownership) یکی از مؤلفه های مهم یونیکس است که روشی مطمئن برای ذخیره سازی فایل ها را فراهم می کند. هر فایل در یونیکس ویژگی های زیر را دارد.

      سطوح دسترسی مالک (Owner permissions) – سطوح دسترسی مالک مشخص می کند که صاحب فایل می تواند چه کارهایی را روی فایل انجام دهد.

      سطوح دسترسی گروه (Group permissions) – سطوح دسترسی گروه مشخص می كنند، كاربری كه عضو گروهی است كه یك فایل به آن تعلق دارد چه فعالیت هایی را بر روی فایل، می تواند انجام دهد.

      سطوح دسترسی دیگران (world) – سطوح دسترسی برای دیگران نشان می دهد که کاربران دیگر چه کارهایی می توانند روی فایل انجام دهند.

      شاخص های سطوح دسترسی

      در حین این که از دستور ls -l استفاده می کند ، اطلاعات مختلف مربوط به سطوح دسترسی فایل را به شرح زیر نمایش می دهد.

      مثال : 

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

      سطوح دسترسی به گروه های سه تایی تقسیم می شوند و هر موقعیتی در این گروه از یک سطح دسترسی خاص حکایت می کند ، به این ترتیب: (read (r), write (w), execute (x)

      سه کاراکتر اول (۴-۲) سطوح دسترسی مربوط به مالک فایل را نشان می دهند. به عنوان مثال ، –rwxr-xr- نشان می دهد که مالک اجازه ی (read (r), write (w و (execute (x را دارد.

      گروه دوم از سه کاراکتر (۷-۵) شامل سطوح دسترسی برای گروهی است که فایل به آن تعلق دارد. به عنوان مثال ، –rwxr-xr- نشان می دهد که گروه مجوز (read (r و (execute (x را دارد، اما اجازه نوشتن (write) ندارد.

      آخرین گروه از سه کاراکتر (۱۰-۸) نشانگر کاراکتر هر کس دیگری است. به عنوان مثال ، –rwxr-xr- نشان می دهد که فقط سطوح دسترسی (read (r وجود دارد.

      مدهای دسترسی فایل

      سطح های دسترسی فایل اولین خط دفاعی در امنیت سیستم یونیکس می باشند. بلوک های اساسی ساختمانی سطوح دسترسی یونیکس، سطح دسترسی خواندن ، نوشتن و پیاده سازی آن هاست که در زیر توضیح داده شده است.

      خواندن (Read)

      امکان خواندن ، یعنی مشاهده محتوای فایل را می دهد.

      نوشتن (Write)

      امکان اصلاح یا حذف محتوای فایل را اعطا می کند.

      پیاده سازی یا اجرا کردن (Execute)

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

      مدهای دسترسی دایرکتوری

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

      خواندن (Read)

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

      نوشتن (Write)

      دسترسی بدان معنی است که کاربر می تواند فایل ها را از دایرکتوری اضافه یا حذف کند.

      پیاده سازی یا اجرا کردن (Execute)

      اجرای دایرکتوری واقعاً منطقی نیست.

      برای اجرای ls یا دستور cd ، کاربر باید دسترسی به دایرکتوری bin را داشته باشد.

      مدهای دسترسی و سطوح دسترسی فایل در یونیکس (UNIX) را با مبحث تغییر سطوح دسترسی ادامه می دهیم.

      تغییر سطوح دسترسی

      برای تغییر فایل یا سطوح دسترسی دایرکتوری ، از دستور chmod (تغییر حالت) استفاده می کنید. دو روش برای استفاده از chmod وجود دارد. حالت نمادین و حالت مطلق (symbolic mode و absolute mode).

      استفاده از chmod در Symbolic Mode

      آسان ترین راه برای مبتدیان برای تغییر سطوح دسترسی فایل یا دایرکتوری ، استفاده از حالت نمادین (Symbolic) است. با سطوح دسترسی Symbolic می توانید مجموعه جدول مورد نظر خود را با استفاده از عملگرها در جدول زیر اضافه ، حذف یا مشخص کنید.

      ردیف عملگر Chmod و شرح
      ۱+

      سطوح دسترسی تعیین شده را به یک فایل یا دایرکتوری اضافه می کند.

       

      ۲

      سطوح دسترسی (های) تعیین شده را از یک فایل یا دایرکتوری حذف می کند.

       

      ۳=

      سطوح دسترسی (های) تعیین شده را تنظیم می کند.

      در این جا مثالی با استفاده از testfile آورده شده است. اجرای ls-1 روی testl نشان می دهد که سطوح دسترسی فایل به شرح زیر است.

      مثال : 

      سپس دستور chmod هر مثال، از جدول قبل روی testfile اجرا می شود و به دنبال آن ls –l است ، بنابراین می توانید تغییرات سطوح دسترسی را ببینید.

      مثال : 

      در این جا چگونه می توانید این دستورات را در یک خط واحد ترکیب کنید. به روش نوشتن کد توجه نمایید.

      مثال : 

      استفاده از chmod با سطوح دسترسی مطلق (Absolute)

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

      همان طور که در جدول زیر نشان داده شده است ، به هر سطح دسترسی یک مقدار اختصاص داده می شود ، و در کل هر مجموعه از سطوح دسترسی، شماره یا عددی را برای آن مجموعه ارائه می دهد.

      شمارهOctal نمایش سطوح دسترسی اکتال (Octal)Ref
      ۰بدون سطح دسترسی
      ۱سطح دسترسی پیاده سازی و اجرا (Execute)–x
      ۲سطح دسترسی Write-w-
      ۳سطح دسترسی Write و Execute یا اجرا : ۲ (execute) 1 + (write) برابر یا ۳-wx
      ۴سطح دسترسی Readr–
      ۵سطح دسترسی Execute و Read  یا خواندن: ۱ (read)4  + (execute) برابر با ۵r-x
      ۶سطح دسترسی Read و Write یا نوشتن : ۲ (read)4  + (Write ) برابر با ۶rw-
      ۷تمام سطوح دسترسی All permissions: 4 (read) + 2 (write) + 1 (execute) = 7rwx

      در این جا مثالی با استفاده از testfile آورده شده است. اجرای ls-1 روی testl نشان می دهد که سطوح دسترسی فایل به شرح زیر می باشد.

      مثال : 

      سپس هر دستور chmod از جدول قبل روی testfile اجرا می شود و به دنبال آن ls –l است ، بنابراین می توانید تغییرات سطوح دسترسی را ببینید.

      مثال : 

      ادامه ی مدهای دسترسی و سطوح دسترسی فایل در یونیکس (UNIX) را در جلسه ی آینده بررسی می کنیم.

      کلام پایانی

      متشکریم از این که با مبحث مدهای دسترسی و سطوح دسترسی فایل در یونیکس (UNIX) همراه بودید. در این بخش با تا حدودی با مدهای دسترسی و سطوح دسترسی فایل در یونیکس (UNIX) آشنا شدیم. در بخش بعدی نیز این مبحث را ادامه خواهیم داد و تغییر مالکیت ها را به همراه توضیحاتی راجع به ، سطح دسترسی فایل SUID و SGID خواهیم داشت. با جلسات آموزشی یونیکس و وب سایت آموزشی پی وی لرن همراه باشید.

      QR:  جلسه ۰۴-۰۱ : مدهای دسترسی و سطح دسترسی فایل در یونیکس (UNIX)
      به اشتراک بگذارید