Команда Chgrp в Linux (Изменить группу)

Chgrp Command in Linux (Change Group)

21 Декабря 2019 | Терминал

Это руководство объясняет, как использовать chgrp

Команда Chgrp в Linux (Изменить группу)

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

Команда chgrp меняет групповое владение данными файлами.


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

Команда chgrp принимает следующую форму:

chgrp [OPTIONS] GROUP FILE..

  • GROUP, название новой группы или идентификатор группы (GID). Числовой GID должен начинаться с +символа.
  • FILE.., имя одного или нескольких файлов.


    В отличие от chown команды, которая позволяет изменять владельца группы и пользователя, chgrpизменяется только принадлежность группы.

Чтобы узнать, к какой группе принадлежит файл, используйте ls -l команду.

Только пользователь root или пользователь с правами sudo может изменить групповое владение файлом.

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

Чтобы изменить владельца группы для файла или каталога, вызовите chgrp команду, а затем введите новое имя группы и целевой файл в качестве аргументов.

Например, чтобы изменить группу файла filename для www-data вас, запустите:

chgrp www-data filename


    Если вы запустите команду с непривилегированным пользователем, вы получите ошибку «Операция не разрешена». Чтобы подавить ошибки, запустите команду с -f параметром. По умолчанию в случае успеха chgrp не выводит никаких данных и возвращает ноль.

Вы также можете передать несколько файлов в качестве аргументов chgrp команды:

chgrp www-data file1 file2 dir1


    Используйте -v опцию, чтобы получить информацию о файлах, которые обрабатываются:

chgrp www-data file1 file2
changed group of 'file1' from nginx to www-data
group of 'file2' retained as www-data


    Для печати информации только о тех файлах, которые фактически изменяет группа, используйте -c вместо -v.

Числовой идентификатор группы (GID) можно использовать вместо имени пользователя. В следующем примере изменяется владение группой файла новой группой с GID 1000:

chgrp +1000 filename

Когда рекурсивная работа не выполняется, поведение команды по умолчанию chgrpзаключается в изменении владельца группы для целей символической ссылки , а не самих символических ссылок .

Например, если вы попытаетесь изменить группу символической ссылки, на symlink1которую указывает ссылка /opt/file1, chgrpизменится владение файлом или каталогом, на который указывает символическая ссылка:

chgrp www-data symlink1


Скорее всего, вместо того, чтобы изменить целевую группу, вы получите сообщение об ошибке «cannot dereference ‘symlink1’: Permission denied».

Ошибка возникает из-за того, что по умолчанию в большинстве дистрибутивов Linux символические ссылки защищены, и вы не можете работать с целевыми файлами. Эта опция указана в /proc/sys/fs/protected_symlinks. значит включен и отключен. Мы рекомендуем не отключать защиту символических ссылок.

Чтобы изменить групповое владение самой символической ссылкой, используйте -h параметр:

chgrp -h www-data symlink1

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

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

Например, следующая команда изменит владельца всех файлов и каталогов в /var/www каталоге на www-data группу:

chgrp -R www-data /var/www

Если указан рекурсивный параметр, chgrp он не будет проходить по символическим ссылкам и не будет вносить изменений в символические ссылки. Чтобы изменить групповое владение символическими ссылками, передайте -hпараметр:

chgrp -hR www-data /var/www


    Другими параметрами, которые можно использовать при рекурсивном изменении владельца группы, являются -H и -L.

Если аргумент, переданный chgrp команде, является символической ссылкой, эта -H опция заставит команду пройти ее. -L говорит, что chgrp нужно пройти по каждой символической ссылке в каталог, который встречается. В большинстве случаев вам не следует использовать эти параметры, поскольку вы можете испортить вашу систему или создать угрозу безопасности.

Вывод

chgrp изменяет групповое владение файлами, каталогами и символическими ссылками.

Хотя вы можете использовать более популярную chown команду для изменения группы, она chgrp имеет простой синтаксис, который легко запомнить.

Для получения дополнительной информации о chgrp команде посетите страницу руководства chgrp или введите man chgrp свой терминал.


    Комментарии

    Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Загрузка комментариев...