🔧Toolify

حاسبة صلاحيات Unix (chmod)

حاسبة chmod تفاعلية. حدد أو أزل تحديد أعلام الصلاحيات للمالك والمجموعة والآخرين، واحصل على الرقم الثماني والتمثيل الرمزي في الوقت الفعلي. أو اكتب رقماً ثمانياً لفك شفرته.

tools.unix-permissions-calculator.input.symbolic
rwxr-xr-x
tools.unix-permissions-calculator.label.readtools.unix-permissions-calculator.label.writetools.unix-permissions-calculator.label.executeOct
tools.unix-permissions-calculator.label.owner7
tools.unix-permissions-calculator.label.group5
tools.unix-permissions-calculator.label.other5
755= 755
tools.unix-permissions-calculator.label.ownertools.unix-permissions-calculator.label.grouptools.unix-permissions-calculator.label.other

الإعدادات الشائعة

chmod 755 filename

كيف تعمل

أصل الترقيم الثماني في صلاحيات Unix

صُمِّمت صلاحيات ملفات Unix على يد كين تومبسون عام 1969 ضمن نظام Unix الأصلي على جهاز PDP-7. يخزن كل ملف تسعة أعلام صلاحيات في inode الخاص به: ثلاثة للمالك، وثلاثة للمجموعة، وثلاثة للبقية. تجميع كل ثلاثي من الأعلام في خانة ثمانية واحدة (0–7) كان الاختيار الطبيعي: خانة لكل كيان، وثلاث خانات إجمالاً. جرى توحيد هذا الأسلوب في معيار POSIX.1-1988، وظل ثابتاً في جميع أنظمة Linux وmacOS وBSD والأنظمة الشبيهة بـUnix.

ظهر التمثيل الرمزي (rwxr-xr-x) في مخرجات `ls -l` منذ أولى توزيعات Unix، وأصبح المكمل المقروء للرقم الثماني. يحدد POSIX كلا التمثيلين معياراً إلزامياً. يستخدم `chmod u+x ملف` الشكل الرمزي، بينما يستخدم `chmod 755 ملف` الشكل الثماني؛ وكلاهما يصل إلى العملية ذاتها في النواة: ضبط أعلام محددة في حقل وضع inode.

ماذا يعني كل علم صلاحية

للملف العادي: القراءة (r=4) تتيح فتح الملف وقراءة محتواه؛ الكتابة (w=2) تتيح تعديله أو اقتطاعه؛ التنفيذ (x=1) يتيح تشغيله كبرنامج. كل علم مستقل. الخانة الثمانية لكل كيان هي مجموع الأعلام المُفعَّلة: rwx=7, r-x=5, r--=4.

للمجلد، تتغير المعاني. القراءة (r) تتيح سرد محتويات المجلد عبر `ls`. التنفيذ (x) — ويُسمى أحياناً «علم البحث» — يتيح الدخول إلى المجلد بـ`cd` والوصول إلى الملفات بالاسم. الكتابة (w) تتيح إنشاء الملفات وحذفها وإعادة تسميتها داخل المجلد. مجلد بقراءة دون تنفيذ بالكاد يكون مفيداً: ترى أسماء الملفات لكن لا يمكنك فتح أي منها. المجلدات النموذجية لها صلاحية 755.

الأنماط الشائعة واعتبارات الأمان

644 (rw-r--r--) هو المعيار لملفات الإعداد وHTML والنصوص: المالك يعدّل، والبقية يقرؤون فقط. 755 (rwxr-xr-x) معيار المجلدات والسكربتات القابلة للتنفيذ: المالك يتحكم في المحتوى، والبقية يتصفحون ويقرؤون. 600 (rw-------) و700 (rwx------) تقصر الوصول على المالك — مناسبة لمفاتيح SSH الخاصة وملفات كلمات المرور. لا تستخدم 777 أبداً لأي شيء مكشوف على الويب؛ منح الكتابة للآخرين يعني أن أي عملية في النظام يمكنها الكتابة فوق الملف.

