آموزش رزبری پای

تنظیم سطح دسترسی برای فایل در رزبری پای

سیستم عامل رزبری پای که قبلا با نام Raspbian شناخته می شد، سیستم عامل رسمی Raspberry Pi است. این یک نسخه اصلاح شده از لینوکس دبیان است که ماهیت چند کاربره دارد. متأسفانه لینوکس خطر کاربران ناخواسته و نرم افزارهای مخرب را به همراه دارد. به عنوان یک مکانیسم امنیتی، لینوکس مجوزهای دسترسی به فایل را برای کنترل اینکه چه کسی می تواند یک فایل یا دایرکتوری خاص را بخواند، بنویسد و اجرا کند پیاده سازی می کند.

در این مقاله، نحوه تنظیم این مجوزها روی فایل ها با استفاده از رزبری پای را خواهیم دید.

کاربر روت (SUPERUSER)

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

در سیستم عامل Raspberry Pi، شما به صورت پیش فرض با نام کاربری “pi” وارد سیستم شده اید. امتیازات حساب pi معمولاً برای کار با وظایف اصلی کافی است. با این حال، گاهی اوقات، باید چیزی را تغییر دهید که بر کل رایانه تأثیر می گذارد. بهترین راه برای انجام این عملیات ها دسترسی کاربر روت از طریق دستور su و sudo است.

SU و SUDO

دستور su مخفف “کاربر جایگزین” است. هنگامی که اجرا می شود، به شما امکان می دهد کارهایی را در خط فرمان با امتیازات یک کاربر دیگر انجام دهید. دستور کامل عبارت است از:

su username

اگر بدون نام کاربری مشخص استفاده شود، su کاربر روت را در نظر میگیرد. علاوه بر این، می توانید یک – را قبل از وارد کردن نام کاربری برای گرفتن تنظیمات و امتیازات کاربر اضافه کنید. لطفاً توجه داشته باشید که برای تغییر به کاربر مشخص شده، ابتدا باید رمز عبور او را وارد کنید. پس از ورود به سیستم، یک شل موقت با امتیازات آن کاربر دارد و میتوانید دستورات را استفاده کنید. سپس، برای خروج از شل، به سادگی exit را در ترمینال تایپ کنید.

از سوی دیگر، می توانید از sudo یا “super user do” برای انجام اقدامات به عنوان کاربر روت استفاده کنید. درست مانند su، از شما یک رمز عبور برای احراز هویت می خواهد. پس از احراز هویت، می‌توانید از امتیازات کاربر هدف در هر عمل لذت ببرید

اکنون که با superuser و نحوه دسترسی به آن از طریق su و sudo آشنا شدیم، اجازه دهید به دسترسی ها در سطح فایل برویم.

مجوزهای کاربر

برای مشاهده مجوزهای فایل های داخل دایرکتوری فعلی خود، دستور ls -l را وارد کنید. این یک دستور لیست با سوئیچ -l است. با این دستور باید لیستی از تمام فایل ها و دایرکتوری های موجود در مکان فعلی خود را مشاهده کنید. مجوزهای فایل در جلوی هر آیتم قابل مشاهده است.

-rwxr-xr--

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

اولین کاراکتر می تواند a – یا d باشد. A – به این معنی است که آیتم یک فایل است در حالی که d به معنای دایرکتوری است. 9 مورد باقی مانده در واقع سه گروه سه کاراکتری هستند. این گروه‌ها به انواع کاربری‌ هایی اشاره می‌کنند که مجوزها برای آنها اعمال می‌شود.

  • کاربر – سه کاراکتر اول مجوزهای صاحب فایل را نشان می دهد.
  • گروه – سه کاراکتر بعدی برای گروهی از کاربران است.
  • دیگران – سه مورد آخر برای هر کس دیگری است که به رایانه دسترسی دارد.

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

  • خواندن – امکان مشاهده محتوای فایل یا دایرکتوری مشخص شده را می دهد
  • نوشتن – امکان تغییر یا حذف یک فایل یا دایرکتوری مشخص را می دهد
  • اجرا – اجازه می دهد تا یک فایل یا دایرکتوری مشخص را اجرا یا کپی کنید

اگر در بین سه کاراکتر a – باشد، به این معنی است که اعمال نمی شود، به این معنی که گروه کاربری که به آن تعلق دارد، مجوز انجام آن نوع عمل را ندارد.

اگر در مورد این مطلب سوالی دارید در قسمت نظرات بپرسید

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

تغییر مجوزهای فایل

برای تغییر مجوزهای فایل، به دستور chmod نیاز دارید که مخفف عبارت “change the mode” است. دستور عبارت است از:

chmod mode filename

تغییر مجوزهای فایل‌ها و پوشه‌های متعلق به شما نیازی به امتیازات کاربر root ندارد. فقط زمانی به آن نیاز دارید که با چیزهایی خارج از حساب خود کار می کنید. در این حالت می توانید از su یا sudo استفاده کنید.

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

فرمت نمادین

sudo chmod u-r filename.txt

قالب حالت نمادین از سه کاراکتر تشکیل شده است. اولین کاراکتر کاربر یا گروه کاربری هدف را مشخص می کند. جدول 1 چهار حرفی را نشان می دهد که هر گروه کاربری را نشان می دهد.

حرف معنی آن چیست
u کاربر فعلی
g گروه فایل
o دیگرانی که خارج از گروه مالک هستند
a همه

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

حرف معنی آن چیست
+ یک مجوز را اضافه/روشن می کند
یک مجوز را حذف/خاموش می کند
= مجوزهای فعلی را نادیده می گیرد و مجوزهای جدید ایجاد می کند

در نهایت، مجوزی را که می‌خواهید تغییر دهید مشخص می‌کنید. جدول 3 این موارد را نشان می دهد.

حرف عمل
r خواندن
w نوشتن
x اجرا کردن
X اجرا کردن برای پوشه ها

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

  • فقط زمانی می توانید محتویات یک پوشه را مشاهده کنید که مجوز اجرا داشته باشید. مجوز خواندن فقط با یک فایل کار می کند.
  • فقط در صورت داشتن مجوز اجرا می توانید نام فایل را تغییر دهید. اجازه نوشتن فقط به شما امکان می دهد محتوای یک فایل را تغییر دهید.
  • شما می توانید یک فایل کد را با استفاده از یک برنامه شخص ثالث تنها با مجوز خواندن اجرا کنید.

فرمت اکتال

راه دیگر نمایش مجوز فایل استفاده از فرمت octal است. همانطور که از نام آن پیداست، فرمت octal از سیستم شماره گذاری octal برای نشان دادن مجوزهای فایل در دستور chmod استفاده می کند.

جدول 4 عدد اکتالی معادل را برای هر ترکیبی از مجوز خواندن، نوشتن و اجرا نشان می دهد.

عدد خواندن نوشتن اجرا کردن
7 r w x
6 r w
5 r x
4 r
3 w x
2 w
1 x
0

 

به عنوان مثال، دستور نمادین معادل sudo chmod 4 filename برابر sudo chmod u+r است.

تغییر همه مجوزهای فایل در دایرکتوری

در نهایت، اگر می خواهید تمام مجوزهای داخل یک پوشه یا دایرکتوری را تغییر دهید، از سوئیچ بازگشتی یا -r استفاده کنید. تا زمانی که با هم تداخل نداشته باشد، می‌توانید آن را در هر جایی در قالب دستور chmod قرار دهید.

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

5 (1 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *