Я хотел бы знать, почему требуется перезагрузка, чтобы применить изменения, которые я сделал.
Я имею в виду использование
adduser username sudo
Я использую Ubuntu 12.04.1 LTS «Сервер».
для проверки с вашего терминала вызова
id
, который покажет вам ваше имя пользователя и группу, для вашего текущего сеанса входа в систему. это единственный способ точно узнать, были ли ваши изменения правильными. Вывод будет примерно таким:
uid = 102 (andrew) gid = 101 (пользователи) groups = 101 (пользователи), 14 (sysadmin)
Вы не обязаны перезагружать систему, но вы должны выйти из системы и снова войти в систему . Членство в группе оценивается только во время входа.
Если вы находитесь в ситуации, когда выход из системы и возврат к ней неудобен (например, сеанс SSH), то вы можете просто создать подоболочку входа в систему с su - <user>
(или эквивалентно su -l <user>
или su --login <user>
), но это будет работать только в этом подоболочке.
(спасибо стилдрайверу за это).
В дополнение к предыдущим ответам:
Можно также "активировать" группу в данном терминале путем высказывания newgrp name_of_group
.
Пример:
% whoami
kindaro
% groups # Where we start at.
shared nix wheel kindaro
% sudo usermod --append --groups audio kindaro # Let us add a group membership.
% groups # As you see, nothing changed yet.
shared nix wheel kindaro
% newgrp audio
% groups # Now the change is in effect.
audio shared nix wheel kindaro
То, что делает эта команда, создают новый процесс оболочки по одному уже выполнению. Если Вы не хотите иметь оболочку в оболочке, можно выполниться exec newgrp ...
вместо этого.