أذونات الملفات في لينكس/يونكس: كيفية القراءة والكتابة والتغيير
⚡ ملخص ذكي
تتحكم أذونات الملفات في أنظمة Linux و Unix في من يمكنه قراءة وكتابة وتنفيذ كل ملف، مما يحمي نظامًا متعدد المستخدمين من خلال طبقتين: الملكية، التي تحدد المستخدم والمجموعة والآخرين، وبتات أذونات القراءة والكتابة والتنفيذ.

أذونات الملفات في لينكس يُحدد نظام يونكس من يُمكنه قراءة كل ملف أو تعديله أو تشغيله، مما يحافظ على أمان النظام المشترك متعدد المستخدمين. تشرح هذه الصفحة ملكية الملفات، وصلاحيات القراءة والكتابة والتنفيذ، والأوامر التي تُغيرها.
لينكس هو نسخة من يونكس، نظام التشغيل متعدد المستخدمين الذي يمكن الوصول إليه من قبل العديد من المستخدمين في وقت واحد. كما يمكن استخدام لينكس على الحواسيب المركزية والخوادم دون أي تعديل. لكن هذا يثير مخاوف أمنية، إذ يمكن لمستخدم غير مصرح له أو خبيث إتلاف البيانات الحساسة أو تغييرها أو حذفها. ولضمان أمان فعال، يقسم لينكس نظام الصلاحيات إلى مستويين:
- امتلاك
- إذن
يُعدّ مفهوم أذونات الملفات وملكية الملفات أساسيًا في نظام لينكس. سنشرح هنا أذونات الملفات وملكية الملفات في لينكس، وسنتناول كليهما بالتفصيل. لنبدأ بمفهوم الملكية.
ملكية ملفات Linux
يُخصص لكل ملف ومجلد في نظام يونكس/لينكس ثلاثة أنواع من المالكين، كما هو موضح أدناه. يوضح الرسم البياني أدناه كيفية ربط الملكية بالمستخدم والمجموعة والآخرين.
اسم المستخدم
المستخدم هو صاحب الملف. بشكل افتراضي ، يصبح الشخص الذي أنشأ الملف مالكه. ومن ثم ، يُطلق على المستخدم أحيانًا اسم المالك.
تجمع
A مجموعة المستخدمين يمكن أن تضم المجموعة عدة مستخدمين. جميع المستخدمين المنتمين إلى مجموعة واحدة لديهم نفس صلاحيات المجموعة في نظام لينكس للوصول إلى الملف. لنفترض أن لديك مشروعًا يحتاج فيه عدد من الأشخاص إلى الوصول إلى ملف. بدلًا من تعيين الصلاحيات يدويًا لكل مستخدم، يمكنك إضافة جميع المستخدمين إلى مجموعة واحدة وتعيين صلاحية المجموعة للوصول إلى الملف، بحيث لا يتمكن من قراءة الملفات أو تعديلها إلا أعضاء هذه المجموعة فقط، دون غيرهم.
خدمات أخرى
أي مستخدم آخر لديه صلاحية الوصول إلى الملف. هذا الشخص لم ينشئ الملف ولا ينتمي إلى مجموعة مستخدمين تملك الملف. عمليًا، هذا يعني أي شخص آخر. لذا، عند منح الإذن للآخرين، يُشار إلى ذلك أيضًا بمنح الإذن للجميع.
والآن يطرح السؤال الأهم: كيف يميز نظام لينكس بين أنواع المستخدمين الثلاثة هذه بحيث لا يستطيع المستخدم "أ" التأثير على ملف يحتوي على معلومات أو بيانات حيوية خاصة بالمستخدم "ب"؟ الأمر أشبه بعدم الرغبة في وجود زميل يعمل على مشروعك الخاص كمبيوتر Linux لعرض صورك. هنا يأتي دور الأذونات، وهي التي تحدد سلوك المستخدم.
دعونا نفهم نظام الأذونات في نظام لينكس.
أذونات ملف Linux
يحتوي كل ملف ومجلد في نظام Unix/Linux الخاص بك على الأذونات الثلاثة التالية المحددة لجميع المالكين الثلاثة المذكورين أعلاه.
- قراءة: يمنحك هذا الإذن صلاحية فتح ملف وقراءته. أما إذن القراءة على مجلد فيمنحك القدرة على عرض محتوياته.
- كتابة: تمنحك صلاحية الكتابة إمكانية تعديل محتويات ملف. أما صلاحية الكتابة على مجلد فتمنحك إمكانية إضافة الملفات الموجودة فيه وحذفها وإعادة تسميتها. لنفترض أن لديك صلاحية الكتابة على ملف، ولكن ليس لديك صلاحية الكتابة على المجلد الذي يحتوي على هذا الملف. ستتمكن من تعديل محتويات الملف، ولكن لن تتمكن من إعادة تسميته أو نقله أو حذفه من المجلد.
- تنفيذ: In Windowsعادةً ما يحمل البرنامج القابل للتنفيذ امتداد ".exe"، مما يسهل تشغيله. في أنظمة يونكس/لينكس، لا يمكنك تشغيل أي برنامج إلا إذا تم منحه إذن التنفيذ. إذا لم يتم منح إذن التنفيذ، فقد تتمكن من رؤية أو تعديل كود البرنامج (شريطة منح أذونات القراءة والكتابة)، ولكن لن تتمكن من تشغيله.
لنستعرض أذونات الملفات في لينكس مع أمثلة. تشغيل الأمر ls -l في الطرفية يُعطي النتيجة التالية:
ls -l
تُظهر لقطة الشاشة أدناه سلسلة الأذونات في قائمة طويلة.
هنا، قمنا بتسليط الضوء على '-rw-rw-r–'، وهذا الرمز ذو المظهر الغريب هو الذي يخبرنا عن أذونات يونكس الممنوحة للمالك ومجموعة المستخدمين والعالم.
هنا، تشير علامة "-" الأولى إلى أننا حددنا ملفًا. أما الأيقونة الموجودة أسفلها فتشير إلى ملف عادي.
وإلا، لو كان دليلاً، لكان قد تم عرض حرف "د"، كما هو الحال في القائمة أدناه.
الأحرف سهلة التذكر.
- r = إذن القراءة
- w = إذن الكتابة
- x = إذن التنفيذ
- – = لا إذن
دعونا ننظر إلى الأمر من هذه الزاوية. الجزء الأول من الرمز هو 'rw-'. وهذا يشير إلى أن المالك 'Home' يمكنه:
- اقرأ الملف
- اكتب أو حرر الملف
لا يمكن للمالك تنفيذ الملف، لأن بت التنفيذ مُعيّن على "-". تُظهر الأيقونة أدناه بت التنفيذ وقد تم مسحه إلى شرطة (-).
بحسب التصميم، فإن العديد من توزيعات لينكس مثل فيدورا وسنت أو إس و Ubuntu أضف مستخدمًا إلى مجموعة تحمل نفس اسم المستخدم. على سبيل المثال، تمت إضافة المستخدم "tom" إلى مجموعة تحمل اسم "tom".
الجزء الثاني هو 'rw-'. وهو خاص بمجموعة المستخدمين 'Home'، ويمكن لأعضاء المجموعة القيام بما يلي:
- اقرأ الملف
- اكتب أو حرر الملف
الجزء الثالث مخصص للعالم، أي لأي مستخدم. وهو يشير إلى "r–". وهذا يعني أن المستخدم لا يمكنه سوى:
- اقرأ الملف
يوضح الجدول أدناه كيفية ربط كل جزء من سلسلة الأذونات بالمالك والمجموعة والعالم.
تغيير أذونات الملفات/المجلدات في لينكس باستخدام الأمر 'chmod'
لنفترض أنك لا تريد أن يرى زميلك صورك الشخصية. يمكنك تحقيق ذلك عن طريق تغيير أذونات الملفات.
يمكننا استخدام الأمر 'chmod' أمر، وهو اختصار لـ "وضع التغيير". باستخدام هذا الأمر، يمكننا تعيين أذونات (قراءة، كتابة، تنفيذ) على ملف أو مجلد للمالك والمجموعة والعالم.
بناء الجملة:
chmod permissions filename
هناك طريقتان لاستخدام الأمر:
- الوضع المطلق
- الوضع الرمزي
الوضع المطلق (الرقمي) في لينكس
في هذا الوضع، لا تُمثَّل أذونات الملفات بأحرف، بل برقم ثماني مكون من ثلاثة أرقام. يوضح الجدول أدناه الأرقام الخاصة بجميع أنواع الأذونات.
| رقم الهاتف | نوع الإذن | رمز |
|---|---|---|
| 0 | لا يوجد إذن | - |
| 1 | تنفيذ | –X |
| 2 | كتابة | -W- |
| 3 | تنفيذ + الكتابة | -wx |
| 4 | عرض | ص- |
| 5 | قراءة + تنفيذ | آر إكس |
| 6 | القراءة والكتابة | RW |
| 7 | اقرأ + اكتب + نفّذ | RWX |
دعونا نرى أمر chmod قيد التنفيذ، كما هو موضح في نافذة الطرفية أدناه.
في نافذة الطرفية أعلاه، قمنا بتغيير صلاحيات الملف 'sample' إلى '764'. يشير الرمز المطلق '764' إلى ما يلي:
- يستطيع المالك القراءة والكتابة والتنفيذ.
- يمكن لمجموعة المستخدمين القراءة والكتابة.
- العالم لا يستطيع إلا أن يقرأ.
يظهر هذا على شكل '-rwxrw-r–'، كما هو موضح في النتيجة أدناه.
هذه هي الطريقة التي يمكنك بها تغيير أذونات المستخدم في نظام لينكس على ملف عن طريق تعيين رقم مطلق.
الوضع الرمزي في لينكس
في الوضع المطلق، يمكنك تغيير صلاحيات جميع المالكين الثلاثة. أما في الوضع الرمزي، فيمكنك تعديل صلاحيات مالك محدد. ويستخدم هذا الوضع رموزًا رياضية لتعديل صلاحيات ملفات يونكس.
| المُشغل | الوصف |
|---|---|
| + | يضيف إذنًا إلى ملف أو دليل |
| - | يزيل الإذن |
| = | يحدد الأذونات ويتجاوز الأذونات التي تم تحديدها مسبقًا |
يتم تمثيل الملاك المختلفين على النحو التالي.
| اسم المستخدم | الدلالات |
|---|---|
| u | مستخدم / المالك |
| g | رأس التجميع |
| o | أخرى |
| a | الكل |
لن نستخدم الصلاحيات بالأرقام مثل 755، بل بالأحرف مثل rwx. لنلقِ نظرة على المثال الموضح أدناه.
تغيير الملكية والمجموعة في Linux
لتغيير ملكية ملف أو مجلد، يمكنك استخدام الأمر التالي:
chown user filename
في حال رغبتك في تغيير المستخدم والمجموعة لملف أو مجلد، استخدم الأمر التالي:
chown user:group filename
دعونا نرى هذا عملياً، كما هو موضح أدناه.
في حال رغبتك في تغيير مالك المجموعة فقط، استخدم الأمر التالي:
chgrp group_name filename
يشير اختصار 'chgrp' إلى تغيير المجموعة. تُظهر لقطة الشاشة أدناه استخدام أمر chgrp.
نصيحه
- يحتوي الملف /etc/group على جميع المجموعات المعرفة على النظام.
- يمكنك استخدام الأمر "groups" للعثور على جميع المجموعات التي أنت عضو فيها، كما هو موضح أدناه.
- يمكنك استخدام الأمر newgrp للعمل كعضو في مجموعة أخرى غير مجموعتك الافتراضية، كما هو موضح أدناه.
- لا يمكن أن تمتلك مجموعتان نفس الملف.
- لا توجد مجموعات متداخلة في نظام لينكس. لا يمكن أن تكون مجموعة ما مجموعة فرعية لمجموعة أخرى.
- x — تنفيذ دليل يعني السماح لك "بالدخول" إلى دليل والحصول على إمكانية الوصول إلى الأدلة الفرعية.
- هناك أذونات أخرى يمكنك تعيينها على الملفات والمجلدات، والتي سيتم تناولها في درس تعليمي متقدم لاحق.






.png)
.png)
.png)
.png)
.png)


