شارح صلاحيات Linux
شارح مرئي لصلاحيات الملفات في Linux بالترميز الرقمي (الثماني) والرمزي مع مربعات اختيار تفاعلية وعرض أمر chmod
الإدخال
الإخراج
ملف القراءة
ما هي صلاحيات الملفات في Linux؟
تتحكم صلاحيات الملفات في Linux في من يمكنه قراءة الملف أو الكتابة فيه أو تنفيذه، سواء أكان ملفاً أم مجلداً. لكل ملف في Linux ثلاث مجموعات من الصلاحيات: المالك (المستخدم الذي أنشأه)، والمجموعة (المستخدمون الذين يشتركون في مجموعة واحدة)، والآخرون (جميع المستخدمين الآخرين). يمكن منح كل مجموعة ثلاثة أنواع من الوصول: القراءة (r)، والكتابة (w)، والتنفيذ (x).
يمكن التعبير عن الصلاحيات بطريقتين. الترميز الرمزي يستخدم أحرفاً مثل rwxr-xr-x، حيث يمثل كل حرف صلاحية محددة لمجموعة معينة. الترميز الثماني (الرقمي) يستخدم رقماً مكوناً من ثلاثة أو أربعة أرقام مثل 755، حيث يمثل كل رقم مجموع قيم الصلاحيات: القراءة = 4، الكتابة = 2، التنفيذ = 1.
يمثل الرقم الأول الاختياري في الترميز الثماني البتات الخاصة: setuid (4)، وsetgid (2)، والـ sticky bit (1). يتيح setuid تشغيل البرنامج بصلاحيات مالك الملف، ويجعل setgid الملفات الجديدة ترث مجموعة المجلد الأصلي، بينما يمنع الـ sticky bit المستخدمين من حذف الملفات التي لا يمتلكونها في المجلدات المشتركة.
وصف الأداة
تتيح لك هذه الأداة إنشاء صلاحيات ملفات Linux وفك ترميزها بشكل تفاعلي. قم بتفعيل مربعات الاختيار الخاصة بالمالك والمجموعة والآخرين لتعيين علامات القراءة والكتابة والتنفيذ، وشاهد النتيجة فوراً في كلٍّ من الترميز الثماني والرمزي. يمكنك أيضاً كتابة قيمة ثمانية مثل 755 أو سلسلة رمزية مثل rwxr-xr-x مباشرةً، وسيتم تحديث مربعات الاختيار والمخرجات المرئية تلقائياً. يسهّل العرض المرئي المرمّز بالألوان فهم الصلاحيات النشطة بنظرة واحدة، كما يتم توليد أمر chmod جاهز للاستخدام تلقائياً.
أمثلة
| الثماني | الرمزي | المعنى |
|---|---|---|
| 755 | -rwxr-xr-x | المالك: وصول كامل. المجموعة والآخرون: قراءة وتنفيذ. |
| 644 | -rw-r--r-- | المالك: قراءة وكتابة. المجموعة والآخرون: قراءة فقط. |
| 700 | -rwx------ | المالك: وصول كامل. لا وصول للمجموعة أو الآخرين. |
| 777 | -rwxrwxrwx | وصول كامل للجميع. |
| 1755 | -rwxr-xr-t | مثل 755 مع تفعيل الـ sticky bit. |
| 4755 | -rwsr-xr-x | مثل 755 مع تفعيل بت setuid. |
المميزات
- تفعيل صلاحيات القراءة والكتابة والتنفيذ بشكل منفرد لكل مجموعة عبر مربعات الاختيار
- إدخال الترميز الثماني (مثل
755) أو الرمزي (مثلrwxr-xr-x) مباشرةً ومشاهدة التحويل الفوري - كتل مرئية مرمّزة بالألوان للتعرف السريع على الصلاحيات النشطة
- دعم بتات الصلاحيات الخاصة: setuid وsetgid والـ sticky bit
- توليد أمر
chmodتلقائياً جاهز للنسخ والاستخدام في الطرفية
حالات الاستخدام
- إعداد خادم ويب: تحديد مجموعة الصلاحيات الصحيحة للملفات التي يخدمها Apache أو Nginx بسرعة، مثل
644للملفات الثابتة و755للسكريبتات القابلة للتنفيذ. - تشخيص أخطاء رفض الوصول: الصق سلسلة الصلاحيات من مخرجات
ls -lلفهم أي مجموعة تفتقر إلى الوصول بشكل مرئي. - تعلم صلاحيات Linux: استكشف بشكل تفاعلي كيف يؤثر تفعيل العلامات الفردية على الترميزين الثماني والرمزي.
آلية العمل
لكل نوع من أنواع الصلاحيات وزن رقمي: القراءة = 4، الكتابة = 2، التنفيذ = 1. الرقم الثماني لكل مجموعة هو مجموع أوزان الصلاحيات الممكّنة. على سبيل المثال، القراءة + التنفيذ = 4 + 1 = 5. يجمع الترميز الثماني الكامل الأرقام الخاصة بالمالك والمجموعة والآخرين — وبذلك يصبح rwxr-xr-x هو 755.
تضيف البتات الخاصة رقماً أولياً اختيارياً يُحسب بالطريقة ذاتها: setuid = 4، وsetgid = 2، والـ sticky = 1. تعني القيمة 1755 الـ sticky bit (1) مع المالك=7، والمجموعة=5، والآخرين=5.
شرح الخيارات
- مربعات اختيار المالك / المجموعة / الآخرين: تفعيل القراءة (r) والكتابة (w) والتنفيذ (x) لكل مجموعة صلاحيات بشكل مستقل.
- Setuid: عند تعيينه على ملف قابل للتنفيذ، يعمل بصلاحيات مالك الملف بدلاً من صلاحيات المستخدم المُشغِّل.
- Setgid: على المجلد، ترث الملفات الجديدة مجموعة المجلد. على الملف القابل للتنفيذ، يعمل بصلاحيات مجموعة الملف.
- Sticky bit: على المجلد، لا يستطيع سوى مالك الملف حذف الملفات الموجودة داخله أو إعادة تسميتها، حتى لو كان للآخرين صلاحية الكتابة.
- الإدخال الثماني: اكتب رقماً ثمانياً مكوناً من 3 أو 4 أرقام لتعيين جميع الصلاحيات دفعةً واحدة.
- الإدخال الرمزي: اكتب سلسلة رمزية مكونة من 9 أو 10 أحرف (مع بادئة نوع الملف الاختيارية) لتعيين الصلاحيات.
الأسئلة الشائعة
ماذا يعني chmod 777؟ يمنح صلاحيات القراءة والكتابة والتنفيذ للمالك والمجموعة وجميع المستخدمين الآخرين. يُعدّ هذا الإعداد غير آمن بشكل عام في بيئات الإنتاج.
ما الفرق بين الحرف s الصغير والحرف S الكبير؟
الحرف الصغير s يعني أن بت التنفيذ والبت الخاص (setuid أو setgid) كلاهما مفعّلان. أما الحرف الكبير S فيعني أن البت الخاص فقط هو المفعّل، دون صلاحية التنفيذ.
ما الغرض من الـ sticky bit؟
يُعيَّن الـ sticky bit عادةً على المجلدات المشتركة مثل /tmp لمنع المستخدمين من حذف ملفات بعضهم البعض أو إعادة تسميتها، حتى وإن كان لديهم صلاحية الكتابة على المجلد.