مُحَدِّث صلاحيات مُسمَّيات ملفات يونكس دون تذكّر العشري

نُشرت في
مُحَدِّث صلاحيات: صلاحيات يونكس دون تذكّر العشري 1
إعلان · حذف؟

تُسبب صلاحيات يونكس صعوبة لمعظم الناس في وقت ما. النتائج المُضللة rwxr-xr-x في ls -la العدد الثلاثي العشري، الفرق بين chmod, chownو، و chgrp — من الصعب تذكره في الذهن. هذا مرجع يمكنك تثبيته كمُراجع.

إذا كنت بحاجة إلى حساب قيمة الآن، استخدم مُحَدِّث صلاحيات — اختر الصلاحيات بصرية وستُولَد التمثيل العشري أو التمثيل التمثيلي الصحيح.

نموذج الصلاحيات

يملك كل ملف أو مجلد مجموعات صلاحيات ثلاثية:

  • المُلكي (u) — المستخدم الذي يملك الملف
  • المجموعة (g) — أعضاء المجموعة المُخصصة للملف
  • الآخرين (o) — الجميع غير المُذكور

تُمنح كل مجموعة ثلاث مُتّسِعات: القراءة (r = 4), الكتابة (w = 2), التنفيذ (x = 1)أضفها معًا لتحديد القيمة العشريّة للنظام. إذًا rwx = 4+2+1 = 7, r-x = 4+0+1 = 5, r-- = 4+0+0 = 4.

مثلاً مثل 755 تعني: يحصل المُلكي على 7 (rwx)، يحصل المجموعة على 5 (r-x)، يحصل الآخرون على 5 (r-x).

قراءة مخرجات ls -la

-rwxr-xr-x 1 thien www-data 4096 Apr 10 10:00 deploy.sh
drwxr-x--- 2 thien www-data 4096 Apr 10 09:00 private/

الرقم الأول هو نوع الملف: - للملف العادي، d للمجلد، l للمُسَمّي. الأحرف التالية التسعة هي المجموعات الثلاثية للصلاحيات، ترتيبها: المُلكي، المجموعة، الآخرون، كل مجموعة تُمثل 3 أحرف.

القيم الشائعة لـ chmod

قيمةمالكمجموعةآحرونالاستخدام الشائع
644rw-r–r–ملفات ويب (HTML، CSS، PHP)
755rwxr-xr-xالمجلدات، السيناريوهات المُدمجة
600rw-مفاتيح SSH، ملفات التكوين الخاصة
640rw-r–ملفات تكوين (قابلة للقراءة للمجموعة)
664rw-rw-r–ملفات مشاركة في المشروع
700rwxالسكريبتات الخاصة
777rwxrwxrwxلا تستخدم — تمنح الجميع التحكم الكامل

لماذا 777 خاطئ

chmod 777 هي حل شائع يُستخدم لاحقًا ويُبقى دائمًا. تمنح كل مستخدم في النظام — وخصوصًا في السياقات الويب، أي عملية PHP — حق الكتابة على ملفاتك. في خادم مشاركة، هذا فتحة أمنية. في خادم VPS، هذا سلوك غير مهني. احلل المشكلة الحقيقية للملكية باستخدام chown بدلاً من.

الفرق بين chmod و chown و chgrp

أوامرما يُغيّر
chmodالصلاحيات الخاصة بالقراءة والكتابة والتنفيذ على الملف
chownالمستخدم (وإذا لزم الأمر، المجموعة) الذي يملك الملف
chgrpالمجموعة التي يملكها الملف
chmod 644 index.php           # Set permissions
chown www-data:www-data .    # Change owner and group
chgrp developers config.yml  # Change group only

مُتَّسِع الربط (Sticky Bit)، مُتَّسِع مُلكية المُستخدم (setUID)، مُتَّسِع مُلكية المجموعة (setGID)

تُمثل هذه بحروف عشريّة أربعية (كمُقدّمة) أو بتعويضات أحرف في التمثيل التمثيلي.

  • مُتَّسِع الربط (1 / t) — في المجلدات، فقط المُلكي يستطيع حذف ملفاته الخاصة. يستخدم في /tmp.
  • مُتَّسِع مُلكية المُستخدم (4 / s على المُلكي x) — يُشغل الملف كمُلكه، وليس كمُستخدم التثبيت. يستخدم في sudo و passwd.
  • مُتَّسِع مُلكية المجموعة (2 / s على المجموعة x) — على الملفات: يُشغل بملف المجموعة. على المجلدات: يُرث المجموعة الجديدة من المجلد، وهو مفيد في مشاركة مشاريع.
chmod +t /shared/dir          # Add sticky bit
chmod 1755 /shared/dir        # Sticky bit + standard 755
chmod g+s /var/www/project/   # setGID on a directory

في ls -l مخرجات، مُتَّسِع مُلكية المجموعة على مجلد يُظهر كـ drwxrwsr-x؛ مُتَّسِع الربط يُظهر كـ drwxrwxrwt.

الصلاحيات المتكررة: احذر من استخدام -R

chmod -R تُطبّق الصلاحيات على المجلد وكل شيء داخله. الخطأ الشائع: استخدام 755 يُمنح حق التنفيذ على كل الملفات أيضًا، حتى لو لم يكن مطلوبًا. نهج أمن أكثر يُفصل بين المجلدات والملفات:

# Apply 755 to directories, 644 to files
find /var/www/html -type d -exec chmod 755 {} \;
find /var/www/html -type f -exec chmod 644 {} \;

حل مشكلات الصلاحيات الشائعة

# Web server can't read your files (403 Forbidden)
chown -R www-data:www-data /var/www/html
find /var/www/html -type d -exec chmod 755 {} \;
find /var/www/html -type f -exec chmod 644 {} \;

# SSH key refused (WARNING: UNPROTECTED PRIVATE KEY FILE)
chmod 600 ~/.ssh/id_rsa
chmod 644 ~/.ssh/id_rsa.pub
chmod 700 ~/.ssh

# Script won't execute (Permission denied)
chmod +x deploy.sh

# PHP can't write to uploads directory
chown www-data:www-data wp-content/uploads
chmod 755 wp-content/uploads

تجاوز الحساب الذهني

التحويل rwxr-x--- ل 750 في ذهنك ممكن، لكنه مرهق. المُحَدِّث مُحَدِّث صلاحيات في IO Tools يُمكنك تغيير الصلاحيات بصرية ويعكس فورًا القيمة العشريّة والتمثيل التمثيلي — مفيد عند الحاجة للتأكد قبل تنفيذ chmod -R على مجلد إنتاجي.

هل تريد حذف الإعلانات؟ تخلص من الإعلانات اليوم

تثبيت ملحقاتنا

أضف أدوات IO إلى متصفحك المفضل للوصول الفوري والبحث بشكل أسرع

أضف لـ إضافة كروم أضف لـ امتداد الحافة أضف لـ إضافة فايرفوكس أضف لـ ملحق الأوبرا

وصلت لوحة النتائج!

لوحة النتائج هي طريقة ممتعة لتتبع ألعابك، يتم تخزين جميع البيانات في متصفحك. المزيد من الميزات قريبا!

إعلان · حذف؟
إعلان · حذف؟
إعلان · حذف؟

ركن الأخبار مع أبرز التقنيات

شارك

ساعدنا على الاستمرار في تقديم أدوات مجانية قيمة

اشتري لي قهوة
إعلان · حذف؟