Где и как информация о группах пользователей хранится в Ubuntu?
Зеркальный вопрос: https://unix.stackexchange.com/questions/217300/where-how-is-user-group-information-stored-in-ubuntu. (Я удалю один из них после того, как получу ответ)
Возможны два места: / etc / group и / etc / passwd.
Если я использую команду: adduser [username] [groupname]
Затем пользователь будет добавлен в группу, и файл /etc/group
будет обновлен.
Тем не менее, файл /etc/passwd
не обновляется если я проверю, к какой группе я принадлежу, через groups
Команда, я могу видеть только группы, указанные в passwd
файл.. следовательно, пользователь не добавляется в группу базы по этому результату.
Я не совсем понимаю.
- В чем смысл рассказывать информацию группы в
/etc/passwd
, а также/etc/group
соответственно? - Зачем
adduser
только обновитьgroup
файл? - Как добавить группу в
passwd
файл через команду? - Почему
groups
вернуть информацию о группе изpasswd
файл, но неgroup
файл?
Благодарю.
1 ответ
Решение
- В этих традиционных текстовых файлах (есть и другие способы, например, LDAP), ваша основная группа
/etc/passwd
(например, он используется для прав доступа к файлам, которые вы создаете), все дополнительные группы идут в/etc/group
, - см. 1
- Это невозможно, но вы можете изменить основную группу с помощью
usermod -g
- Это неверное толкование,
groups
показывает все группы. Но новая группа выбирается только тогда, когда вы начинаете новый сеанс (новый логин). Вы можете использоватьnewgrp
команда, которая запускает сеанс с указанным именем группы в качестве вашей основной группы (вы должны быть членом этой группы) - в качестве побочного эффекта она будет обращаться к базе данных пользователей и обновлять список ваших групп.