تساعدك حاسبة CHMOD على تحديد أذونات الوصول للملفات والمجلدات وضبطها بشكل صحيح وسريع في الأنظمة الشبيهة بـ Unix (مثل Linux و macOS و BSD). تقوم الأداة بتحويل الأذونات بين الصيغة الرمزية والصيغة الرقمية (الثُمانية)، وتعرض صلاحيات الوصول بصريًا، كما تنشئ أوامر جاهزة للاستخدام في الطرفية.
يُعد ذلك مهمًا بشكل خاص عند إدارة الخوادم، ونشر تطبيقات الويب، وخطوط CI/CD، والحاويات، وأنظمة التخزين.
ما هي أذونات CHMOD؟
في أنظمة Unix يتم تحديد الوصول إلى الملف لثلاث فئات من المستخدمين:
المستخدم (User — u): مالك الملف أو المستخدم المعيَّن
المجموعة (Group — g): المستخدمون المنتمون إلى مجموعة الملف
الآخرون (Others — o): جميع مستخدمي النظام الآخرين
يمكن لكل فئة الحصول على ثلاثة أنواع من الأذونات (r، w، x):
الإذن | الرمز | القيمة الثُمانية | للملفات | للمجلدات |
|---|
قراءة | r | 4 | قراءة محتوى الملف | عرض قائمة محتويات المجلد |
كتابة | w | 2 | تعديل الملف | إنشاء الملفات وحذفها وإعادة تسميتها |
تنفيذ | x | 1 | تشغيل كبرنامج أو سكربت | الدخول إلى المجلد (cd) والوصول إلى محتوياته |
بدون إذن التنفيذ (x) يصبح المجلد غير قابل للوصول فعليًا — حتى لو كان إذن القراءة (r) متاحًا.
يتم جمع القيم للحصول على الرقم النهائي للأذونات لكل فئة مستخدمين.
مرجع قيم الأذونات
مستوى الوصول | الصيغة الرمزية | العملية الحسابية | القيمة الثُمانية |
|---|
وصول كامل | rwx | 4+2+1 | 7 |
قراءة وكتابة | rw- | 4+2 | 6 |
قراءة وتنفيذ | r-x | 4+1 | 5 |
قراءة فقط | r-- | 4 | 4 |
كتابة وتنفيذ | -wx | 2+1 | 3 |
كتابة فقط | -w- | 2 | 2 |
تنفيذ فقط | --x | 1 | 1 |
بدون وصول | --- | 0 | 0 |
إعدادات الأذونات الشائعة
حالة الاستخدام | الصيغة الرمزية | القيمة الثُمانية |
|---|
وصول كامل (غير مُوصى به) | rwxrwxrwx | 777 |
مجلدات مشتركة لمجموعة | rwxrwxr-x | 775 |
ملفات مشتركة لمجموعة | rw-rw-r-- | 664 |
مجلدات وسكربتات خاصة | rwx------ | 700 |
ملفات خاصة (مفاتيح SSH، كلمات المرور) | rw------- | 600 |
مجلدات وسكربتات قابلة للتنفيذ | rwxr-xr-x | 755 |
ملفات ويب قياسية (HTML، CSS، الصور) | rw-r--r-- | 644 |
خيارات تنسيق الإخراج
عند تشغيل أمر chmod يمكنك التحكم في طريقة عرض النتائج:
Verbose (-v) — وضع مفصّل يعرض التغييرات لكل ملف تمت معالجته
Changes (-c) — عرض الملفات التي تغيّرت أذوناتها فعليًا فقط
Silent (-f) — وضع صامت يُخفي رسائل الأخطاء (مثل رفض الوصول أو عدم وجود الملف)
Default — الوضع الافتراضي، يعرض الرسائل الحرجة فقط (مثل الأخطاء) دون تفاصيل عن العمليات الناجحة
خيارات تطبيق الأذونات
تتحكم هذه الإعدادات في كيفية ومكان تطبيق الأذونات:
Recursive (-R) — تطبيق الأذونات على المجلد وجميع محتوياته، بما في ذلك المجلدات الفرعية والملفات والروابط الرمزية (قد يختلف السلوك حسب النظام)
Reference File (--reference=FILE_NAME) — نسخ الأذونات من ملف موجود بدلًا من تحديد وضع رقمي يدويًا
بنود الإذن الخاص:
Setuid (+s للمالك). يعمل الملف التنفيذي بصلاحيات مالك الملف بدلاً من المستخدم الذي قام بتشغيله.
Setgid (+g). يختلف سلوكه حسب نوع الكائن: بالنسبة للملفات (يعمل الملف التنفيذي بصلاحيات مجموعة الملف)، وبالنسبة للمجلدات (ترث الملفات المُنشأة حديثًا مجموعة المجلد، مما يُسهّل التعاون بين أعضاء الفريق).
Sticky Bit (+t). يُستخدم بشكل أساسي في المجلدات المشتركة. يسمح للمستخدمين بحذف أو إعادة تسمية الملفات التي يملكونها فقط (يُستخدم عادةً في /tmp).