دروس الوحدة (1/2)
إدارة الأذونات (chmod)
في Linux، يتم تنظيم الوصول إلى الملفات والأدلة من خلال نظام الأذونات. ينتمي كل ملف/دليل إلى مستخدم مالك ومجموعة من المستخدمين.
تنقسم الأذونات إلى ثلاث فئات من المستلمين:
- المستخدم (u): مالك الملف.
- المجموعة (ز): أعضاء المجموعة المرتبطة بالملف.
- الآخرون (س): كل شخص آخر في النظام.
لكل فئة، هناك ثلاثة أنواع من الإجراءات المسموح بها أو المرفوضة:
- قراءة (ص): عرض محتويات الملف أو قائمة محتويات الدليل.
- كتابة (w): تحرير الملف أو إنشاء/حذف الملفات في الدليل.
- التنفيذ (x): قم بتشغيل ملف (مثل برنامج نصي) أو أدخل دليلاً.
التدوين النموذجي الموضح بواسطة ls -l: -rwxr-xr-x.
يشير الحرف الأول إلى النوع (على سبيل المثال - للملف، d للدليل)، متبوعًا بثلاثة توائم لـ user، group، وothers.
تغيير الأذونات: chmod
يسمح لك الأمر chmod (وضع التغيير) بتعديل أذونات الملف. هناك طريقتان رئيسيتان لتحديدهما:
1. الوضع الرمزي
يستخدم الحروف وعوامل التشغيل (+، -، =) لإضافة الأذونات أو إزالتها أو تعيينها:
chmod u+x script.sh # Adds execute permission (x) to the owner (u)
chmod g-w file.txt # Removes write permission (w) from the group (g)
chmod a+r file.txt # Makes the file readable by everyone (all: u, g, o)2. الوضع الثماني (رقمي)
يستخدم ثلاثة أرقام ثمانية من 0 إلى 7، حيث يمثل كل رقم مجموع أذونات الفئة (r=4، w=2، x=1):
- محمي_INLINE_15 = محمي_INLINE_16 (4 + 2 + 1)
- محمي_INLINE_17 = محمي_INLINE_18 (4 + 2)
5=r-x(4 + 1)- محمي_INLINE_21 = محمي_INLINE_22 (4)
0=---(لا توجد أذونات)
chmod 755 script.sh # Owner: rwx (7), Group: r-x (5), Others: r-x (5)
chmod 600 private.key # Owner: rw- (6), Group: --- (0), Others: --- (0)جربه بنفسك
التمرين 1: قم بتعيين الأذونات القياسية
قم بتعيين الأذونات على "script.sh" حتى يتمكن المالك من القراءة والكتابة والتنفيذ (rwx)، بينما يمكن للمجموعة والآخرين القراءة والتنفيذ فقط (r-x). استخدم الوضع الثماني.
إظهار التلميح
الرمز الثماني لـ rwx هو 7 (4+2+1)، وللـ r-x هو 5 (4+1). وبالتالي استخدم chmod 755.
الحل متاح بعد 3 من المحاولات
التمرين 2: حماية المفتاح الخاص
قم بتعديل أذونات الملف "private.key" لجعله قابلاً للقراءة والكتابة (rw-) من قبل المالك فقط، وإزالة جميع حقوق الوصول للمجموعة والآخرين (---).
إظهار التلميح
استخدم chmod بالرمز الثماني 600 (المالك لديه 4+2، المجموعة 0، والبعض الآخر 0).
الحل متاح بعد 3 من المحاولات
التمرين 3: إنشاء ملف قابل للتنفيذ للجميع
اجعل الملف "runner.sh" قابلاً للتنفيذ لجميع فئات المستخدمين باستخدام الوضع الرمزي (a+x).
إظهار التلميح
استخدم بناء الجملة chmod a+x متبوعًا باسم الملف.
الحل متاح بعد 3 من المحاولات