- Команда Chgrp в Linux (Изменить группу)
- Chgrp Command in Linux (Change Group)
- Это руководство объясняет, как использовать chgrp
- chgrp Синтаксис команды
- Как изменить владельца группы файлов
- Как изменить владение Symlinks Group
- Как рекурсивно изменить владение группой
- Вывод
- Команда Chgrp в Linux (Изменить группу)
- Синтаксис команды chgrp
- Как изменить владение файловой группой
- Как изменить принадлежность группы символических ссылок
- Как рекурсивно изменить владение группой
- Выводы
- Группы пользователей в Linux
- Как создать новую группу в Linux
- Добавление существующей учетной записи пользователя в группу
- Изменение первичной группы пользователя
- Просмотр списка групп, для которых назначена учетная запись пользователя
- Создание нового пользователя и назначение группы в одной команде
- Добавление пользователя в несколько групп
- Просмотреть список всех групп в Linux
- Как я могу изменить группу пользователя по умолчанию в Linux?
Команда Chgrp в Linux (Изменить группу)
Chgrp Command in Linux (Change Group)
Это руководство объясняет, как использовать chgrp
В Linux каждый файл связан с владельцем и группой и имеет разрешения, которые определяют, какие пользователи могут читать, записывать или выполнять файл.
Команда chgrp меняет групповое владение данными файлами.
chgrp Синтаксис команды
Команда chgrp принимает следующую форму:
- GROUP , название новой группы или идентификатор группы (GID). Числовой GID должен начинаться с + символа.
- FILE.. , имя одного или нескольких файлов.
В отличие от chown команды, которая позволяет изменять владельца группы и пользователя, chgrp изменяется только принадлежность группы.
Чтобы узнать, к какой группе принадлежит файл, используйте ls -l команду.
Только пользователь root или пользователь с правами sudo может изменить групповое владение файлом.
Как изменить владельца группы файлов
Чтобы изменить владельца группы для файла или каталога, вызовите chgrp команду, а затем введите новое имя группы и целевой файл в качестве аргументов.
Например, чтобы изменить группу файла filename для www-data вас, запустите:
Если вы запустите команду с непривилегированным пользователем, вы получите ошибку «Операция не разрешена». Чтобы подавить ошибки, запустите команду с -f параметром. По умолчанию в случае успеха chgrp не выводит никаких данных и возвращает ноль.
Вы также можете передать несколько файлов в качестве аргументов chgrp команды:
Используйте -v опцию, чтобы получить информацию о файлах, которые обрабатываются:
Для печати информации только о тех файлах, которые фактически изменяет группа, используйте -c вместо -v .
Числовой идентификатор группы (GID) можно использовать вместо имени пользователя. В следующем примере изменяется владение группой файла новой группой с GID 1000:
Как изменить владение Symlinks Group
Когда рекурсивная работа не выполняется, поведение команды по умолчанию chgrp заключается в изменении владельца группы для целей символической ссылки , а не самих символических ссылок .
Например, если вы попытаетесь изменить группу символической ссылки, на symlink1 которую указывает ссылка /opt/file1 , chgrp изменится владение файлом или каталогом, на который указывает символическая ссылка:
Скорее всего, вместо того, чтобы изменить целевую группу, вы получите сообщение об ошибке «cannot dereference ‘symlink1’: Permission denied».
Ошибка возникает из-за того, что по умолчанию в большинстве дистрибутивов Linux символические ссылки защищены, и вы не можете работать с целевыми файлами. Эта опция указана в /proc/sys/fs/protected_symlinks . 1 значит включен и 0 отключен. Мы рекомендуем не отключать защиту символических ссылок.
Чтобы изменить групповое владение самой символической ссылкой, используйте -h параметр:
Как рекурсивно изменить владение группой
Чтобы рекурсивно изменить групповое владение всеми файлами и каталогами в данном каталоге, используйте -R параметр.
Например, следующая команда изменит владельца всех файлов и каталогов в /var/www каталоге на www-data группу:
Если указан рекурсивный параметр, chgrp он не будет проходить по символическим ссылкам и не будет вносить изменений в символические ссылки. Чтобы изменить групповое владение символическими ссылками, передайте -h параметр:
Другими параметрами, которые можно использовать при рекурсивном изменении владельца группы, являются -H и -L .
Если аргумент, переданный chgrp команде, является символической ссылкой, эта -H опция заставит команду пройти ее. -L говорит, что chgrp нужно пройти по каждой символической ссылке в каталог, который встречается. В большинстве случаев вам не следует использовать эти параметры, поскольку вы можете испортить вашу систему или создать угрозу безопасности.
Вывод
chgrp изменяет групповое владение файлами, каталогами и символическими ссылками.
Хотя вы можете использовать более популярную chown команду для изменения группы, она chgrp имеет простой синтаксис, который легко запомнить.
Для получения дополнительной информации о chgrp команде посетите страницу руководства chgrp или введите man chgrp свой терминал.
Источник
Команда Chgrp в Linux (Изменить группу)
В Linux каждый файл связан с владельцем и группой и имеет разрешения, которые определяют, какие пользователи могут читать, писать или выполнять файл.
В этой статье объясняется, как использовать команду chgrp для изменения группового владения заданными файлами.
Синтаксис команды chgrp
Команда chgrp принимает следующую форму:
- GROUP , имя новой группы или идентификатор группы (GID). Числовой GID должен начинаться с символа + .
- FILE.. , имя одного или нескольких файлов.
В отличие от команды chown которая позволяет вам изменять владение пользователем и группой, команда chgrp изменяет только владение группой.
Чтобы узнать, к какой группе принадлежит файл, используйте команду ls -l .
Обычные пользователи могут изменить группу файла только в том случае, если они владеют файлом, и только в группе, членом которой они являются. Пользователи с правами администратора могут изменять групповое владение всеми файлами.
Как изменить владение файловой группой
Чтобы изменить групповое владение файлом или каталогом, вызовите команду chgrp за которой следует новое имя группы и целевой файл в качестве аргументов.
Например, чтобы изменить группу имени файла filename на www-data вы должны запустить:
Если вы запустите команду с непривилегированным пользователем, вы получите ошибку «Операция запрещена». Чтобы подавить сообщение об ошибке, вызовите команду с параметром -f . По умолчанию в случае успеха chgrp не производит никакого вывода и возвращает ноль.
Вы также можете передать несколько файлов в качестве аргументов команде chgrp :
Используйте опцию -v чтобы получить информацию об обрабатываемых файлах:
Чтобы распечатать информацию только о тех файлах, группа которых действительно изменяется, используйте -c вместо -v .
Вместо имени пользователя можно использовать числовой идентификатор группы (GID). В следующем примере группа, принадлежащая файлу, изменяется на новую группу с GID 1000:
Как изменить принадлежность группы символических ссылок
Если команда chgrp не работает рекурсивно, поведение по умолчанию заключается в изменении группового владения целевыми символами , а не самих символических ссылок .
Например, если вы попытаетесь изменить группу символической ссылки symlink1 которая указывает на /opt/file1 , chgrp изменит владельца файла или каталога, на который указывает символическая ссылка:
Скорее всего, вместо изменения целевой группы вы получите ошибку «невозможно разыменовать символическую ссылку1»: в разрешении отказано ».
Ошибка возникает из-за того, что по умолчанию в большинстве дистрибутивов Linux символические ссылки защищены, и вы не можете работать с целевыми файлами. Этот параметр указан в /proc/sys/fs/protected_symlinks . 1 означает включен, а 0 отключен. Мы рекомендуем не отключать защиту символических ссылок.
Чтобы изменить групповое владение самой символической ссылкой, используйте параметр -h :
Как рекурсивно изменить владение группой
Чтобы рекурсивно изменить групповое владение всеми файлами и каталогами в данном каталоге, используйте параметр -R .
Например, следующая команда изменит владельца всех файлов и каталогов в каталоге /var/www на группу www-data :
Если указана рекурсивная опция, chgrp не будет проходить по символическим ссылкам и не будет вносить изменений в символические ссылки. Чтобы изменить групповое владение символическими ссылками, передайте параметр -h :
Другие параметры, которые можно использовать при рекурсивном изменении владения группой, — это -H и -L .
Если аргумент, переданный команде chgrp является символической ссылкой, опция -H заставит команду пройти по ней. -L указывает chgrp по каждой символической ссылке в обнаруженный каталог. В большинстве случаев вам не следует использовать эти параметры, потому что вы можете испортить свою систему или создать угрозу безопасности.
Выводы
chgrp изменяет групповое владение файлами, каталогами и символическими ссылками.
Хотя вы можете использовать более популярную команду chown для изменения группы, chgrp имеет простой синтаксис, который легко запомнить.
Для получения дополнительной информации о команде chgrp посетите страницу руководства chgrp или введите man chgrp в своем терминале.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Источник
Группы пользователей в Linux
Учетные записи пользователей могут быть назначены одной или нескольким группам в Linux. Вы можете настроить права доступа к файлам и другие привилегии по группам. Например, в Ubuntu только пользователи из группы sudo могут использовать команду sudo для получения определенных привилегий.
Как создать новую группу в Linux
Если вы хотите создать новую группу в своей системе, используйте следующую команду groupadd, заменив new_group на имя группы, которую вы хотите создать. Вам также нужно будет использовать sudo с этой командой (или в дистрибутивах Linux, которые не используют sudo, вам нужно будет запустить команду su самостоятельно, чтобы получить соответствующие разрешения перед запуском команды).
Добавление существующей учетной записи пользователя в группу
Чтобы добавить существующую учетную запись пользователя в группу в вашей системе, используйте команду usermod, заменив examplegroup на имя группы, которую вы хотите добавить пользователю и exampleusername на именя пользователя, которого хотите добавить.
usermod -a -G examplegroup exampleusername
Например, чтобы добавить пользователя geek в группу sudo, используйте следующую команду:
Изменение первичной группы пользователя
Хотя учетная запись пользователя может быть частью нескольких групп, одна из групп всегда является «основной группой», а остальные являются «вторичными группами». Файлы и папки, созданные пользователем, будут соответствовать первичной группе.
Чтобы изменить основную группу, которой назначен пользователь, запустите команду usermod, заменив groupname на имя группы, которую вы хотите сделать основной и username на имя учетной записи пользователя.
Обратите внимание на -g здесь. При использовании строчной буквы g вы назначаете основную группу. Когда вы используете верхний регистр -G, как указано выше, вы назначаете новую вторичную группу.
Если вы новичок и ищете программы для Linux, рекомендуем посетить сайт по ссылке выше.
Просмотр списка групп, для которых назначена учетная запись пользователя
Чтобы просмотреть группы, к которым относится текущая учетная запись пользователя, выполните команду groups. Вы увидите список групп.
Чтобы просмотреть числовые идентификаторы, связанные с каждой группой, выполните команду id:
Для просмотра групп другого пользователя, запустите команду groups и определите имя учетной записи пользователя.
Вы также можете просмотреть числовые идентификаторы, связанные с каждой группой, запустив команду id и указав имя пользователя.
Первой группой в списке групп или группой, показанной после «gid =» в списке идентификаторов, является первичная группа. Другие группы — это вторичные группы.
Создание нового пользователя и назначение группы в одной команде
Иногда вам может понадобиться создать новую учетную запись пользователя, которая имеет доступ к определенному ресурсу или каталогу, например, новому пользователю FTP. Вы можете указать группы, которым будет назначена учетная запись пользователя, при создании учетной записи пользователя с помощью команды useradd, например:
useradd -G examplegroup exampleusername
Например, чтобы создать новую учетную запись пользователя с именем jsmith и назначить эту учетную запись группе ftp, вы должны запустить:
Конечно, вы захотите назначить пароль для этого пользователя:
Добавление пользователя в несколько групп
При назначении вторичных групп учетной записи вы можете легко назначить сразу несколько групп, разделив список запятой.
usermod -a -G group1,group2,group3 exampleusername
Например, чтобы добавить пользователя с именем geek в группы ftp, sudo и example, вы должны запустить:
Вы можете указать столько групп, сколько хотите — просто разделите их запятой.
Просмотреть список всех групп в Linux
Если вы хотите просмотреть список всех групп в вашей системе, вы можете использовать команду getent:
Этот вывод также покажет вам, какие учетные записи пользователей являются членами групп.
Источник
Как я могу изменить группу пользователя по умолчанию в Linux?
Будучи новичком в администрировании Linux, я немного запутался в следующих командах:
Я только что закончил читать книгу по администрированию пользователей в руководстве администратора Linux / Unix, но некоторые вещи все еще немного туманны.
В основном useradd кажется достаточно простым:
Я могу добавить «Дэвида Хилберта» с именем пользователя hilbert , установив его каталог по умолчанию, оболочку и группы. И я думаю, что -g это его основная группа / группа по умолчанию и -G другие его группы.
Итак, это мои следующие вопросы:
- Будет ли эта команда все еще работают , если группы faculty и famous не существовало? Будет ли это просто создать их?
- Если нет, какую команду я использую для создания новых групп?
- Если я удалю пользователя, hilbert и в этих группах не будет других пользователей, они все еще будут существовать? Должен ли я удалить их?
- После того, как я выполню useradd команду выше, как мне удалить Дэвида из famous группы и переназначить его основную группу, hilbert которой еще не существует?
Команда usermod позволит вам изменить основную группу пользователя, дополнительную группу или ряд других атрибутов. -g Переключатель контролирует первичную группу.
По другим вопросам .
Если вы укажете группу, groupname которой нет на useradd этапе, вы получите сообщение об ошибке — useradd: unknown group groupname
Команда groupadd создает новые группы.
Группа останется, если вы удалите всех пользователей, содержащихся внутри. Вам не обязательно удалять пустую группу.
Создать hilbert группу через groupadd hilbert . Затем переместите основную группу Дэвида, используя usermod -g hilbert hilbert . (Обратите внимание, что первое hilbert — это имя группы, а второе hilbert — имя пользователя. Это важно в тех случаях, когда вы перемещаете пользователя в группу с другим именем)
Вы можете все усложнить здесь, хотя. Во многих дистрибутивах Linux простой useradd hilbert пользователь hilbert создает группу и группу с тем же именем, что и у основного. Я бы добавил дополнительные группы, указанные вместе, используя -G переключатель.
Источник