Як надати користувача права доступу до root?


12

Я щойно встановив Arch. Чудово працює. Я створив нового користувача, увійшов у нього і зараз намагаюся встановити кілька речей pacman. Але я все одно отримую помилку: error: you cannot perform this operation unless you are root.я можу користуватися pacmanз root просто чудово, але чи є спосіб дозволити моєму новому користувачеві виконувати ці дії?

Я спробував увійти в root та за допомогою gpasswd:

gpasswd -a jack root

але це нічого не зробило.


1
Як загальна примітка, вікі Arch Arch є дійсно корисною та детальною.
Алекс Чемберлен

Відповіді:


17

Ви повинні прочитати сторінку Arch Wiki на Судо .

sudo ("заміна користувача do") дозволяє системному адміністратору делегувати повноваження, щоб надати певним користувачам (або групам користувачів) можливість запускати деякі (або всі) команди як root або іншого користувача, надаючи слід аудиторських команд та їх команд аргументи.

Ви можете встановити sudoз сховищ, а потім налаштувати його, щоб дозволити користувачеві jackотримати доступ до привілейованих команд шляхом редагування /etc/sudoers. Переконайтеся, що ви робите це за допомогою visudoкоманди.

Щоб надати користувачеві jackповні кореневі привілеї, слід додати цей рядок:

jack ALL=(ALL) ALL

8

Що я зазвичай роблю, це ввімкнути привілеї root для певної групи. Таким чином ви можете просто додати до цієї групи користувачів, яких ви хочете, щоб мати права root.

Редагувати /etc/sudoersз visudoі додати (або закомментировать):

%wheel      ALL=(ALL) ALL

Потім додайте свого користувача до цієї групи:

gpasswd -a jack wheel

1
Незважаючи на те, що відповідь, позначена як прийнята, і буде спрацьовувати, я вважаю, що ця відповідь є кращою завдяки використанню груп над модифікацією судорів.
Ерік Браун

0

Я можу просто використовувати pacman з root, але це є спосіб, щоб мій новий користувач міг виконати ці дії?

Ви можете створити свої $USER, додавши їх до wheelгрупи лише:

useradd -Ng wheel --create-home --no-log-init $USER

Потім оновіть, /etc/sudoers як запропонував Ерік Леннартссон. Але якщо ви шукаєте програмний підхід, можете замість цього створити файл на /etc/sudoers.dзразок:

echo "$USER ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/dont-prompt-$USER-for-password

Вищенаведений метод був запропонований Борисом в Ask Ubuntu, і він зовсім не вимагає використання visudo. При використанні його з префіксом pacman команди з sudo типу:

sudo pacman -S docker docker-compose
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.