يقوم الأمر chown test1 test2 بما يلي: جميع أنواع الوصول محظورة. كيفية تغيير مالك الملفات والمجلدات

09.07.2020

نواصل إخبارك بالتفصيل عن المستخدمين والمجموعات في Linux واليوم سنتحدث عن كيفية استخدام أوامر chown وchmod.

تشوون

تشاون - من اللغة الإنجليزية تغيير الخاصة. وهكذا، كما تعلم، لدى Linux مستخدمون ومجموعات. كل مستخدم لديه ملفاته الخاصة التي تم إنشاؤها أو تحميلها. كل مستخدم موجود في مجموعته الخاصة ويمكن دمجه مع مستخدمين آخرين في مجموعات أخرى.

لمعرفة مالك الملف والمجموعة التي ينتمي إليها، استخدم الأمر:

إذا كنت تريد تغيير أو تغيير مالك (مستخدم) الملف، فسيساعدك الأمر:

سودو chown اسم المستخدم text.txt

في في هذا المثالقمنا بتعيين ملف text.txt إلى اسم المستخدم.

إذا كنت تريد تغيير المجموعة فقط، فيمكنك استخدام الأمر chgrp:

Sudo chgrp اسم المجموعة text.txt

لكي لا تدخل أمرين مختلفين، قم بما يلي:

Sudo chown userName:groupName text.txt

تتم الإشارة إلى مالك الملف أولاً، ثم المجموعة:

سودو تشاونOwner_name : اسم المجموعة text.txt

إذا كنت بحاجة إلى تغيير المالك والمجموعة في الدليل، وهناك العديد من الملفات والمجلدات هناك، فاستخدم المفتاح -R:

سودو تشاون اسم المستخدم:اسم المجموعة /var/www/site/

CHMOD

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

يمكن الإشارة إلى أذونات الملف بالأرقام والحروف:

وتتلخص قيم الحقوق بالأرقام في:

  • الحقوق الكاملة (RWX) 7 = 4 + 2 +1
  • القراءة والكتابة (rw-) 6 = 4 + 2 + 0
  • القراءة والتنفيذ (r-x) 5 = 4 + 0 + 1
  • قراءة فقط 4 (ص—) = 4 + 0 + 0
  • التسجيل فقط 2 (-ث-) = 0 + 2 + 0
  • بلا حقوق (-) 0 = 0 + 0 + 0

لكل ملف ودليل، يتم تعيين الحقوق بشكل منفصل للمالك والمجموعة والمستخدمين الآخرين.

مالك مجموعة استراحة
ش ز س
خطابات الأذونات أرقام حقوق الوصول
com.rwxrwxrwx 777 اقرأ، اكتب، افعل كل شيء
rwxr-xr-x 755 يقرأ، يكتب، ينفذ قراءة وتشغيل
ص-ص-ص- 644 القراءة والكتابة يسوي فقط
ص ——— 400 ولا يقرأه إلا صاحبه

تغيير الأذونات على ملف أو دليل أمر شموديمكنك استخدام كل من الأرقام والحروف.

تعيين حقوق الوصول بالأرقام

لتغيير أذونات ملف أو دليل باستخدام الأمر chmod باستخدام الأرقام، أدخل الأمر:

سودو شمود 755 نص.txt

بالنسبة للأدلة، تحتاج إلى إضافة مفتاح -R بعد chmod.

فقط أدناه أمر مفيدكيفية تغيير الأذونات بشكل مجمّع في جميع المجلدات والمجلدات الفرعية.

للمجلدات:

يجد/ your_way -نوع d -exec chmod 755 ()\;

للملفات:

يجد/ your_way -نوع f -exec chmod 644 () \;

تعيين حقوق الوصول عن طريق الحروف

بالنسبة للمبتدئين، سيكون تغيير حقوق الوصول بالأحرف أكثر صعوبة بعض الشيء، لكن هذه المعرفة ستكون مفيدة.

وكما تعلم أن هناك مالكًا ومجموعة ومستخدمين آخرين، فقد تم تحديدهم على النحو التالي:

ش مستخدم مالك
ز مجموعة

في Linux، ترتبط كافة الملفات بمالك والمجموعة. يتم استخدام الأمر chown لتغيير إذن المستخدم والمجموعة إلى ملف أو دليل أو رابط محدد.

سنوضح لك في هذه المقالة كيفية استخدام الأمر chown مع أمثلة بسيطة.

