Кот и лиса - русская народная сказка, которую любят слушать, читать и...
Бывают случаи, когда возникает необходимость узнать, какие пользователи зарегистрированы в операционной системе Linux. Это может потребоваться для того, чтобы определить, есть ли лишние пользователи, нуждается ли какой-то конкретный пользователь или же целая группа из них в изменении личных данных.
Люди, которые постоянно используют данную систему, могут это сделать с помощью целого ряда методов, а для новичков это весьма проблематично. Поэтому инструкция, которая будет расписана ниже, поможет неопытному пользователю справиться с поставленной задачей. Сделать это можно при помощи встроенного Терминала или же ряда программ с графическим интерфейсом.
Способ 1: Программы
В Linux/Ubuntu управлять зарегистрированными в системе пользователями можно при помощи параметров, работа которых обеспечивается специальной программой.
К сожалению, для графической оболочки рабочего стола Gnome и Unity программы разные. Однако они обе способны предоставить набор опций и инструментов для проверки и редактирования групп пользователей в дистрибутивах Linux.
«Учетные записи» в Gnome
Сначала следует открыть параметры системы и выбрать раздел под названием «Учетные записи» . Обратите внимание на то, что системные пользователи здесь уже отображаться не будут. Список зарегистрированных пользователей находится в панели слева, правее есть раздел настроек и изменения данных каждого из них.
Программа «Пользователи и группы» в дистрибутиве с графической оболочкой Gnome установлена всегда по умолчанию, однако если вы ее не находите в системе, то можно провести автоматическую загрузку и установку с помощью выполнения команды в «Терминале» :
sudo apt-get install unity-control-center
KUser в KDE
Для платформы KDE существует одна утилита, пользоваться которой даже гораздо удобнее. Она называется KUser.
В интерфейсе программы отображаются все зарегистрированные юзеры, при необходимости можно увидеть и системных. Эта программа может изменять пароли пользователей, переносить их из одной группы в другую, удалять их в случае необходимости и тому подобное.
Как и в случае с Gnome, в KDE программа KUser установлена по умолчанию, но ее можно удалить. Чтобы произвести установку приложения, выполните команду в «Терминале» :
sudo apt-get install kuser
Способ 2: Терминал
Данный способ является универсальным для большинства дистрибутивов, разработанных на основе операционной системы Linux. Дело в том, что она имеет в своем программном обеспечении специальный файл, где располагается информация относительно каждого пользователя. Такой документ находится по адресу:
Все записи в нем представлены в следующем виде:
- имя каждого из юзеров;
- уникальный идентификационный номер;
- пароль ИД;
- ИД группы;
- название группы;
- оболочка домашнего каталога;
- номер домашнего каталога.
Для повышения уровня безопасности в документе сохраняется пароль каждого из пользователей, но он не отображается. В других модификациях этой операционной системы пароли и вовсе хранятся в отдельных документах.
Полный список пользователей
Вызвать переадресацию в файл с сохраненными данными юзеров можно с помощью «Терминала» , введя в него следующую команду:
Если ИД у пользователя имеет меньше четырех цифр, то это системные данные, в которые вносить изменения крайне нежелательно. Дело в том, что они создаются самой ОС в процессе установки для обеспечения наиболее безопасной работы большинства сервисов.
Имена в списке пользователей
Стоит отметить, что в данном файле может быть довольно много данных, которые вам не интересны. Если имеется необходимость узнать только имена и основные сведения, касающиеся пользователей, есть возможность отфильтровать приведенные в документе данные при помощи введения следующей команды:
sed "s/:.*//" /etc/passwd
Просмотр активных пользователей
В ОС, работающей на базе Linux, можно посмотреть не только пользователей, которые были зарегистрированы, но и тех, кто в настоящее время активны в ОС, заодно просмотрев то, какие процессы они используют. Для такой операции применяется специальная утилита, вызываемая командой:
Данная утилита будет выдавать все команды, которые выполняются пользователями. Если он одновременно задействует две и более команд, то они также найдут отображение в выдаваемом списке.
Истории посещений
При необходимости, есть возможность проанализировать активность пользователей: узнать дату последнего их входа в систему. Ей можно воспользоваться на базе лога /var/wtmp . Вызывается он вводом в командной строке следующей команды:
Дата последней активности
Кроме того, в операционной системе Linux можно узнать, когда каждый из зарегистрированных пользователей был последний раз активен – это делает команда lastlog , выполняемая при помощи одноименного запроса:
В этом логе также отображается информация о пользователях, которые никогда не были активными.
Заключение
Как можно заметить, в «Терминале» представлены более детальные сведения, касающиеся каждого пользователя. В нем есть возможность узнать кто и когда входил в систему, определить, пользовались ли ей посторонние люди, и многое другое. Однако для рядового пользователя будет лучшим вариантом воспользоваться программой с графическим интерфейсом, чтобы не вникать в суть команд Linux.
Список пользователей просмотреть достаточно легко, главное понять, на основе чего работает данная функция операционной системы и для каких целей она используется.
Учетные записи пользователей могут быть назначены одной или нескольким группам в Linux. Вы можете настроить права доступа к файлам и другие привилегии по группам. Например, на Ubuntu только пользователи из группы sudo могут использовать команду sudo для получения повышенных разрешений.
Как создать новую группу в Linux
Если вы хотите создать новую группу в своей системе, используйте команду groupadd , заменив new_group на имя группы, которую вы хотите создать. Вам также нужно будет использовать sudo с этой командой (или в дистрибутивах Linux, которые не используют sudo , вам нужно будет запустить команду su , чтобы получить повышенные разрешения перед запуском команды).
Sudo groupadd new_group
Добавление существующей учетной записи пользователя в группу
Чтобы добавить существующую учетную запись пользователя в группу в вашей системе, используйте команду usermod , заменив group_name на имя группы, в которую вы хотите добавить пользователя, в user_name на имя пользователя, которого хотите добавить.
Usermod -a -G group_name user_name
Например, для добавления пользователя mial в группу sudo , используйте следующую команду:
Usermod -a -G sudo mial
Изменение первичной группы пользователя
Хотя учетная запись пользователя может входить в нескольких групп, одна из групп всегда является «основной группой», а остальные являются «вторичными группами». Процесс входа пользователя, файлы и папки, созданные пользователем, будут назначены первичной группе.
Чтобы изменить основную группу, которой назначен пользователь, запустите команду usermod , заменив group_name на имя группы, а user_name на имя учетной записи пользователя.
Usermod -g group_name user_name
Обратите внимание здесь на -g . Когда вы используете маленькую g , вы назначаете главную группу. Когда вы используете заглавную -G , как в примерах выше, вы назначаете вторичную группу.
Как узнать, в какие группы входит пользователь
Чтобы просмотреть группы, которым назначена текущая учетная запись пользователя, выполните команду groups . Вы увидите список групп.
Чтобы просмотреть числовые идентификаторы, связанные с каждой группой, выполните команду id :
Для просмотра групп в которые входит другая учетная запись пользователя, запустите команду groups и укажите имя учетной записи пользователя.
Groups user_name
Вы также можете просмотреть числовые идентификаторы, связанные с каждой группой, запустив команду id и указав имя пользователя.
Id user_name
Первой группой в списке групп или группой, показанной после «gid= » в списке идентификаторов, является первичная группа учетной записи пользователя. Другие группы - это вторичные группы. Итак, на скриншоте ниже основной группой учетной записи пользователя является mial .
Создание нового пользователя и назначение группы в одной команде
Иногда вам может понадобиться создать новую учетную запись пользователя, которая имеет доступ к определенному ресурсу или каталогу, например, новому пользователю FTP. С помощью команды useradd при создании учетной записи пользователя вы можете указать группы, которым будет назначена учетная запись пользователя, например:
Useradd -G group_name user_name
Например, чтобы создать новую учетную запись пользователя с именем jsmith и назначить эту учетную запись группе ftp , вы должны запустить:
Useradd -G ftp jsmith
Конечно, вы захотите назначить пароль для этого пользователя:
Passwd jsmith
Добавление пользователя в несколько групп
Вы можете добавить пользователя сразу в несколько вторичных групп, разделив список запятой:
Usermod -a -G group1,group2,group3 user_name
Например, чтобы добавить пользователя с именем mial в группы ftp , sudo и example , вы должны запустить:
Usermod -a -G ftp,sudo,example mial
Вы можете указать столько групп, сколько хотите - просто разделите их все запятой.
Как просмотреть все группы в системе
Если вы хотите просмотреть список всех групп в вашей системе, вы можете использовать команду getent :
Getent group
Этот вывод также покажет вам, какие учетные записи пользователей являются членами групп. Итак, на скриншоте ниже мы видим, что учетные записи пользователей syslog и mial являются членами группы adm .
Это должно охватывать все, что вам нужно знать о добавлении пользователей в группы в командной строке Linux.
Создадим пользователя vivek и добавим его в группу developers. Залогиньтесь как пользователь root:
Например добавим пользователя vivek :
useradd -g users -G admins,ftp,www,developers -s /bin/bash -p xxxx -d /home/ghost -m vivek
- -d домашний каталог
- -s задать стартовую оболочку (/bin/sh) - после можно изменить в файле /etc/passwd
- -p пароль
- -g основная группа, к которой приписывается пользователь (Группа должна существовать)
- -G другие группы к которой приписывается пользователь
- -m создать для пользователя домашний каталог
- xxxx символьный пароль пользователя
Убедимся что группа developers существует:
# grep developers /etc/group
Если группы нет, используйте команду groupadd для создания новой группы developers:
Теперь с помощью команды usermod добавим пользователя vivek в группу developers:
# adduser vivek developers && newgrp developers
Убедимся что пользователь добавлен в группу developers:
# id vivek
Output:
uid=1122(vivek) gid=1125(vivek) groups=1125(vivek),1124(developers)
Установим/изменим пароль пользователю vivek:
Поиграемся с группами
Укажим пользователю vivek участие только в группе developers
usermod -G developers vivek
Укажим пользователю vivek участие только в группах admins, ftp, www, developers, введя:
# usermod -G admins,ftp,www,developers vivek
Удалим пользователя vivek из некоторых групп (переназначим ему группы):
# usermod -G ftp,www vivek
теперь vivek не входит в группы admins и developers.
Примечание: команда usermod не будет изменять имя пользователя, если этот пользователь в данный момент работает в системе.
userdel — удалить пользователя
Например удалим пользователя vivek:
- -r удалить пользователя вместе с домашним каталогом
Подробный СИНТАКСИС
useradd [-u идентификатор [-o] [-i]] [-g группа ] [-G группа [[,группа ] . . .]] [-d каталог ] [-s shell ] [-c комментарий ] [-m [-k skel_dir ]] [-f inactive ] [-e expire ] [-p passgen ] [-a событие [, . . .]] рег_имяПодробное ОПИСАНИЕ
Вызов useradd обычно добавляет новую запись о пользователе в файлы данных системы идентификации и проверки идентичности (Identification and Authentication - I&A). Исключением являются пользователи сетевой информационной службы (Network Information Service или, сокращенно, NIS). Она также позволяет задать принадлежность к дополнительным группам для пользователя (опция -G ) и создать для него начальный каталог (опция -m ). Новое регистрационное имя блокируется до тех пор, пока не будет выполнена команда passwd .
Сразу после установки стандартные значения для различных параметров указаны в файле /etc/default/useradd . Стандартные значения для тех из перечисленных ниже опций, которые предполагают использование стандартных значений, можно изменить с помощью команды defadm .
Записи системного файла, создаваемые с помощью этой команды, имеют ограничение длины - 512 символов в строке. Если для нескольких опций заданы длинные аргументы, это ограничение может быть нарушено.
Поддерживаются следующие опции:
-u идентификатор | Идентификационный номер пользователя (UID). Этот номер должен быть неотрицательным целым числом, не превосходящим MAXUID , определенный в sys/param.h . По умолчанию используется следующий доступный (уникальный) не устаревший UID, больший 99. Эта опция игнорируется, если новое регистрационное имя будет администрироваться сетевой информационной службой (NIS). Подробнее об этом см. ниже в разделе "Регистрационные имена сетевой информационной службы". |
-o | Эта опция позволяет сдублировать UID (сделать его не уникальным). Поскольку защита системы в целом, а также целостность контрольного журнала (audit trail) и учетной информации (accounting information) в частности, зависит от однозначного соответствия каждого UID определенному лицу, использовать эту опцию не рекомендуется (чтобы обеспечить учет действий пользователей). |
-i | Позволяет использовать устаревший идентификатор UID. |
-g группа | Целочисленный идентификатор или символьное имя существующей группы. Эта опция задает основную группу (primary group) для нового пользователя. По умолчанию используется стандартная группа, указанная в файле /etc/default/useradd |
-G группа[[,группа] . . .] | Один или несколько элементов в списке через запятую, каждый из которых представляет собой целочисленный идентификатор или символьное имя существующей группы. Этот список определяет принадлежность к дополнительным группам (supplementary group membership) для пользователя. Повторения игнорируются. Количество элементов в списке не должно превосходить NGROUPS_MAX- 1 , поскольку общее количество дополнительных групп для пользователя плюс основная группа не должно превосходить NGROUPS_MAX . Эта опция игнорируется, если новое регистрационное имя будет администрироваться сетевой информационной службой (NIS). См. раздел "Регистрационные имена сетевой информационной службы" ниже. |
-d каталог | Начальный каталог (home directory) нового пользователя. Длина этого поля не должна превосходить 256 символов. По умолчанию используется HOMEDIR/рег_имя , где HOMEDIR - базовый каталог для начальных каталогов новых пользователей, а рег_имя - регистрационное имя нового пользователя. |
-s shell | Полный путь к программе, используемой в качестве начального командного интерпретатора для пользователя сразу после регистрации. Длина этого поля не должна превосходить 256 символов. По умолчанию это поле - пустое, что заставляет систему использовать стандартный командный интерпретатор /usr/bin/sh . В качестве значения shell должен быть указан существующий выполняемый файл. |
-c комментарий | Любая текстовая строка. Обычно, это краткое описание регистрационного имени и используется сейчас для указания фамилии и имени реального пользователя. Эта информация хранится в записи пользователя в файле /etc/passwd . Длина этого поля не должна превосходить 128 символов. |
-m | Создает начальный каталог нового пользователя, если он еще не существует. Если каталог уже существует, добавляемый пользователь должен иметь права на доступ к указанному каталогу. |
-k skel_dir | Копирует содержимое каталога skel_dir в начальный каталог нового пользователя, вместо содержимого стандартного "скелетного" каталога, /etc/skel . Каталог skel_dir должен существовать. Стандартный "скелетный" каталог содержит стандартные файлы, определяющие среду работы пользователя. Заданный администратором каталог skel_dir может содержать аналогичные файлы и каталоги, созданные для определенной цели. |
-f inactive | Максимально допустимое количество дней между использованиями регистрационного имени, когда это имя еще не объявляется недействительным. Обычно в качестве значений используются положительные целые числа. |
-e expire | Дата, начиная с которой регистрационное имя больше нельзя будет использовать; после этой даты никакой пользователь не сможет получить доступ под этим регистрационным именем. (Эта опция удобна при создании временных регистрационных имен.) Вводить значение аргумента expire (представляющего собой дату) можно в любом формате (кроме Julian date). Например, можно ввести 10/6/99 или October 6, 1999 . |
-p passgen | Указывает, что поле FLAG в файле /etc/shadow должно быть установлено в указанное значение. К этому полю обращается команда passwd , чтобы определить, действует ли для данного пользователя генератор паролей. Если опция -p явно не задана, проверяется запись FORCED_PASS в файле /etc/default/useradd , чтобы определить значение для соответствующего поля в /etc/shadow . Если записи FORCED_PASS нет в /etc/default/useradd , в соответствующем поле записи в /etc/shadow значения не будет. Если значение FORCED_PASS равно 1, запись в /etc/shadow получает значение 1. Если значение passgen не пустое и не является печатным символом ASCII, выдается диагностическое сообщение. |
-a событие | Список типов или классов событий через запятую, образующих маску аудита (audit mask) для пользователя. Сразу после установки системы стандартной маски аудита для пользователя нет, но ее можно задать в файле /etc/default/useradd с помощью команды defadm . Эту опцию можно использовать, только если установлены утилиты аудита (Auditing Utilities). (Чтобы узнать, какие пакеты установлены в системе, выполните команду pkginfo .) |
рег_имя | Строка печатных символов, задающая регистрационное имя для нового пользователя. В ней не должно быть двоеточий (: ) и символов перевода строки (\n ). Она также не должна начинаться с прописной буквы. |
Учтите, что многие из стандартных значений для рассмотренных выше параметров можно изменить с помощью команды defadm , предназначенной для работы с файлом /etc/default/useradd . Эти стандартные значения применяются только для локальных пользователей. Для пользователей NIS стандартные значения задаются в базе данных сетевой информационной службы. Чтобы изменить стандартные значения NIS, необходимо задать опции в командной строке.
Регистрационные имена сетевой информационной службы
Если регистрационное имя начинается с символа + , (например, +chris ), определением пользователя будет управлять сетевая информационная служба (NIS). Значения по умолчанию будут определяться на основе базы данных NIS, а не файла /etc/defaults/useradd . Значения аргументов для опций -u , -g и -G будут молча проигнорированы, если эти опции заданы. Вместо этого, значения идентификатора пользователя и идентификатора группы будут взяты из базы данных NIS. Подробнее см. страницу справочного руководства passwd . Учтите, что при добавлении пользователя NIS регистрационное имя должно уже существовать в базе данных NIS. Например, чтобы добавить регистрационное имя chris как имя пользователя NIS, chris уже должен существовать в базе данных NIS. Затем необходимо вызвать useradd с регистрационным именем +chris , чтобы указать, что необходимо добавить пользователя chris как пользователя NIS, а не как локального пользователя.
ФАЙЛЫ
/etc/default/useradd/etc/group
/etc/passwd
/etc/security/ia/ageduid
/etc/security/ia/audit (если установлены утилиты аудита - Auditing Utilties)
/etc/security/ia/index
/etc/security/ia/master
/etc/shadow
/etc/skel
ДИАГНОСТИКА
Команда useradd завершается с кодом возврата 0 в случае успеха. При возникновении ошибок могут быть выданы следующие сообщения:
Неверный синтаксис командной строки.
The command line syntax was invalid.
В опции задан недопустимый аргумент.
An invalid argument was provided with an option.
Указанный в опции -u идентификатор уже используется, а опция -o не указана.
The uid specified with the -u option is already in use and the -o option was not specified.
Указанная в опции -g группа не существует.
The group specified with the -g option does not exist.
Указанное регистрационное имя не уникально.
The specified login is not unique.
Не удалось изменить /etc/group. Регистрационное имя добавлено в файл /etc/passwd, но не в файл /etc/group.
Cannot update /etc/group. The login was added to the /etc/passwd file but not to the /etc/group file.
Не удалось создать начальный каталог (в опции -m) или не удалось выполнить копирование skel_dir в начальный каталог.
Unable to create the home directory (with the -m option) or unable to complete the copy of skel_dir to the home directory.
Идентификатор недостаточно устарел. Выберите другой.
uid not aged sufficiently. Choose another.
Была указана недопустимая опция -a; системная служба не установлена.
An invalid option -a was specified; system service not installed.
Указан недопустимый тип или класс события аудита.
An invalid audit event type or class event was specified.
Основа распределения прав доступа в операционной системе Linux лежит на понятии пользователь. Пользователю-владельцу файла выдаются определенные полномочия для работы с ним, а именно на чтение, запись и выполнение. Также отдельно устанавливаются полномочия на чтение, запись и выполнение для всех остальных пользователей. Поскольку в Linux все есть файлом, то такая система позволяет регулировать доступ к любому действию в этой операционной системе с помощью установки прав доступа на файлы. Но еще при создании Linux, разработчики поняли, что этого явно недостаточно.
Поэтому и были придуманы группы пользователей. Пользователи могут объединяться в группы, чтобы уже группам выдавать нужные полномочия на доступ к тем или иным файлам, а соответственно и действиям. В этой статье мы рассмотрим группы пользователей в Linux, рассмотрим зачем они нужны, как добавить пользователя в группу и управлять группами.
Как я уже сказал группы в Linux появились еще в самом начале разработки этой операционной системы. Они были разработаны для того, чтобы расширить возможности управления правами. Разберем небольшой пример, возьмем организацию в которой есть только один компьютер, у нас есть администраторы и пользователи. У каждого человека свой аккаунт на нашем компьютере. Администраторы могут настраивать систему, пользователям же лучше не давать воли, чтобы что-то не сломали. Поэтому администраторы объединяются в группу admin, и ей дается доступ ко всему оборудованию, реально же ко всем файлам в каталоге dev, а пользователи, объеденные в группу users, и этой группе дается возможность читать и записывать файлы в общий каталог, с помощью которого они могут обмениваться результатами своей работы. Мы могли бы назначать права для каждого пользователя отдельно разрешая ему доступ к тому или иному файлу, но это слишком неудобно. Поэтому и были придуманы группы. Говорите, да ничего, можно назначить? Ну а теперь представьте что наши пользователи - это процессы. Вот тут вся краса групп выходит на передний план, группы используются не столько для обеспечения доступа для пользователей, сколько для управления правами программ, особенно их доступом к оборудованию. Для сервисов создаются отдельные группы и пользователь, от имени которого запущен он, сервис может состоять в нескольких группах, что обеспечивает ему доступ к определенным ресурсам.
А теперь давайте рассмотрим как посмотреть группы linux.
Группы в Linux
Все группы, созданные в системе, находятся в файле /etc/group. Посмотрев содержимое этого файла, вы можете узнать список групп linux, которые уже есть в вашей системе. И вы будете удивлены.
Кроме стандартных root и users, здесь есть еще пару десятков групп. Это группы, созданные программами, для управления доступом этих программ к общим ресурсам. Каждая группа разрешает чтение или запись определенного файла или каталога системы, тем самым регулируя полномочия пользователя, а следовательно, и процесса, запущенного от этого пользователя. Здесь можно считать, что пользователь - это одно и то же что процесс, потому что у процесса все полномочия пользователя, от которого он запущен.
Давайте подробнее рассмотрим каждую из групп, чтобы лучше понимать зачем они нужны:
- daemon - от имени этой группы и пользователя daemon запускаютcя сервисы, которым необходима возможность записи файлов на диск.
- sys - группа открывает доступ к исходникам ядра и файлам include сохраненным в системе
- sync - позволяет выполнять команду /bin/sync
- games - разрешает играм записывать свои файлы настроек и историю в определенную папку
- man - позволяет добавлять страницы в директорию /var/cache/man
- lp - позволяет использовать устройства параллельных портов
- mail - позволяет записывать данные в почтовые ящики /var/mail/
- proxy - используется прокси серверами, нет доступа записи файлов на диск
- www-data - с этой группой запускается веб-сервер, она дает доступ на запись /var/www, где находятся файлы веб-документов
- list - позволяет просматривать сообщения в /var/mail
- nogroup - используется для процессов, которые не могут создавать файлов на жестком диске, а только читать, обычно применяется вместе с пользователем nobody.
- adm - позволяет читать логи из директории /var/log
- tty - все устройства /dev/vca разрешают доступ на чтение и запись пользователям из этой группы
- disk - открывает доступ к жестким дискам /dev/sd* /dev/hd*, можно сказать, что это аналог рут доступа.
- dialout - полный доступ к серийному порту
- cdrom - доступ к CD-ROM
- wheel - позволяет запускать утилиту sudo для повышения привилегий
- audio - управление аудиодрайвером
- src - полный доступ к исходникам в каталоге /usr/src/
- shadow - разрешает чтение файла /etc/shadow
- utmp - разрешает запись в файлы /var/log/utmp /var/log/wtmp
- video - позволяет работать с видеодрайвером
- plugdev - позволяет монтировать внешние устройства USB, CD и т д
- staff - разрешает запись в папку /usr/local
Теперь, когда вы знаете зачем использовать группы в linux и какие они есть по умолчанию, рассмотрим управление группами LInux.
Управление группами Linux
Управлять группами можно и с помощью графического интерфейса. В KDE есть программа Kuser специально предназначенная для этого, в Gnome это выполняется с помощью настроек системы. Кроме того, в популярных дистрибутивах есть отдельные инструменты, такие как YaST в OpenSUSE или Настройки Ubuntu. Но с графическим интерфейсом я думаю вы разберетесь. А мы рассмотрим управление группами linux через терминал. Сначала разберемся с файлами, а уже потом с пользователями.
При создании файла ему назначается основная группа пользователя который его создал. Это просто например:
Здесь вы можете видеть, что владелец всех папок sergiy и группа тоже sergiy. Правильно, так как эти пользователи были созданы мной. Но давайте пойдем дальше:
Здесь мы видим что дисковым устройствам sd* назначена группа disk, а это все значит, что пользователь, состоящий в этой группе, может получить к ним доступ. Или еще пример:
Все как мы рассматривали в предыдущем пункте. Но эти группы могут быть не только установлены системой, но и вы сами вручную можете менять группы файлов для этого есть команда chgrp:
chgrp имя_группы имя_файла
Например создадим файл test:
И изменим для него группу:
Если вы хотите создать группу linux, это можно сделать командой newgrp:
sudo groupadd test
С пользователями ситуация немного сложнее. Пользователь имеет основную группу, она указывается при создании, а также несколько дополнительных. Основная группа отличается от обычных тем, что все файлы в домашнем каталоге пользователя имеют эту группу, и при ее смене, группа этих каталогов тоже поменяется. Также именно эту группу получают все файлы созданные пользователем. Дополнительные группы нужны, чтобы мы могли разрешить пользователям доступ к разным ресурсам добавив его в эти группы в linux.
Управление группами Linux для пользователя выполняется с помощью команды usermod. Рассмотрим ее синтаксис и опции:
$ usermod опции имя_пользователя
- -G - дополнительные группы, в которые нужно добавить пользователя
- -g изменить основную группу для пользователя
- -R удалить пользователя из группы.
Добавить пользователя в группу можно командой usermod:
sudo usermod -G -a имя_группы имя_пользователя
Можно добавить пользователя в группу linux временно, командой newgrp. Откроется новая оболочка, и в ней пользователь будет иметь нужные полномочия, но после закрытия все вернется как было:
sudo newgrp имя_группы
Для примера давайте добавим нашего пользователя в группу disk, чтобы иметь прямой доступ к жестким дискам без команды sudo:
sudo usermod -G -a disk sergiy
Теперь вы можете монтировать диски без команды sudo:
mount /dev/sda1 /mnt
Посмотреть группы linux, в которых состоит пользователь можно командой:
Также можно использовать команду id. В первом случае мы просто видим список групп linux, во втором дополнительно указанны id группы и пользователя. Чтобы включить пользователя в группу Linux, для основной группы используется опция -g.
В том числе и ОС Linux, со всеми её многочисленными оболочками. Эта статья поможет всем интересующимся разобраться, как добавить пользователя в группу Linux, а также создать, изменить и удалить их. Поехали!
Настройка грyпп и юзеров происходит в консольном режиме
Начнём с разбора процедуры создания. Как и всё остальное, эта операция выполняется посредством специальной команды, которая в нашем случае имеет следующий синтаксис:
Обратите внимание, что для внесения подобных изменений в систему, вам необходимы root-права. Если вы их не имеете, то добавляйте «sudo» в начале каждой вводимой вами команды, чтобы они успешно выполнялись.
Таким образом создаётся новая учётная запись. Чтобы создание проходило со специальными настройками , можно утилизировать определённые ключи, ознакомиться с их списком вы можете ниже:
В том случае, если создание с параметрами не удалось осуществить, попробуйте прописать следующее:
Указанная строка позволит вам просмотреть все настройки.
Изменить эти параметры вам позволит строка:
Для изменения информации и параметров используйте утилиту usermod. Команда будет иметь следующий синтаксис:
Задать или поменять пароль дозволено следующим образом. Введите:
После этого потребуется написать желаемый пароль либо, если он уже был установлен, ввести старый, а после - новый.
Также у вас есть возможность задать пустой пароль . В таком случае команда будет иметь вид:
С точки зрения безопасности, не следует создавать «юзера» без соответствующего пароля. Однако, это актуально только для администраторов фирм и компаний. Для домашнего использования в этом нет необходимости.
Для удаления используйте userdel. Синтаксис в нашем случае будет иметь вид:
Также можно создавать группы, в которые впоследствии будут перемещены учётные записи. Чтобы сделать это, пропишите:
Как и в предыдущих случаях, вы можете эксплуатировать специальные ключи для установки дополнительных параметров:
Теперь рассмотрим, как добавить созданного «юзера» в созданную группу. Для этого необходимо прописать следующую строку:
sudo usermod -aG testgroup vasyapupkin
Для тех, кто использует не «голый» Linux, а самую популярную его оболочку - Ubuntu, разберём работу с учётными записями через графический интерфейс. Изначально в Ubuntu отсутствует необходимая утилита для работы с ними, и все операции проводятся через командную строку. Однако, нужную утилиту можно установить, прописав:
sudo apt-get install gnome-system-tools
После того как установка будет завершена, вы легко сможете выполнить те же операции, что и через командную строку. Достаточно перейти в «Свойства», а там уже вы сможете добавить, изменить и удалить их по своему усмотрению.
Просмотреть список всех созданных пользователей вместе с информацией о них можно в специальном системном файле -/etc/passwd.
Теперь вы знаете, как работать с пользователями и группами в операционной системе Linux. Оставляйте свой отзыв об этой статье и задавайте интересующие вас вопросы в комментариях.