ألامر chmod تغير صلاحية الملف في أوامر لينكس
الكاتب: Mr.Aziz
تاريخ النشر: 2022-04-27 23:53:12
صباح الخير...
اليوم راح أشرح بالتفصيل عن الامر chmod الى هو تغير صلاحيات الملف نفسه. اذا ماشفت موضوع السابق يتكلم عن ماهو صلاحيات تفضل من هنا
المهم
خلينا نتخيل الان أننا مستخدم الحالي و نريد نغير صلاحيات عشان ملفاتنا مفترض ماتطلع للمستخدمين اخرين مثلآ صورنا او ملفاتنا الخاصة السرية زي كذا.
بهذي الامر اقدر اغير صلاحيات الملفات خاصة بي سواء يكون انا الوحيد الى ادخل فيه او القروب معين احدده انا او يكون مفتوح للعالم..
ألامر chmod تعني change mod تغير صلاحيات الملف نفسه او المجلد سواء من المستخدمين او القروب او الجميع (world)
الامر chmod syntax تنكتب بهذي طريقة
chmod Permisson Filename
أول أمر بعدين نوع صلاحيات التي تبي تعطي الملف بعدها اسم الملف.
طبعآ في طريقتين يتم عطاء صلاحيات الملف
1- Absolute mode الي هي تأتي بالارقام
2- Symbolic mode الي هي تأتي بالترميز
Absolute mode تأتي عن طريق الترقيم فقط وليس characters تمام
هنا الجدول الترقيم مع نوع الصلاحيات و ايضآ مع الترميز
number | Permission Type | Symbol |
0 | No permission | - |
1 | Execute | -x |
2 | Write | -w- |
3 | Execute + Write | -wx |
4 | Read | r- |
5 | Read + Execute | r-x |
6 | Read + write | rw- |
7 | Read + Write + Execute | rwx |
هذا جدول كل رقم و ماذا تعني و ايضآ الترميز الى راح ينكتب
مثلآ انا لو ابي المستخدمين يقدر يعمل read و write ولكن قروب واخرون فقط لهم read
في الامر راح اكتب بهذي طريقة
chmod 644 filename
هنا تطبيق
زي ماتلاحظون هنا بأول ثلاث احرف على يسار الى هو للمستخدمين زي ماشرحت لهم
rw- تعني الملف هذا myname يتم تعديل و قراءة من قبل المستخدمين ولكن قروب و الاخرون لا فقط عليهم القرائة
ملاحظة مهمة عند كتابة الارقام كل رقم تعني شي
يعني انا لما كتبت كذا 644
من اليسار الى يمين
6 تعني عطاء صلاحيات كتابة و القراءة للمستخدمين
لهذا سبب كتبت الارقام على حسب الترميز و نوع الصلاحيات كما بالجدول بضبط.
4 بالوسط تعني عطاء القراءة فقط للقروب
4 اليمين تعني عطاء القراءة فقط الاخرين او World للجميع
بهذي طريقة اذا كنت تبي تعطي مستخدمين وقروب و الاخرين بنفس الوقت
ولكن لو حاب تعطي عن طريق الترميز تعال نتكلم عن النوع الثاني هو Symbolic mode
بهذي النوع يتم تحديد مين الى راح يتعدل صلاحياته سواء مستخدم او قروب او الاخرين.
مثلآ انا ابي اخلي القروب او المجموعه هو فقط يقدر يعدل الملفات و يقرء ويشغل برامج ولكن الاخرون لا و مستخدمون ايضآ لا الا في حال مستخدمون موجودين بنفس المجموعة.
هنا الجدول ماذا يعني الزائد والناقص و يساوي
Operator | Description |
+ | تعني اضافة صلاحيات لهذا الملف |
- | ازالة الصلاحيات من هذا الملف |
= | يتم كتابة صلاحيات فوق التي كانت عليها |
هنا ألاحرف و ماذا تعني الاحرف
Users denotation | |
u | user/Owner |
g | group |
o | other |
a | all |
الان عرفنا الجدولين هذولي عشان لما نكتب الامر نكون عارفين ماذا تعني وايضآ راح اشرح عنها لاتقلق.
ألان انا مستخدم و الملف myname هو ملفي طيب ابي انا اخلي القروب فقط هو له صلاحية يتم كتابه عليها و قراءة وايضآ تشغيل اي برنامج
بالامر نكتب زي كذا
chmod o=rwx myname
هنا اذا انت حاب تحدد القروب لهم صلاحيات معينة مثلآ rwx الى لهم صلاحيات كل شي هذا الترميز تعني 7 زي ماذكرنا بالجدول الى فوق
واذا حبيت تضيف صلاحية وحده فقط مثلآ تشغيل الى هو x
كل الى عليك تضع هذا ترميز
sudo o+x myname
هنا كتبنا فقط اسم الاخرين الى هو others لهم صلاحية للتشغيل
o+x تعني اضافة الاخرين هذي صلاحية الاماكنهم تشغيل برنامج او تشغيل بشكل عام..
ولكن لو حبيت تزيل او تشيل القراءة للمستخدمين نجي نكتب كذا u-r تعني للمستخدمين يتم ازالة منهم هذي صلاحية
تلاحظون هنا تم ازالة read او r بهذي طريقة بعلامة الناقص وليس زائد.
وبس كذا انتهينا من درس هذا الامر
أشوفكم بالدرس القادم