بناء جملة الأمر Chown

قبل أن ننتقل إلى استخدام الأمر chown، دعونا نبدأ بمراجعة بناء الجملة الأساسي.

تبدو تعبيرات أمر Chown كما يلي:

ملف (ملفات) المستخدم[:GROUP]

  • مستخدمهذا هو اسم المستخدم أو معرف المستخدم (UID) للمالك الجديد،
  • مجموعةاسم مجموعة جديدةأو معرف المجموعة (GID) و
  • الملف (الملفات)اسم واحد أو أكثر من الملفات أو الدلائل أو الروابط.

استخدم الأمر ls -l لمعرفة من يملك الملف أو المجموعة.

لتتمكن من تغيير ملكية الملف، يجب أن يكون لدى المستخدم الذي ينفذ أمر chown .

كيفية تغيير مالك الملف

لتغيير مالك الملف، استخدم الأمر chown متبوعًا باسم المستخدم للمالك الجديد والملف الهدف.

ملف المستخدم تشاون

على سبيل المثال، سيؤدي الأمر التالي إلى تغيير ملكية ملف اسمه file1 إلى مالك جديد اسمه andreyex:

تشاون أندريكس file1

لتغيير ملكية ملفات أو أدلة متعددة، حددها كقائمة مفصولة بمسافات. على سبيل المثال، يقوم الأمر التالي بتغيير ملكية الملف المسمى file1 والدليل dir1 إلى مالك جديد يسمى andreyex:

تشاون أندريكس file1 dir1

يمكنك استخدام معرف مستخدم رقمي (UID) بدلاً من اسم المستخدم. سيؤدي المثال التالي إلى تغيير ملكية الملف المسمى file2 إلى مالك جديد بـ UID 1000:

تشاون 1000 ملف2

إذا كان المالك الرقمي موجودًا كاسم مستخدم، فسيتم نقل الملكية إلى اسم المستخدم.

كيفية تغيير مالك والمجموعة من الملف

