Як додати користувача до групи "sudo"?


187

У /etc/sudoersцьому я бачу:

# Allow members of group sudo to execute any command after they have
# provided their password
# (Note that later entries override this, so you might need to move
# it further down)
%sudo ALL=(ALL) ALL

Тож як додати користувача до цієї sudoгрупи?


Хтось ще тут намагається змусити судо працювати без пароля на ubuntu 17?
Адам Ф

@AdamF дивіться тут . Наступного разу задайте нове запитання, чи хочете ви швидшої відповіді. ;-)
Fabby

Кавомолка: чи не заперечуєте ви змінити своє прийняття на найбільш високообов’язковий відповідь, оскільки це кращий спосіб зробити це? (пароль взагалі немає)
Fabby

Відповіді:


250
sudo usermod -aG sudo <username>

Це aдуже важливо. Без цього вони будуть видалені з усіх інших груп. Вам потрібно буде перезапустити оболонку / термінал або вийти з системи та повернутися назад, щоб це набуло чинності.

Дивитися також:


Я зробив те, що рекомендував, але термінал сказав мені bash: sudo: command not found, чому?
Теїфі

@Teifi, це означає, що ви, мабуть, не sudoвстановили або, з якоїсь дивної причини, це не на вашому шляху. Що відбувається, коли ти біжиш which sudo?
n0pe

Нових терміналів було недостатньо. Закінчився перезавантаження з іншої причини, і тепер це працює. Можливо, вийти / увійти.
de0202392

Я знаю a, що для додавання, але я думаю, що корисніше мати додавання як поведінку за замовчуванням. Створити псевдонім легко, так що це буде спосіб його groupadd groupпросто додати. Я зробив команду без -а одного разу сьогодні, оскільки я не пам’ятав -aаргументу.
erm3nda

Хоча це форум Ubuntu, для CentOS мені довелося це зробити sudo usermod -aG sudo <username>. Тому що для мене це було не просто.
аккі

43

Ви можете або використовувати GUI управління користувачем для нього (те саме місце, де ви створюєте користувачів), або використовувати sudo adduser <username> sudoв командному рядку.


2
Про це також йдеться в документації на ubuntu на RootSudo, хоча вони посилаються на адмінгрупу замість групи sudo
icc97

8
+1: це найпростіший для запам'ятовування простий та інтуїтивний спосіб додавання користувача до групи!
Андреа Корбелліні

Це дає мені помилку сказатиUsage: adduser [options] LOGIN\n adduser -D\n adduser -D [options]\n
akki

23

Можна також використовувати графічний інтерфейс. Клацніть на шестірні в правій верхній частині панелі, потім виберіть "Налаштування системи", а потім "Облікові записи користувачів"

Для редагування речей у цьому вікні вам потрібно натиснути кнопку розблокування. Потім натисніть на обліковий запис особи та виберіть потрібне спадне меню для "Тип облікового запису"

введіть тут опис зображення


У мене є Ubuntu 10.10, але мій графічний інтерфейс якимось чином заблокований. Він відкривається, але я при натисканні кнопок нічого не відбувається. Я припускаю, що це щось пов'язане з привілеями (я насправді судо). Як я можу вирішити це питання?
linello

Ви натиснули кнопку "розблокувати"?
даборосс

Приємна анімація! Я хотів би зробити таку gif-анімацію, щоб показати нові функції мого веб-додатка? Я на Lubuntu 16.04 ...
Стефан

20

Це дуже просто, якщо ви використовуєте Unity в якості робочого середовища.

Якщо ви вже створили користувача, ви можете просто змінити його зі " Стандартного" на " адміністратор" , інакше переконайтесь, що вибрали адміністратора під час створення нового.

Не забудьте розблокувати, перш ніж спробувати змінити його

введіть тут опис зображення


2
Дуже круто виглядає анімація GIF! +1 Як ти це зробив? Переїхав питання тут .
hhh



2

Я запізнююся на вечірку, але ця відповідь може допомогти тому, хто використовує Ubuntu всередині контейнера Docker.

Нещодавно я створив контейнер Docker на базі Ubuntu 16.04.1.

За замовчуванням зображення Docker Ubuntu - це зведена версія Ubuntu, яка не має переважної більшості поширених інструментів, в тому числі sudo.

Крім того, за замовчуванням користувач увійшов до контейнера Docker як корінь.

Тому я запустив контейнер з docker runкомандою та встановив пакет 'sudo':

root@default:/# apt-get install sudo

Запуск команди adduser myuser sudoповідомив про помилку adduser: The user 'myuser' does not exist.. Прочитавши цю відповідь , я спершу запустив команду для створення користувача:

root@default:/# adduser myuser

Потім виконано таку команду:

root@default:/# adduser myuser sudo
Adding user `myuser' to group `sudo' ...
Adding user myuser to group sudo
Done.

Користувача myuser було успішно додано до групи sudo.


1

Використовуйте usermod. Додайте дозвіл sudo за допомогою наступної команди:

usermod -aG sudo <your username>

Зауважте, що для цього вам доведеться використовувати кореневий обліковий запис або використовувати інший обліковий запис, який має дозволи sudo. Якщо ви з якоїсь причини не маєте доступу до іншого облікового запису, і не знаєте кореневого пароля, вам знадобиться живий компакт-диск Ubuntu (або інший дистрибутив Linux), і тоді вам доведеться хронізувати у вашу файлову систему Ubuntu і запустіть вищевказану команду зсередини chroot.


1

Ось як я настроюю некорінного користувача з базовим зображенням ubuntu:18.04:

RUN \
    groupadd -g 999 foo && useradd -u 999 -g foo -G sudo -m -s /bin/bash foo && \
    sed -i /etc/sudoers -re 's/^%sudo.*/%sudo ALL=(ALL:ALL) NOPASSWD: ALL/g' && \
    sed -i /etc/sudoers -re 's/^root.*/root ALL=(ALL:ALL) NOPASSWD: ALL/g' && \
    sed -i /etc/sudoers -re 's/^#includedir.*/## **Removed the include directive** ##"/g' && \
    echo "foo ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers && \
    echo "Customized the sudoers file for passwordless access to the foo user!" && \
    echo "foo user:";  su - foo -c id

Що відбувається з наведеним вище кодом:

  • Користувач і група fooстворені.
  • Користувач fooдодається як до групи, так fooі до sudoгрупи.
  • Значення uidі gidвстановлюється на значення 999.
  • Домашній каталог встановлено на /home/foo.
  • Оболонку встановлено на /bin/bash.
  • sedКоманда виконує вбудовані поновлення в /etc/sudoersфайл , щоб fooі rootкористувачів беспарольному доступу до sudoгрупі.
  • sedКоманда відключає #includedirдирективу , яка дозволить будь-які файли в підкаталогах , щоб перевизначити ці оновлення інлайн.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.