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

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

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

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

729 голосов | спросил David B 15 +04002010-10-15T16:02:45+04:00312010bEurope/MoscowFri, 15 Oct 2010 16:02:45 +0400 2010, 16:02:45

7 ответов


920

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

ответил ændrük 15 +04002010-10-15T16:35:10+04:00312010bEurope/MoscowFri, 15 Oct 2010 16:35:10 +0400 2010, 16:35:10
155

Я сделал

sudo usermod -a -G sudo <username>

, как рекомендовано здесь .

ответил Leszek 21 42013vEurope/Moscow11bEurope/MoscowThu, 21 Nov 2013 18:25:03 +0400 2013, 18:25:03
65

Откройте файл 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 , чтобы принять его. Выйдите из редактора nano с помощью Ctrl + X .

Готово!

ответил Mithun Sreedharan 16 MaramFri, 16 Mar 2012 08:53:48 +04002012-03-16T08:53:48+04:0008 2012, 08:53:48
26

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

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

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

ответил TaunT406 12 ThuEurope/Moscow2013-12-12T20:52:13+04:00Europe/Moscow12bEurope/MoscowThu, 12 Dec 2013 20:52:13 +0400 2013, 20:52:13
9

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

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

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

ответил txwikinger 15 +04002010-10-15T16:34:09+04:00312010bEurope/MoscowFri, 15 Oct 2010 16:34:09 +0400 2010, 16:34:09
7

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

echo ' username ALL=(ALL)   ALL' >> /etc/sudoers
ответил jowan sebastian 3 MarpmThu, 03 Mar 2016 22:03:44 +03002016-03-03T22:03:44+03:0010 2016, 22:03:44
3

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

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

sudo adduser username sudo
sudo sh -c "echo 'username ALL=NOPASSWD: ALL' >> /etc/sudoers"
ответил Sandeep 29 ThuEurope/Moscow2016-12-29T17:26:35+03:00Europe/Moscow12bEurope/MoscowThu, 29 Dec 2016 17:26:35 +0300 2016, 17:26:35

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132