Выполненный sudo управляет из стандартной учетной записи

У меня недавно был увеличенный интерес в том, как многочисленные пользователи обрабатываются в Ubuntu и поразили интересную проблему: выполнение команд как sudo из стандартной учетной записи. Если я запускаю приложение GUI, для которого нужны полномочия пользователя root, такие как GParted, это дает мне опцию пройти проверку подлинности как любой администратор. Однако выполнение sudo в терминале только просит пароль текущего пользователя и перестал работать, если он работает в стандартной учетной записи. Я понимаю, что мог легко работать вокруг этого путем переключения терминального сеанса на администраторскую учетную запись, но это требует нескольких дополнительных строк команд всего для одной корневой команды. Я также столкнулся с идеей использовать pkexec вместо sudo, но это, кажется, имеет некоторые проблемы с vim и gedit. Существует ли более простой путь к командам выполнения с полномочиями пользователя root из стандартной учетной записи? Предпочтительно, способ сказать этому делать попытку авторизации суперпользователя с другой учетной записью. Если это имеет какое-либо значение, я использую zsh вместо bash в Ubuntu 14.04.

0
задан 10 July 2015 в 21:14

2 ответа

Для команд, которые не должны быть подключены к tty или X-серверу (т.е. несколько основанных на командной строке администраторских утилит) можно использовать

su root -c <command>

, команда, возможно, должна быть включена в метки кавычки, и Вам предложат пароль пользователя root. Обратите внимание, что это требует, чтобы корневая учетная запись была включена, который это не находится по умолчанию на Ubuntu. Я также попробовал

su <administrator username> -c "sudo <command"

, но это перестало работать из-за отсутствия связанного tty.

0
ответ дан 31 July 2019 в 08:25

необходимо добавить типичного пользователя к/etc/sudoers файлам, чтобы дать им priviledges для выполнения поднятых команд.

, Например, с пользователем назвал 'демонстрацию':

demo  ALL=(ALL:ALL) ALL

первое поле указывает на имя пользователя, к которому правило будет относиться (демонстрация).

первое "ВСЕ" указывает, что это правило относится ко всем хостам.

второе "ВСЕ" указывает, что демонстрационный пользователь может команды выполнения как все пользователи.

третье "ВСЕ" указывает, что демонстрационный пользователь может команды выполнения как все группы.

последняя "ALL" указывает, что эти правила относятся ко всем командам.

1
ответ дан 31 July 2019 в 08:25

Другие вопросы по тегам:

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