Вопрос Как добавить нового пользователя в sudoer с помощью командной строки?


После добавления пользователя, использующего adduser, Я не вижу его через Система> Администрирование> Пользователи и группы если я не выйду из системы, а затем снова войдите в систему. Это нормально?

Кроме того, могу ли я установить вновь добавленного пользователя в качестве sudoer или мне нужно изменить это только после его добавления? Как я могу это сделать через оболочку?

Наконец, могу ли я удалить оригинального пользователя, который был создан при начальной установке Ubuntu, или этот пользователь как-то «особенный»?


742
2017-10-15 12:02


происхождения




ответы:


Просто добавьте пользователя в 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> чтобы узнать, какие группы обычно используются.


928
2017-10-15 12:35



@Dziamid Я не уверен, что sudo группа для. Давай выясним. - ændrük
Обратите внимание, что admin группы не существует в 12.04 LTS. - Ryan
Речь идет о существующем пользователе, но если он был для нового пользователя "sudo adduser <имя пользователя> sudo" должно предшествовать "sudo adduser <имя пользователя>", В противном случае вы получите сообщение об ошибке «Пользователь <имя пользователя> не существует». - Peter Mortensen
это не сработало для меня. все еще нельзя использовать sudo. - chovy
Пришлось снова войти в систему, чтобы он работал. - PeterM


я сделал

sudo usermod -a -G sudo <username>

как рекомендовано Вот,


162
2017-11-21 14:25



группы sudo не существует - Arin
Единственное рабочее решение здесь. Ubuntu 16 - Makan Tayebi
Для существующего пользователя это правильное решение. Он должен быть отмечен как ответ. - Yokai
Не забудь -a или вы удалите пользователя из всех групп, кроме sudo - RousseauAlexandre


Откройте файл 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 + О, Редактор попросит вас записать имя файла. По умолчанию используется временный файл, который используется visudo для проверки ошибок синтаксиса перед сохранением фактического sudoers файл. Нажмите Войти принять его. Закройте редактор nano Ctrl + Икс,

Готово!


68
2018-03-16 04:53



Было бы нецелесообразно явно добавлять одного пользователя в файл sudoers вместо простого добавления этого пользователя в соответствующую группу sudo, - Kzqai
с sudo visudo вы можете выводить на /etc/sudoers.tmp, оставляя редактор, он сам перезапишет / etc / sudoers - Climbatize
и visudo проверит синтаксис, чтобы убедиться, что ошибок нет - mchid
синтаксическая ошибка при использовании этого. - jheriko
Другие решения отлично подходят для ОС со встроенным sudo группы, но для случайной системы без специального sudo группа, это решение работает. Единственная рекомендация, которую я имею, - это, возможно, sudo сам внутри процедуры, так как он еще не настроен! Легко обходиться, делая su - а затем просто visudio, Это работает на Gentoo. - tresf


Одно я должен добавить, что я уверен, что многие люди не понимают:

После того, как вы уже сделали adduser "username", вы все равно можете вернуться и сделать adduser "username" sudo, и он затем добавит этого пользователя в группу правильно.

Это на самом деле не будет работать в первый раз, как sudo adduser username sudo, Это даст вам ошибку. Что в итоге означает, что вы должны сначала сделать учетную запись пользователя, прежде чем сможете добавить их в группу.


27
2017-12-12 16:52





Все члены группы admin, в Ubuntu по умолчанию разрешено использовать sudo, поэтому самый простой способ - добавить учетную запись пользователя в admin группа.

Если вы не хотите предоставлять полный доступ к учетным записям пользователя, вам необходимо отредактировать файл / etc / sudoer с помощью visudo (он гарантирует, что у вас нет синтаксических ошибок в файле и вообще не потеряйте возможности sudo) таким образом что вы указываете, какие команды этот пользователь (или новая группа) могут выполнять как root.

руководство пользователя sudoer даст вам больше информации об этом. Вы можете указать, какие команды разрешены конкретным пользователем / группой для выполнения с правами root.


10
2017-10-15 12:34



Я думал, что это то, что wheel группа была для? - Marco Ceppi♦
@Marco Я не знаком с этим. Можете ли вы объяснить немного больше? - ændrük
@MarcoCeppi, группа колес использовалась в некоторых системах для ограничения того, что пользователи могут использовать su, Ubuntu использует sudo и административной группы. - psusi


на CentOS, я делаю как root

echo ' username ALL=(ALL)   ALL' >> /etc/sudoers

8
2018-03-03 19:03





Следующий фрагмент предоставляет root-доступ к имени пользователя без явного входа в систему под именем root.

Убедитесь, что пользователь сначала добавлен в группу sudo. Протестировано на Ubuntu 16.04.1 LTS.

sudo adduser username sudo
sudo sh -c "echo 'username ALL=NOPASSWD: ALL' >> /etc/sudoers"

5
2017-12-29 14:26



это работает на Ubuntu? - jowan sebastian
Да, проверено на Ubuntu 16.04 - Sandeep
почему не в одной строке: useradd -m username --groups sudo - Aidan Melen