Amirhoseinsohrabi
Amirhoseinsohrabi
خواندن ۳ دقیقه·۲ سال پیش

راهنمای تکمیلی در خصوص سطح دسترسی ها در سیستم عامل گنولینوکس


سلام به همگی

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

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

که مخفف هرکدوم هم به شکل زیر هست.

read == r

write == w

execute == x

همیشه این سه کاراکتر به ترتیب پشت سرهم میان.

rwx

  • سه کاراکتر اول از سمت چپ مربوط به سطح دسترسی مالک فایل هست.
  • سه کاراکتر وسط مربوط به سطح دسترسی گروه هاست.
  • سه کاراکتر آخر مربوط به سطح دسترسی کاربران عادی هست.

به عنوان یک نمونه به خروجی زیر دقت کنید.

rwxr-xr-x

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



  • بریم واسه ایجاد یه فایل و اعمال تغییرات روی اون

touch amir.txt

  • در بالا میبینین که سطح دسترسی ها برای مالک گروه وباقی یوزر ها به شکل زیر هست
  • مالک فایل : سطح دسترسی خواندن و اعمال تغییرات
  • گروه ها : سطح دسترسی خواندن و اعمال تغییرات
  • باقی یوزر ها :سطح دسترسی خواندن


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

  • استفاده از کد اکتال و استفاده از نماد های خاص

اما قبل از اونکه برین سراغ تغییر باید کد باینری یا اکتال هرکدوم از سطح دسترسی ها رو بدونین.

کد اکتال هرکدوم از سطح دسترسی ها به شکل زیر هست.

  • r = 4
  • w = 2
  • x = 1

همچنین نماد هرکدوم از سطح دسترسی ها به شکل زیر هست.

  • r = r
  • w = w
  • x = x
  • یه نکته ای لازم هست بدونین و اونم اینه که هنگام اعمال سطح دسترسی ها به شکل نماد ها باید به شکل دقیق بگین که برای گروه ها میخواین اعمال کنین یا مالک یا باقی یوزر ها ، درصورتی که هنگام استفاده از کداکتال ماجرا فرق داره.

برای اعمال سطح دسترسی ها به مالک فایل : u

برای اعمال سطح دسترسی ها به گروه ها : g

برای اعمال سطح دسترسی ها به باقی یوزرها : o




  • برای نمونه اگه خواستید به مالک فایل سطح دسترسی خواندن و نوشتن بدین و گروه ها هیچی ندین و همچنین به باقی یوزر ها هم دسترسی خواندن بدین کد شما با استفاده از نماد ها به شکل زیر هست
  • u+rw-x,g-rwx,o+r

همچنین اگه خواستید واسه همه یه سطح دسترسی رو اعمال کنید یعنی همه دسترسی خواندن و نوشتن داشته باشن کد رو به شکل زیر تغییر میدین

  • ugo+rw-x




  • قبل از تغییر سطح دسترسی با استفاده از کد اکتال به عکس زیر دقت کنید.
  • نحوه تغییر سطح دسترسی با استفاده از کد اکتال
  • اگه خواستید سطح دسترسی رو برای یه فایل تغییر بدید مثلا میخواستید که مالک فایل هم بتونه بخونه و هم بتونه فایلو ادیت کنه ، کافیه کد اکتال این دو تا سطح دسترسی رو با هم جمع کنیم. کد سطح دسترسی خواندن ۴ بود و کد سطح دسترسی نوشتن ۲، جمع این دو عدد میشه ۶ پس ما باید کد ۶ رو برای اعمال این سطح دسترسی به ابزار chmod بدیم.
  • بریم واسه اعمال تغییرات
  • میخوایم سطح دسترسی رو جوری اعمال کنیم که مالک فایل هم بتونه بخونه هم بتونه بنویسه و هم بتونه فایل رو اجرا کنه. و بقیه هیچ سطح دسترسی نداشته باشن.
  • خوب کد سطح دسترسی خواندن ۴ هست کد سطح دسترسی نوشتن هم ۲ و کد سطح دسترسی اجرایی شدن فایل هم ۱ هست. جمع این سه تا میشه ۷ . واسه بقیه هم گفتیم که هیچ دسترسی نمیخوایم داشته باشن. پس به ازای هرکدوم از اون گروه ها یدونه ۰ میزاریم .
  • کد سطح دسترسی ما میشه ۷۰۰


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

  • sudo chmod 700 amir.txt

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

  • sudo chmod 111000000

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

  • با استفاده از علامت پلاس + سطح دسترسی ها اضافه و با استفاده از علامت منفی - سطح دسترسی ها کسر میشن.
  • sudo chmod u+rwx,g-rwx,o-rwx amir.txt

بازم اگه سوالی بود بپرسید

عشق هستید و ماندگار

python developer
شاید از این پست‌ها خوشتان بیاید