Как я могу добавить нового пользователя как sudoer с помощью командной строки?
После того как я добавлю пользователя с помощью adduser
Я не вижу его через Система> Администрирование> Пользователи и группы, если я не выйду из системы, а затем снова войду в систему. Это нормально?
Кроме того, я могу установить недавно добавленного пользователя как sudo
или я должен изменить это только после добавления? Как я могу сделать это через оболочку?
Наконец, могу ли я удалить первоначального пользователя, который был создан при первоначальной установке Ubuntu, или этот пользователь как-то "особенный"?
7 ответов
Просто добавьте пользователя в sudo
группа:
sudo adduser <username> sudo
Изменение вступит в силу при следующем входе пользователя в систему.
Это работает, потому что /etc/sudoers
предварительно настроен для предоставления разрешений всем членам этой группы (вам не нужно вносить в это какие-либо изменения):
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
Если у вас есть доступ к пользователю, входящему в те же группы, что и ваш "оригинальный" пользователь, вы можете удалить старого.
На самом деле, есть и другие группы, в которые должен войти ваш новый пользователь. Если вы установили тип учетной записи пользователя "Администратор" в настройках пользователя, он будет размещен по крайней мере во всех этих группах:
adm sudo lpadmin sambashare
Поскольку конфигурация вашей системы может отличаться, я предлагаю взглянуть на вывод groups <username>
чтобы увидеть, какие группы обычно используются.
Откройте файл sudoers: sudo visudo
откроет /etc/sudoers
файл в редакторе, определенном в $EDITOR
(вероятно, GNU nano - установите переменную, если это не то, что вы хотите, например export EDITOR="nano"
и попробовать sudo visudo
снова).
Добавьте строку ниже в конец файла.
username ALL=(ALL) ALL # Change the user name before you issue the commands
Затем выполните WriteOut с помощью Ctrl + O. Редактор попросит вас указать имя файла для записи. По умолчанию будет временный файл, который используется visudo
проверить синтаксические ошибки перед сохранением в актуальный sudoers
файл. Нажмите Enter, чтобы принять его. Выйдите из редактора нано с помощью Ctrl + X.
Готово!
Я должен добавить, что многие люди не понимают:
Как только вы уже сделали adduser "username"
, вы все еще можете вернуться и сделать adduser "username" sudo
и затем он добавит этого пользователя в группу должным образом.
Это на самом деле не будет работать в первый раз, как sudo adduser username sudo
, Это даст вам ошибку. Что в итоге означает, что вы должны сначала создать учетную запись пользователя, прежде чем вы сможете добавить их в группу.
На CentOS я делаю как root
echo ' username ALL=(ALL) ALL' >> /etc/sudoers
Следующий фрагмент предоставляет root-доступ к имени пользователя без явного входа в систему как root.
Убедитесь, что пользователь добавлен в группу sudo первым. Проверено на Ubuntu 16.04.1 LTS.
sudo adduser username sudo
sudo sh -c "echo 'username ALL=NOPASSWD: ALL' >> /etc/sudoers"
Все участники группы admin
в Ubuntu по умолчанию разрешено использовать sudo, поэтому проще всего добавить учетную запись пользователя в admin
группа.
Если вы не хотите предоставлять учетной записи пользователя полный root-доступ, вам нужно отредактировать файл /etc/sudoer с помощью visudo (он гарантирует, что у вас нет синтаксических ошибок в файле и вообще потеряет возможность sudo) что вы указываете, какие команды этот пользователь (или новая группа) может выполнять от имени пользователя root.
Руководство sudoer даст вам больше информации об этом. Вы можете указать, какие команды разрешены конкретному пользователю / группе для выполнения от имени пользователя root.