Chgrp команда Linux с примерами

В Linux все файлы и каталоги связаны с владельцами: пользователь и группа. На файлы и каталоги назначенны разрешения, определяющие права доступа, такие как чтение, запись и выполнение, которые в конечном итоге определяют, кто имеет какие права на доступ к ним.

В этой статье мы рассмотрим, как изменить группу-владельца на файл или каталог с помощью команды chgrp. Команда chgrp (change group) используется для изменения группы, которой принадлежит файл или директория. В отличие от команды chown, которая требует указать как имя пользователя, так и имя группы, в chgrp требуется только группа.

Синтаксис команды chgrp

Синтаксис для изменения группы, к которой принадлежит файл, довольно прост. Просто напишите команду chgrp и после нее укажите имя группы, а за ним имя объекта.

$ chgrp OPTION group_name /path

Атрибут group_name представляет собой имя группы, которая станет владельцем файла или каталога (/path). Кроме того, можно указать GID (идентификатор группы) вместо имени группы. В этом случае вам нужно добавить GID со знаком плюс (+).

Изменение группы-владельца файла с помощью команды chgrp

Перед изменением группы, которая является владельцем файла, рекомендуется с помощью команды ls проверить текущую группу, которой принадлежит файл file.

$ ls -l /file

Далее, чтобы установить собственником определенную группу (например, mygroup) выполните следующую команду:

$ chgrp mygroup /file

При изменении группы, которая владеет файлом или каталогом Вы можете столкнуться с ошибкой chgrp operation not permitted. Эта ошибка указывает на то, что пользователь, от которого Вы выполняете команду, не имеет достаточных прав для изменения владельца файла.

Решенением этой проблемы будет запуск команды с sudo (конечно, Ваш пользователь должен обладать такими привелегиями):

$ sudo chgrp mygroup /directory/file

Введите пароль пользователя, когда у Вас его спросит система, и в итоге права применятся.

Кроме того, Вы можете указать несколько файлов в качестве аргументов при использовании команды chgrp следующим образом:

$ sudo chgrp group_name file_1 file_2 file_3

Как рекурсивно изменить группу-владельца на файл или директорию в Linux

Иногда может потребоваться рекурсивно изменить группу у всех файлов и субдиректорий в определенном каталоге. Чтобы это сделать, используйте -R, как показано в приведенном ниже примере.

$ sudo chgrp -R group-name /directory

Изменение группы-владельца у символических ссылок

Использование опции -R (рекурсивно) не назначает прав на символические ссылки, и поэтому у них сохранятся прежняя группа. Чтобы установить новую группу и на символические ссылки, передайте параметр -h:

$ sudo chgrp -Rh www-data /var/www

Заключение

В этой статье мы показали Вам, как с помощью команду chgrp в Linux можно применить новую группу-владельца к файлу или директории. Хотя можно то же самое сделать и командой chown, но команда chgrp предлагает гораздо более простой способ сделать это. Команда chgrp была создана намного раньше, когда chown еще не мог работать с группами.

Спасибо за чтение и, пожалуйста, если у Вас есть какие-либо дополнения, пишите в комменариях.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Unlix.ru © Все права защищены 2015 - 2024

Копирование материалов с сайта Unlix.ru без указания полной ссылки на источник ЗАПРЕЩЕНО!