يحدد umask الصلاحيات الافتراضية للملفات والمجلدات الجديدة. قيمة umask 022 الشائعة تجعل الملفات الجديدة تحصل على 644 والمجلدات الجديدة على 755، إذ تُطرح أعلام umask من القيمة الافتراضية 666 للملفات و777 للمجلدات. الأنظمة الأكثر أماناً تستخدم في الغالب umask 027 أو 077.

أسئلة شائعة

ماذا يعني 755؟

755 يعني: المالك لديه قراءة+كتابة+تنفيذ (7=4+2+1)، المجموعة لديها قراءة+تنفيذ (5=4+1)، الآخرون لديهم قراءة+تنفيذ (5=4+1). هذه هي الصلاحية المعيارية للمجلدات والسكربتات القابلة للتنفيذ.

ماذا يعني 644؟

644 يعني: المالك لديه قراءة+كتابة (6=4+2)، المجموعة قراءة فقط (4)، الآخرون قراءة فقط (4). هذه القيمة الافتراضية للملفات العادية كملفات الإعداد وصفحات الويب والمستندات النصية.

لماذا يحتاج المجلد إلى صلاحية التنفيذ؟

في المجلدات، علم التنفيذ هو «علم البحث». بدونه لا يمكنك الدخول للمجلد بـcd ولا فتح ملفاته بالمسار، حتى لو كانت صلاحية القراءة مُفعَّلة. مجلد بقراءة دون تنفيذ لا قيمة عملية له تقريباً.

ما الفرق بين المالك والمجموعة والآخرين؟

المالك هو حساب المستخدم الذي يملك الملف (يُحدد عند الإنشاء أو يُغيَّر بـchown). المجموعة هي المجموعة المخصصة للملف (تُغيَّر بـchgrp)؛ أي مستخدم فيها يحصل على صلاحيات المجموعة. الآخرون يشمل كل مستخدمي النظام الذين ليسوا المالكَ ولا أعضاءً في المجموعة.

ما هما SUID وSGID؟

SUID (Set User ID) وSGID (Set Group ID) أعلام صلاحيات خاصة تتجاوز الأعلام التسعة المعيارية. عند تفعيل SUID على ملف تنفيذي، يعمل الملف بصلاحيات مالكه لا بصلاحيات من استدعاه — تُستخدم هذه الآلية في أوامر مثل passwd وsudo. SGID على مجلد يجعل الملفات الجديدة ترث مجموعة المجلد. يظهر في التمثيل الرمزي كـ's' (مثال: rwsr-xr-x)، ويُضاف 4000 أو 2000 إلى القيمة الثمانية (مثال: 4755).

هل chmod 777 خطير؟

نعم، خاصة على الأنظمة المشتركة أو خوادم الويب. 777 يمنح جميع مستخدمي النظام صلاحيات قراءة وكتابة وتنفيذ كاملة. أي عملية — بما فيها تطبيقات الويب المُخترَقة — يمكنها الكتابة فوق الملف أو تنفيذه. على خوادم الويب يتيح ذلك في الغالب تنفيذ أكواد عشوائية. قيّد الصلاحيات بالحد الأدنى الضروري.

كيف أستخدم أمر chmod؟

استخدم `chmod OCTAL مسار` لملف واحد، أو `chmod -R OCTAL مجلد` للتطبيق التكراري. مثال: `chmod 644 index.html` أو `chmod 755 /var/www`. يمكنك أيضاً استخدام الصيغة الرمزية: `chmod u+x script.sh` يضيف التنفيذ للمالك دون المساس بالأعلام الأخرى.

ما هو umask وكيف يرتبط بالصلاحيات؟

umask قناع يُطبَّق على الصلاحيات الافتراضية عند إنشاء ملف أو مجلد جديد. قيمة umask 022 تزيل الكتابة من المجموعة والآخرين، فتحصل الملفات الجديدة على 644 والمجلدات الجديدة على 755. نفّذ `umask` في الطرفية لمعرفة القيمة الحالية، و`umask قيمة` لتغييرها في الجلسة الحالية.

أدوات ذات صلة

آخر تحديث:

جرّب مطالباتنا للذكاء الاصطناعي ←