لتغيير مالك الملف والمجموعة، استخدم الأمر chown، متبوعًا بالمالك الجديد والمجموعة، مفصولة بنقطتين (بدون مسافات متداخلة ولا ملف هدف.

المستخدم تشاون: ملف المجموعة

سيؤدي الأمر التالي إلى تغيير ملكية الملف المسمى file1 إلى مالك جديد يُدعى andreyex ومجموعة المستخدمين:

تشاون أندريكس: ملف المستخدمين 1

إذا قمت بحذف اسم المجموعة بعد النقطتين (، فسيتم تغيير مجموعة الملف إلى مجموعة المستخدمين المحددة.

تشاون أندريكس: file1

كيفية تغيير مجموعة الملفات

يمكن للأمر chown أن يؤدي نفس الوظيفة، أي أنه يمكنه تغيير مجموعة من الملفات.

لتغيير مجموعة ملف فقط، استخدم الأمر chown متبوعًا بنقطتين (، واسم المجموعة الجديد والملف الهدف.

تشاون: ملف المجموعة

سيقوم الأمر التالي بتغيير المجموعة المالكة للملف المسمى file1 إلى www-data:

تشاون: www-data file1

كيفية تغيير مالك الملف بشكل متكرر

للعمل بشكل متكرر على جميع الملفات والأدلة في دليل الإدخال، استخدم الخيار -r (–recursive):

مستخدم Chown -R: دليل المجموعة

على سبيل المثال، سيؤدي الأمر التالي إلى تغيير ملكية كافة الملفات والأدلة في الدلائل الفرعية /var/www إلى مالك جديد ومجموعة جديدة تسمى www-data:

تشاون www-data: /var/www

خاتمة

الآن يجب أن يكون لديك فهم جيد لكيفية استخدام الأمر chown في Linux. إذا كنت تريد معرفة المزيد عن أمر chown، قم بزيارة صفحة chown man.

تشاون [-fhv] [-R [-H | -ل | -ف]] مالك [:مجموعة ] ملف... chown [-fhv] [-R [-H | -ل | -ف]] : ملف المجموعة... يقوم البرنامج بتغيير مالك و/أو مجموعة الملف أو الدليل، أي معرف المستخدمو معرف المجموعةللملف المحدد. إذا لم يتم تحديد الخيار ، لا يتم تغيير الروابط الرمزية التي تم تمريرها كوسائط

يمكن استخدام الخيارات التالية: -H إذا تم ضبط الخيار ، اتبع الروابط من سطر الأوامر. (لم يتم اتباع الروابط التي تم العثور عليها أثناء اجتياز شجرة الدليل) -L إذا كان الخيار تم التثبيت، اتبع جميع الروابط الرمزية. -P إذا كان الخيار معرف المستخدمتم التثبيت، لا تتبع الروابط. السلوك الافتراضي. معرف المجموعة-R العودية. يتغير معرف المستخدمتم التثبيت، لا تتبع الروابط. السلوك الافتراضي. معرف المجموعةفقط على الرابط نفسه -v وضع لعرض الرسائل الخاصة بتنفيذ البرنامج. إذا تم تحديد الخيار أكثر من مرة، chown سيتم إخراج اسم الملف متبوعًا بالقديم والجديدمعرف المستخدم/معرف المجموعة . خيارات, و ، سيتم تجاهله إذا كان الخيار -v وضع لعرض الرسائل الخاصة بتنفيذ البرنامج. إذا تم تحديد الخيار أكثر من مرة،غير مثبت. بالإضافة إلى ذلك، فإن كل هذه الخيارات تلغي بعضها البعض، وتتجاوز سلوك الأمر مالكو مجموعة، سيتم تحديده بواسطة الخيار الأخير المحدد. خيارات مجموعةليست إلزامية، ولكن يجب تحديد واحد منها على الأقل. لو فقط : ، يتم وضع علامة أمامه مالك(القولون). المعلمة مجموعةيمكن تمثيل الملف إما كتعبير رقمي معرف المستخدم أو كاسم رمزي. إذا كان اسم المستخدم يطابق معرف المستخدم الخاص به، فسيتم استخدام المعامل كـ "اسم المستخدم". الأمر نفسه ينطبق على المعلمة -v وضع لعرض الرسائل الخاصة بتنفيذ البرنامج. إذا تم تحديد الخيار أكثر من مرة،. لا يمكن تغيير ملكية الملف إلا بواسطة المستخدم المتميز، وذلك لأسباب أمنية. برنامج >0 يعود 0 على النجاح و في حالة حدوث خطأ. انظر أيضا

chgrp(1)، العثور على(1)، chown(2)، fts(3)، الارتباط الرمزي(7)

كل ملف أو مجلد في Linux له أذوناته الخاصة.
هناك ثلاثة أنواع من الحقوق:

قراءة (ص)، الكتابة (ث)، تنفيذ (خ)
يتم تعريف الحقوق لثلاثة أنواع من المستخدمين:

المالك (u)، المجموعة (ز)، جميع الآخرين (س)

لذا، فإن حقوق كل ملف هي 9 بتات من المعلومات (3 أنواع من الحقوق * 3 أنواع من المستخدمين)، على التوالي، يمكن تعيين كل بت (=1) السماح بالوصول، أو إعادة التعيين (=0) رفض الوصول.

عند تعيين الحقوق، من المعتاد استخدام نظام الأرقام الثماني.
تمثيل النص للحقوق (10 أحرف):
0123456789

- روكسر- - ص - -
الحرف في الموضع 0:

"-" - ملف عادي، "d" - مجلد، "l" - رابط
الرموز في الموضع 1-3:

"rwx" - حقوق المالك
الرموز في المواضع 4-6:

"ص - -" - حقوق المجموعة
الرموز في الموضع 7-9:

"ص - -" - حقوق لأي شخص آخر

جدول تحديد الحقوق:
وكما يتبين من الجدول، يتم حساب الحقوق بسهولة
جمع بسيط. 1=تنفيذ، 2=كتابة، 4=قراءة.

على سبيل المثال، التنفيذ (1) والقراءة (4) مطلوبان، نحصل على 1+4=5
مثال 644:
- المالك (ش) القراءة والكتابة
- المجموعة (ز) للقراءة فقط

- الآخرين(س) للقراءة فقط
مثال 755:
- مالك (أصحاب) جميع الحقوق
- المجموعة (ز) القراءة والتنفيذ

- أخرى (س) القراءة والتنفيذ
وفي لغات البرمجة مثل C،

يتم إضافة 0 إلى الحقوق في بداية كل رقم، مما يعني أن الرقم ثماني، أي. اكتب 0644 بدلاً من 644. عند تغيير الحقوق من سطر الأوامر، لا يكون هذا مطلوبًا عادةً.
تمثيل الحقوق بأربعة أرقام (4755)، الحقوق الإضافية

  • SUID أو setuid: قم بتغيير "معرف المستخدم" في وقت التشغيل
  • SGID أو setgid: قم بتغيير "معرف المجموعة" في وقت التشغيل
  • البت اللاصق: تعطيل الحذف لجميع المستخدمين باستثناء المالك. في السابق، كان البت يعني "الاحتفاظ" في الذاكرة بعد اكتمال العملية
طاولة. التمثيل العددي للحقوق الإضافية:

التمثيل النصي للبتات الإضافية:
تتم الإشارة إلى البتات الإضافية بالرموز التالية:
"S"،"s" - SUID، SGID
"T"، "t" - قطعة لزجة
يتطابق موضع هذه البتات مع المواضع (3،6،9) لحقوق التنفيذ "x"
ومع ذلك، إذا لم تكن هناك حقوق تنفيذ، يتم استخدام "الأحرف الكبيرة"، أي. رموز كبيرة. إذا تم تعيين أذونات التنفيذ، فسيتم استخدام "الأحرف الصغيرة"، أي. رموز صغيرة.

أمثلة:

مجموعة SUID:
- r w s - - - - - - تعيين وحدات بت SUID وتنفيذها للمالك
- r - S - - - - - - تم تعيين بت SUID، ولم يتم تعيين بت التنفيذ

مجموعة SGID:
- r w x r w s - - - تعيين بتات SGID وتنفيذ المجموعة
- r w x r - S - - - مجموعة بتات SGID، غير مضبوطة. التنفيذ للمجموعة

مجموعة بت لزجة:
- rwxrwxrwt مجموعة البتات اللاصقة وتنفيذها للآخرين
- r w x r w x r - تم ضبط T، ولكن لم يتم ضبطه. أداء للآخرين

الاختلافات في تأثير الحقوق عند التثبيت على الملفات والمجلدات:

حقوقملفاتالمجلدات
قراءة محتوى القراءةالحصول على قائمة الملفات
سِجِلّ تسجيل المحتوىتغيير قائمة الملفات
(إنشاء، حذف، إعادة تسمية)
تنفيذيمكن تنفيذ الملفيمكن للمستخدم أو العملية جعل المجلد "حاليًا/عاملاً"
سويد اضبط "معرف المستخدم" عند التنفيذ تجاوز معرف المستخدم عند إنشاء ملف/مجلد (استخدم معرف مالك المجلد الجذر)
SGID اضبط "معرف المجموعة" عند التنفيذ تجاوز معرف المجموعة عند إنشاء ملف/مجلد (استخدم معرف المجموعة للمجلد الجذر)
لزجة منع الحذف من قبل الجميع باستثناء المالك

أمر لتغيير الأذونات chmod:
chmod [-R] أذونات الملف/المجلد

يقوم "-R" بتطبيق الأذونات بشكل متكرر على كافة الملفات والمجلدات الفرعية

أمثلة:
مجلد شمود-R 755/
ملف شمود 644
إلخ.

من الممكن تغيير الحقوق ليس بالكامل، ولكن فقط لإضافة أو إلغاء الحقوق لمجموعات معينة من المستخدمين فقط
باستخدام الرموز بدلا من الأرقام الثمانية.
"u" - المستخدم/المالك
"ز" - مجموعة المستخدمين
"س" - مستخدمون آخرون
"أ" - كافة مجموعات المستخدمين

تنسيق الإذن [[+-=]، ...

أمثلة:
chmod -R a+x مجلد/ يتم تنفيذه لجميع المجموعات بشكل متكرر
قراءة ملف chmod a+rx وتنفيذه للجميع
إضافة ملف chmod u+rx,g-rx للقراءة والتنفيذ للمالك، و
إلغاء الأذونات لمجموعة
chmod a+r,o= file إضافة قراءة لجميع أنواع المجموعات وإبطالها
جميع الحقوق لجميع المستخدمين الآخرين

أمر تغيير مالك chown:

Chown [-R] المالك: ملف/مجلد المجموعة

أمثلة:
chown -R 0:0 مجلد/مجموعة المالك/المجموعة = الجذر بشكل متكرر
chown myuser: ملف mygroup قم بتعيين myuser/mygroup للملف

قم بتغيير ملكية وأذونات الملفات والمجلدات على أنظمة Linux و*BSD

المعلومات الواردة أدناه ستكون مفيدة للمبتدئين لينكسو * بي إس دي مسؤولي النظام. على العموم، في أي نظام التشغيلسواء كان Linux أو Windows أو FreeBSD، فإن التشغيل الصحيح للتطبيقات والخدمات وأمن النظام ككل يعتمد بشكل مباشر على حقوق الوصول إلى الملفات والمجلدات. باستخدام الأدوات الموضحة أدناه، يمكنك حل ما يقرب من 90% من المشكلات التي تنشأ عند تعيين حقوق الوصول.

تغيير المالك لجميع المجلدات والملفات. لهذه الأغراض، يستخدم يونكس الأمر -v وضع لعرض الرسائل الخاصة بتنفيذ البرنامج. إذا تم تحديد الخيار أكثر من مرة،. لديها عدد من المعلمات:

  • خيارات. على سبيل المثال، لكي تؤثر التغييرات ليس فقط على هذا الدليل، ولكن أيضًا على جميع الدلائل الفرعية، تحتاج إلى تطبيق الأمر بشكل متكرر، أي. مع المعلمة "-R".
  • المالك أو مجموعة المالكين ("المستخدم: المجموعة" أو "المستخدم").
  • المسارات إلى المجلدات/الملفات التي يجب تطبيق الأمر عليها. على سبيل المثال، "/mnt/pool1/dts1/backup".

وبالتالي، فإن أمر تغيير المالك (ومجموعة المالكين) للأدلة وجميع المجلدات الفرعية والملفات سيبدو كما يلي:

Sudo chown -R المستخدم: المجموعة /الصفحة الرئيسية/المستخدم/دير/

تغيير الأذونات على ملف أو مجلدفي أنظمة Linux و*BDS يمكنك استخدام الأمر chmod. ومن الجدير بالذكر أن يونكس له خصائصه الخاصة في تشغيل هذا الأمر ومبدأ الفصل بين الحقوق. لذلك، بالإضافة إلى مالك الملف أو المجلد، يمكنك تكوين العمليات التي يمكن أن يقوم بها نفس المالك والمجموعة، بالإضافة إلى كافة المستخدمين الآخرين. في Unix، يتم تقسيم القدرات بالطريقة التالية - المالك، ومجموعة المالكين، وغيرهم. هناك أيضًا تقسيم الحقوق التالي:

  • الحق في تشغيل ملف (للمجلدات - اجتياز الدليل).
  • الحق في تعديل ملف (إنشاء وحذف الملفات والمجلدات في الدليل)
  • الحق في قراءة ملف (بالنسبة للمجلدات، هذا هو الحق في عرض محتويات الدليل)

ولتسهيل الاستخدام والحفظ يتم استخدام الترميز التالي:

  • الإطلاق - 1
  • التغيير - 2
  • القراءة - 4

وبإضافة هذه الرموز الرقمية نحصل على مجموعة من الحقوق الممنوحة للمالك/المجموعة/الآخرين. دعونا فرزها هذه المعلوماتعلى سبيل المثال:

يحق للمالك فقط تغيير الملف، ويمكن لمجموعة المالكين القراءة، أما الباقي فلا يمكنهم فعل أي شيء، لذلك سيكون الأمر كالتالي:

شمود 640 /media/fileshare/file.txt

يمكن للجميع إنشاء ملفات في المجلد، ولكن يمكن للمالك فقط رؤيتها:

شمود 622 /الوسائط/مشاركة الملفات/الرسائل/

بحيث يتمكن الجميع من تشغيل البرنامج، ولكن لا يمكن لأحد باستثناء المالك تعديله:

شمود 711 /media/share/exec

لتغيير الحقوق لجميع الملفات والمجلدات المرفقة (أي بشكل متكرر)، يتم استخدام المفتاح "-R" مرة أخرى.

عند إجراء هذه العمليات، من المفيد أن نفهم أن المسؤولين ومالك هذه المجلدات والملفات فقط هم الذين يمكنهم تغيير حقوق الملفات والدلائل.

تغيير الأذونات على الملفات فقط أو المجلدات فقط- فريق يجد. في هذه الحالة، يتم تعيين الملفات كملف (f)، والأدلة، على التوالي، باسم d. على سبيل المثال: