25

Мне нужно установить пакет. Для этого мне нужен root-доступ. Однако система говорит, что я не в файле sudoers. При попытке отредактировать один, он жалуется одинаково! Как я могу добавить себя в файл sudoers, если у меня нет прав на его редактирование?

Я установил эту систему и только администратор. Что я могу сделать?

Изменить: я уже пробовал visudo . Это требует, чтобы я был в sudoers в первую очередь.

amarzaya@linux-debian-gnu:/$ sudo /usr/sbin/visudo 

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

[sudo] password for amarzaya: 
amarzaya is not in the sudoers file.  This incident will be reported.
amarzaya@linux-debian-gnu:/$ 

9 ответов9

24

Войдите в систему как пользователь root и используйте /usr/sbin/visudo чтобы отредактировать файл и добавить свое имя пользователя. Обычный vi/vim не сможет редактировать файл.

Самый простой способ - просто спуститься вниз, пока не увидите строку « root ALL=(ALL) ALL », и добавить себя под этим с тем же синтаксисом (yourusername ALL=(ALL) ALL). Или вы можете прочитать справочную страницу sudoers, если хотите дать себе более конкретные привилегии.

18

Было бы что-то вроде дыры в безопасности, если бы вы могли добавить себя в /etc/sudoers не имея sudo или root-доступа. В принципе, тогда любой мог сделать себя root.

По сути, вам нужно попросить администраторов этого компьютера добавить вас или установить пакет для вас в соответствии с политиками сайта.

Вы также должны обязательно использовать visudo для редактирования файла sudoers - он проверяет правильность синтаксиса перед записью файла. И вы можете использовать редакторы, кроме vi, с visudo. По умолчанию он будет использовать все, что вы установили как $EDITOR и если у вас его нет, вы можете сделать

# EDITOR=nano visudo

вместо этого использовать редактор нано.

5

Просто набрал команду:

$ su

И попросил пароль "root". Набрал и бум ... Это сработало!

Эта проблема была моей ошибкой. В связи с тем, чтобы вернуться на объект в то время, когда я создал имя пользователя и пароль.

1

Если ваш файл sudoers уже содержит такую строку

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

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

usermod -aG admin oracle
1

Возможно, самый простой способ, если вы являетесь пользователем root, это:

echo 'amarzaya ALL=(ALL) ALL' >> /etc/sudoers
-1

Все, что вам нужно, это добавить свое <username> в группу whell .

# usermod -aG whell username

Тогда войдите под своим именем пользователя и наслаждайтесь :)

-1

Если вы все еще можете получить root-доступ с помощью su , вы можете использовать эту однострочную строку, чтобы добавить себя в /etc/sudoers/:

su -c 'echo $USER ALL=(ALL)ALL >> /etc/sudoers'

Чтобы активировать изменение, выйдите и снова. Например закончить Й сессию или выйти через оболочку вход exit

-1

Если вы не можете использовать команду sudo , то вы можете использовать следующий метод:

  1. Нажмите Ctrl+Alt+F1
  2. Выйдите из системы, если пользователь не является пользователем root
  3. Войдите в систему как root
  4. Используйте права root
  5. Выйти (exit) - Ctrl+Alt+F7, чтобы попасть в графический интерфейс
-3

Сначала войдите, используя следующее:

$ su

Тогда продолжайте:

$ sudo apt-get update

или как обычно

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .