موصى به, 2024

اختيار المحرر

فهم أذونات لينكس واستخدام chmod

لقد كنت أتلقى دورة على نظام لينوكس في الأشهر القليلة الماضية ، وكان أحد جوانب نظام لينكس الذي كان يخلط بيني دائماً هو كيفية عمل الأذونات. على سبيل المثال ، عند تحميل ملف إلى خادم الويب مرة واحدة والحصول على خطأ ، قيل لي من قبل مضيف الويب الخاص بي لتغيير أذونات الملف إلى 755.

لم يكن لدي أي فكرة عما يعنيه ذلك ، على الرغم من أن تغيير الأذونات حل المشكلة. لقد أدركت الآن أن أذونات Linux ليست بهذه التعقيد ، عليك فقط أن تفهم النظام. في هذه المقالة ، سأتحدث عن أذونات Linux على مستوى عالٍ ونوضح لك كيفية استخدام الأمر chmod لتغيير أذونات الملفات والمجلدات.

أذونات ومستويات Linux

في Linux ، هناك ثلاثة أذونات أساسية عادةً ما يجب أن تقلق بشأنها: القراءة والكتابة والتنفيذ. كل ثلاثة من هذه هي جميلة لا تحتاج إلى شرح. الآن عندما يتم تطبيق هذه الأذونات على ملف ، يتم تطبيقها في المستويات.

هناك ثلاثة مستويات للأذونات في Linux: المالك والمجموعة وغيرها. المالك هو المستخدم الذي يمتلك الملف / المجلد ، وتتضمن المجموعة المستخدمين الآخرين في مجموعة الملفات والأخرى تمثل فقط جميع المستخدمين الآخرين الذين ليسوا المالكين أو في المجموعة.

يتم تمثيل القراءة والكتابة والتنفيذ كأحرف رمزية أو كأرقام ثماني. على سبيل المثال ، إذا قمت بإجراء ls -l في دليل يحتوي على بعض الملفات ، فسترى تمثيل الحرف الرمزي للأذونات.

تتم كتابة الأذونات كما يلي: البت الأول هو شرطة أو الحرف د. داش يعني أنه ملف ود د لتقف على الدليل. لاحظ أن البت الأول يمكن أيضًا أن يكون l إذا كان اسم الملف هو ارتباط. بعد ذلك ، هناك ثلاث مجموعات من ثلاث بتات. البتة الأولى في كل مجموعة للقراءة ، أما البتة الثانية فهي للكتابة ، أما البتة الثالثة فهي للتنفيذ. البتات الثلاث الأولى هي للمالك ، أما البتات الثلاثة الثانية فهي للمجموعة أما البتات الثلاث الثالثة فهي مخصصة للمجموعات الأخرى. إليك شرحًا أكثر وضوحًا.

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

إذا نظرت إلى الإخراج من الأمر ls -l ، فسوف تلاحظ أن ملفي التمهيدي يمتلك الأذونات التالية:

 -RW-RW-rw- 

هذا يعني أن كل شخص لديه أذونات القراءة / الكتابة فقط للملف. إليك مثال آخر:

 drwxr - r-- 

بالنظر إلى البت الأول ، يمكننا أن نرى أن الأذونات مخصصة لدليل. يمتلك المالك أذونات القراءة / الكتابة / التنفيذ ، ولكن المجموعة والمستخدمين الآخرين لديهم إذن قراءة فقط.

تمثيل عدد ثماني

إذن ، هذه هي الطريقة التي يتم بها عرض الأذونات في Linux باستخدام الرموز. والطريقة الثانية لتمثيل نفس الأذونات هي باستخدام الأرقام الثمانية. عندما نستخدم الأمر chmod في وقت لاحق ، سترى أنه يمكنك تغيير الأذونات باستخدام أي من الرموز أو الأرقام الثمانية.

إذن ، كيف يمثل نظام لينكس القراءة والكتابة والتنفيذ باستخدام الأرقام الثمانية؟ في الأساس ، تقوم بتعيين رقم لكل إذن كما هو موضح أدناه.

يتم تمثيل إذن القراءة بواسطة 4 ، اكتب 2 وينفذ بواسطة 1. كل ما عليك فعله هو إضافتها للحصول على الإذن الثماني. على سبيل المثال ، لنأخذ المثال أعلاه حيث يتمتع كل الأشخاص بجميع الأذونات:

 -rwxrwxrwx 

المالك لديه rwx ، لذا سنضيف 4 + 2 + 1 للحصول على قيمة 7. نفعل نفس الشيء للمجموعة ونفس الشيء لغيرنا. القيمة الثمانية الأخيرة هي 777. لنلقِ نظرة على المثال حيث أعطينا أذونات القراءة / الكتابة فقط:

 -RW-RW-rw- 

أول رقم ثماني سيكون 4 + 2 لأننا نضيف القراءة والكتابة. سوف يكون الثاني هو نفسه مثل رقم ثالث ثماني. هنا لدينا قيمة ثمائية أخيرة من 666.

لذلك دعونا الآن نحاول ذلك بطريقة أخرى. لنفترض أننا نريد معرفة الأذونات التي تمثل 755 ؟ حسنًا ، من السهل معرفة ما إذا كان يمكنك تقسيمها حسب الأرقام الفردية. الرقم الأول هو 7 ، والذي يمكننا الحصول عليه فقط بإضافة 4 + 2 + 1 ، وهذا يعني أن المالك لديه إذن القراءة / الكتابة / التنفيذ. يمكن الحصول على خمسة فقط بإضافة 4 + 1 ، وهذا يعني أن المجموعة والمستخدمين الآخرين قد قاموا بقراءة وتنفيذ الأذونات.

نأمل أن يكون هذا شرحًا جيدًا لكيفية تمثيل الأذونات في Linux باستخدام الأرقام الثمانية. انها جميلة إلى الأمام بشكل عام.

باستخدام chmod لتعديل الأذونات

الآن بعد أن فهمنا كيفية قراءة الأذونات ، دعونا نتحدث عن كيفية تغييرها. أسهل أداة للاستخدام لهذا الغرض هو الأمر chmod. وإليك كيف يعمل. أفضل طريقة لشرح الأمر هي الذهاب إلى مثال.

لنبدأ بالأذونات التي تحدثنا عنها أعلاه ، وهي:

 -RW-RW-rw- 

إذا أردنا إضافة إذن التنفيذ للمالك والمجموعة وغيرها ، فيمكننا إجراء ذلك بطريقتين. يمكننا استخدام طريقة الرمز أو الطريقة الثمانية. بالنسبة لطريقة الرمز ، سنفعل ما يلي ، كما هو موضح أدناه:

الأمر بالضبط هو

 chmod a + x اسم الملف 

يكون بناء الجملة كما يلي: الحرف أو الأحرف التي تمثل المالك ( u ) أو المجموعة ( g ) أو غيرها ( o ) أو الكل ( a ) متبوعة بعلامة + لإضافة أذونات أو - لأذونات السحب ثم الحرف الإذن ( r للقراءة ، w للكتابة و x للتنفيذ).

في المثال أعلاه ، أضفت إذن التنفيذ لجميع المستخدمين. النتيجة كما يمكنك رؤيتها في لقطة الشاشة أعلاه هي x للمالك والمجموعة وغيرها. لنفترض الآن أنني أردت إزالة الكتابة وتنفيذ الأذونات للمجموعة والمستخدمين الآخرين فقط.

كما ترون هنا ، اعتدت على الأمر التالي لإنجاز هذا:

 chmod go-wx filename 

بما أنني أريد تغيير أذونات المجموعة وغيرها ، أستخدم الحرف g والحرف o . أرغب في إزالة الأذونات ، لذلك أستخدم علامة - . وأخيرًا ، أريد إزالة أذونات الكتابة وتنفيذها ، لذلك أستخدم w و x . في ما يلي جدول صغير مفيد لاستخدام الرمز:

هذا كل ما في الأمر لاستخدام طريقة الرمز. الآن دعونا نتحدث عن الطريقة الثمانية ، التي أجدها أسهل قليلاً. أوكتال أمر جيد لأنه يمكنك إضافة أو إزالة الأذونات في دفعة واحدة.

إذا بدأنا بالأذونات التالية في أحد الملفات ، دعنا نرى كيف يمكننا تغييرها باستخدام الطريقة الثمانية:

 -RW-RW-rw- 

أعلاه ، يمكنك أن ترى أنني استخدمت الأمر التالي:

 chmod 744 اسم الملف 

هذا في الأساس يقول أن المالك يحصل على إذن القراءة / الكتابة / التنفيذ ، بينما يحصل الفريق وغيره على إذن القراءة فقط. كما ترى ، من السهل إضافة أو إزالة الأذونات في أمر واحد بسيط. دعونا نستمر ونقول أريد تغيير الأذونات مرة أخرى.

الآن استخدمت الأمر التالي ، مرة أخرى بسيطة للغاية:

 تشمود 640 اسم الملف 

هنا قمنا بإعطائنا أذونات القراءة / الكتابة للمالك ، وقراءة المجموعة إذن فقط والمجموعة الأخرى لا توجد أذونات. يمكنك استخدام صفر للإشارة إلى عدم وجود أذونات. بسيطة جدا ، ايه؟

في الختام ، هذه نظرة عامة بسيطة على أذونات لينكس ، ويمكن أن يكون الأمر أكثر تعقيدًا من ذلك ، ولكن بالنسبة للمبتدئين ، فإنه مكان جيد للبدء. سأقوم بنشر المزيد من المقالات حول المزيد من الأذونات المتقدمة في المستقبل. إذا كان لديك أي أسئلة ، فلا تتردد في التعليق. استمتع!

Top