ذكري المظهر

Chown command in linux (ملكية الملف)

012 Changing Files Ownership and Group-ship in Linux using chown and chgrp commands

012 Changing Files Ownership and Group-ship in Linux using chown and chgrp commands

جدول المحتويات:

Anonim

يسمح لك الأمر chown بتغيير ملكية المستخدم و / أو المجموعة لملف أو دليل أو رابط رمزي معطى.

في نظام Linux ، يتم ربط جميع الملفات بمالك ومجموعة وتعيين حقوق الوصول إلى إذن لمالك الملف وأعضاء المجموعة وغيرهم.

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

كيفية استخدام chown

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

تأخذ تعبيرات الأوامر chown النموذج التالي:

chown USER FILE(s)

USER هو اسم المستخدم أو معرف المستخدم (UID) للمالك الجديد. GROUP هو اسم المجموعة الجديدة أو معرف المجموعة (GID). FILE(s) هو اسم واحد أو أكثر من الملفات أو الدلائل أو الروابط. يجب أن تكون بادئة معرفات رقمية برمز + .

  • USER - إذا تم تحديد المستخدم فقط ، فسيصبح المستخدم المحدد هو مالك الملفات المحددة ، ولن تتغير ملكية المجموعة. USER: - عندما يكون اسم المستخدم متبوعًا بنقطتين : ، ولم يتم إعطاء اسم المجموعة ، فسيصبح المستخدم هو مالك الملفات ، ويتم تغيير ملكية مجموعة الملفات إلى مجموعة تسجيل دخول المستخدم. USER:GROUP - إذا تم تحديد كل من المستخدم والمجموعة (مع عدم وجود مساحة بينهما) ، يتم تغيير ملكية المستخدم للملفات إلى المستخدم المعطى ويتم تغيير ملكية المجموعة إلى المجموعة المحددة. :GROUP - إذا تم حذف المستخدم وكانت المجموعة مسبوقة بنقطتين : ، يتم تغيير ملكية المجموعة للملفات فقط إلى المجموعة المحددة. : إذا تم إعطاء نقطتين فقط : دون تحديد المستخدم والمجموعة ، فلن يتم إجراء أي تغيير.

بشكل افتراضي ، عند النجاح ، لا ينتج عن chown أي ناتج ويعود إلى الصفر.

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

ls -l filename.txt

-rw-r--r-- 12 linuxize users 12.0K Apr 8 20:51 filename.txt |- | | | +-----------> Group +-------------------> Owner

فقط الجذر أو المستخدم الذي لديه امتيازات sudo يمكنه تغيير ملكية المجموعة لملف.

كيفية تغيير صاحب ملف

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

chown USER FILE

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

chown linuxize file1

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

chown linuxize file1 dir1

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

chown 1000 file2

في حالة وجود مالك رقمي كاسم مستخدم ، فسيتم نقل الملكية إلى اسم المستخدم. لتجنب هذه البادئة ، يكون المعرف بـ + :

chown 1000 file2

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

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

chown USER:GROUP FILE

سيؤدي الأمر التالي إلى تغيير ملكية ملف باسم file1 إلى مالك جديد باسم linuxize ومجموعة users :

chown linuxize:users file1

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

chown linuxize: file1

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

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

chown:GROUP FILE

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

chown:www-data file1

الأمر الآخر الذي يمكنك استخدامه لتغيير ملكية مجموعة الملفات هو chgrp .

كيفية تغيير ملكية الروابط الرمزية

عند عدم استخدام الخيار العودية ، يغير الأمر chown ملكية المجموعة للملفات التي تشير إليها الروابط الرمزية ، وليس الروابط الرمزية نفسها.

على سبيل المثال ، إذا حاولت تغيير مالك ومجموعة الارتباط الرمزي symlink1 الذي يشير إلى /var/www/file1 ، chown ملكية الملف أو الدليل الذي يشير إليه symlink إلى:

chown www-data: symlink1

الاحتمالات هي أنه بدلاً من تغيير الملكية المستهدفة ، ستظهر لك رسالة الخطأ "لا يمكن إلغاء التفضيل" symlink1 ": تم رفض الإذن".

يحدث الخطأ لأن الارتباطات الافتراضية في معظم توزيعات Linux محمية ، ولا يمكنك العمل على الملفات المستهدفة. هذا الخيار محدد في /proc/sys/fs/protected_symlinks . 1 يعني تمكين و 0 تعطيل. نوصي بعدم تعطيل حماية symlink.

لتغيير ملكية مجموعة الارتباط نفسه ، استخدم الخيار -h :

chown -h www-data symlink1

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

للعمل بشكل متكرر على جميع الملفات والدلائل ضمن الدليل المحدد ، استخدم الخيار -R ( -R --recursive ):

chown -R USER:GROUP DIRECTORY

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

chown -R www-data: /var/www

إذا كان الدليل يحتوي على روابط رمزية ، -h الخيار -h :

chown -hR www-data: /var/www

الخيارات الأخرى التي يمكن استخدامها عند تغيير ملكية الدليل بشكل متكرر هي -H و -L .

إذا كانت الوسيطة التي تم تمريرها إلى أمر chown عبارة عن رابط رمزي يشير إلى دليل ، فإن الخيار -H سوف يتسبب في اجتياز الأمر. يخبر -L chown كل ارتباط رمزي إلى دليل تمت مصادفته. عادةً ، يجب ألا تستخدم هذه الخيارات لأنك قد تفسد نظامك أو تخلق مخاطر أمنية.

باستخدام ملف مرجعي

يسمح لك الخيار --reference=ref_file بتغيير ملكية المستخدم والمجموعة للملفات المعينة بحيث تكون مماثلة لملف الملف المرجعي المحدد ( ref_file ). إذا كان الملف المرجعي عبارة عن رابط رمزي ، فسوف يستخدم المستخدم ومجموعة الملف الهدف.

chown --reference=REF_FILE FILE

على سبيل المثال ، سيعين الأمر التالي ملكية المستخدم والمجموعة من الملف 1 إلى file2

chown --reference=file1 file2

استنتاج

chown هي أداة مساعدة لسطر الأوامر Linux / UNIX لتغيير مستخدم الملف و / أو ملكية المجموعة.

لمعرفة المزيد حول أمر chown تفضل بزيارة صفحة chown man أو اكتب man chown في جهازك.

محطة chown