Добавление пользователя осуществляется при помощи команды useradd
. Пример использоания:
sudo useradd vasyapupkin
Эта команда создаст в системе нового пользователя vasyapupkin. Чтобы изменить настройки создаваемого пользователя, вы можете использовать следующие ключи:
КлючОписание
-b
Базовый каталог. Это каталог, в котором будет создана домашняя папка пользователя. По умолчанию /home
-с
Комментарий. В нем вы можете напечатать любой текст.
-d
Название домашнего каталога. По умолчанию название совпадает с именем создаваемого пользователя.
-e
Дата, после которой пользователь будет отключен. Задается в формате ГГГГ-ММ-ДД. По умолчанию отключено.
-f
Количество дней, которые должны пройти после устаревания пароля до блокировки пользователя, если пароль не будет изменен (период неактивности). Если значение равно 0, то запись блокируется сразу после устаревания пароля, при -1 - не блокируется. По умолчанию -1.
-g
Первичная группа пользователя. Можно указывать как GID, так и имя группы. Если параметр не задан будет создана новая группа название которой совпадает с именем пользователя.
-G
Список вторичных групп в которых будет находится создаваемый пользователь
-k
Каталог шаблонов. Файлы и папки из этого каталога будут помещены в домашнюю папку пользователя. По умолчанию /etc/skel.
-m
Ключ, указывающий, что необходимо создать домашнюю папку. По умолчанию домашняя папка не создается.
-p
Зашифрованный пароль пользователя. По умолчанию пароль не задается, но учетная пользователь будет заблокирован до установки пароля
-s
Оболочка, используемая пользователем. По умолчанию /bin/sh.
-u
Вручную задать UID пользователю.
Параметры создания пользователя по умолчанию
Если при создании пользователя не указываются дополнительные ключи, то берутся настройки по умолчанию. Эти настройки вы можете посмотреть выполнив
useradd -D
Результат будет примерно следующий:
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no
Если вас не устраивают такие настройки, вы можете поменять их выполнив
sudo useradd -D -s /bin/bash
где -s
это ключ из таблицы выше.
Таким образом могут быть заданы параметры, определяемые только ключами: -b -e -f -g -s
Изменение параметров пользователя происходит с помощью утилиты usermod
. Пример использования:
sudo usermod -c "Эта команда поменяет комментарий пользователю" vasyapupkin
usermod использует те же опции, что и useradd.
Изменить пароль пользователю можно при помощи утилиты passwd
.
sudo passwd vasyapupkin
passwd может использоваться и обычным пользователем для смены пароля. Для этого пользователю надо ввести
passwd
и ввести старый и новый пароли.
Основные ключи passwd:
КлючОписание
-d
Удалить пароль пользователю. После этого пароль будет пустым, и пользователь сможет входить в систему без предъявления пароля.
-e
Сделать пароль устаревшим. Это заставит пользователя изменить пароль при следующем входе в систему.
-i
Заблокировать учетную запись пользователя по прошествии указанного количества дней после устаревания пароля.
-n
Минимальное количество дней между сменами пароля.
-x
Максимальное количество дней, после которого необходимо обязательно сменить пароль.
-l
Заблокировать учетную запись пользователя.
-u
Разблокировать учетную запись пользователя.
Супер пользователь с помощью утилит командной строки passwd и usermod или путем редактирования файла /etc/shadow может удалить пароль пользователь, дав возможность входить в систему без указания пароля.
sudo passwd -d vasyapupkin
или
sudo usermod -p "" vasyapupkin
Если учетная запись пользователя в этот момент была заблокирована командой passwd -l, то указанные выше команды так же снимут эту блокировку
Установка пустого пароля может быть полезна как временное решение проблемы в ситуации, когда пользователь забыл свой пароль или не может его ввести из-за проблем с раскладкой клавиатуры. После этого имеет смысл принудить пользователя установить себе новый пароль при следующем входе в систему
sudo passwd -e vasyapupkin
w
– вывод информации (имя пользователя, рабочий терминал, время входа в систему, информацию о потребленных ресурсах CPU и имя запущенной программы) о всех вошедших в систему пользователях.who
– вывод информации (имя пользователя, рабочий терминал, время входа в систему) о всех вошедших в систему пользователях.who am i
или whoami
или id
– вывод вашего имени пользователя.users
– вывод имен пользователей, работающих в системе.id имя_пользователя
– вывод о идентификаторах пользователя: его uid, имя_пользователя, gid и имя первичной группы и список групп в которых состоит пользовательgroups имя_пользователя
– вывод списка групп в которых состоит пользователь.Для того, чтобы удалить пользователя воспользуйтесь утилитой userdel
. Пример использования:
sudo userdel vasyapupkin
userdel имеет всего два основных ключа:
КлючОписание
-f
Принудительно удалить пользователя, даже если он сейчас работает в системе.
-r
Удалить домашний каталог пользователя.
Программа groupadd
создаёт новую группу согласно указанным значениям командной строки и системным значениям по умолчанию. Пример использования:
sudo groupadd testgroup
Основные ключи:
КлючОписание
-g
Установить собственный GID.
-p
Пароль группы.
-r
Создать системную группу.
Сменить название группы, ее GID или пароль можно при помощи groupmod
. Пример:
sudo groupmod -n newtestgroup testgroup #Имя группы изменено с testgroup на newtestgroup
Опции groupmod:
КлючОписание
-g
Установить другой GID.
-n
Новое имя группы.
-p
Изменить пароль группы.
Удаление группы происходит так:
sudo groupdel testgroup
groupdel не имеет никаких дополнительных параметров.
Изменять параметры пользователей и групп можно не только при помощи специальных утилит, но и вручную. Все настройки хранятся в текстовых файлах. Описание каждого из них приведено ниже.
В файле /etc/passwd хранится вся информация о пользователях кроме пароля. Одна строка из этого файла соответствует описанию одного пользователя. Примерное содержание строки таково:
vasyapupkin:x:1000:1000:Vasya Pupkin:/home/vpupkin:/bin/bash
Строка состоит из нескольких полей, каждое из которых отделено от другого двоеточием. Значение каждого поля приведено в таблице.
№ПолеОписание
1
vasyapupkin
Имя пользователя для входа в систему.
2
x
Необязательный зашифрованный пароль.
3
1000
Числовой идентификатор пользователя (UID).
4
1000
Числовой идентификатор группы (GID).
5
Vasya Pupkin
Поле комментария
6
/home/vpupkin
Домашний каталог пользователя.
7
/bin/bash
Оболочка пользователя.
Второе и последнее поля необязательные и могут не иметь значения.
В /etc/group, как очевидно из названия хранится информация о группах. Она записана в аналогичном /etc/passwd виде:
vasyapupkin:x:1000:vasyapupkin,petya
№ПолеОписание
1
vasyapupkin
Название группы
2
x
Необязательный зашифрованный пароль.
3
1000
Числовой идентификатор группы (GID).
4
vasyapupkin,petya
Список пользователей, находящихся в группе.
В этом файле второе и четвертое поля могут быть пустыми.
Файл /etc/shadow хранит в себе пароли, по этому права, установленные на этот файл, не дают считать его простому пользователю. Пример одной из записей из этого файла:
vasyapupkin:$6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0:15803:0:99999:7:::
Здесь:
№ПолеОписание
1
vasyapupkin
Имя пользователя для входа в систему.
2
$6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0
Необязательный зашифрованный пароль.
3
15803
Дата последней смены пароля.
4
0
Минимальный срок действия пароля.
5
99999
Максимальный срок действия пароля.
6
7
Период предупреждения о пароле.
7
Период неактивности пароля.
9
Дата истечения срока действия учётной записи.
В текущей версии Ubuntu отсутствует штатная утилита управления группами пользователей системы, поэтому по умолчанию все действия с группами необходимо выполнять в консоли. Однако для этих целей существует специальная утилита «Пользователи и группы».
Пакет gnome-system-tools находится в репозитории Ubuntu, поэтому ставится одной командой:
sudo apt-get install gnome-system-tools
Для добавления, удаления групп, а также добавления\удаления пользователей в\из конкретных групп, необходимо в главном окне нажать кнопку «Управление группами», после чего вы увидите окно, отображающее все присутствующие в системе группы:в котором выбрав нужную группу и нажав «Свойства» можно отметить галочкой пользователей, которых необходимо внести в группу.