Не может выполнить команду sudo

Я получаю ошибку при попытке выполнить любую команду в sudo режиме.

Ошибка:

sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set

Я нашел много вопросов и принял ответы на askubuntu.

Но ни один из решенных моя проблема. Вероятно, мой случай отличается от них.

Больше информации:

Я пытался установить utorrent после вершины проголосовал за ответ этого вопроса.
После извлечения .tz файл к /opt Я переименовал извлеченный файл.
С тех пор я сталкиваюсь с этой ошибкой.

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

1
задан 13 April 2017 в 15:23

4 ответа

Простая фиксация, если Вы также не испортили pkexec:

проблема состоит в том, что Ваш /usr/bin/sudo имеет неправильный набор полномочий (-rwxrwxr-x вместо корректного -rwsr-xr-x).

Теперь, когда файл принадлежит корню, Вы должны базироваться полномочия изменить его полномочия. Обычно, Вы использовали бы sudo для этого, но поскольку это повреждается, мы должны использовать pkexec в качестве замены для восстановления его:

pkexec chmod u+s,g-x /usr/bin/sudo

Теперь все должно быть зафиксировано снова. Попробуйте, например, после команды для проверки:

sudo echo "sudo works again! Yay! :D"

более сложная фиксация, если Вы также испортили pkexec:

Первый, необходимо загрузить систему Ubuntu в режиме восстановления.

Вы делаете это путем перезагрузки и ожидания меню GRUB для разоблачения. Это сразу происходит после того, как BIOS закончил свою работу и прежде чем Ubuntu начнет загружаться. Это будет обычно обнаруживаться, если Вы двойная загрузка с другой ОС, но если это не делает, необходимо держать Сдвиг ключ, чтобы позволить ему появиться. Выберите точку меню Advanced options и затем выберите последнюю версию ядра с суффиксом (recovery mode). Вы будете видеть другое меню, где необходимо выбрать root, который показывает Вам терминал с корневым доступом.
[еще 1124] информация о том, как ввести корневую оболочку в режим восстановления, может быть найдена здесь , следуйте за шагами 1-7, затем продолжите здесь.

Выполнение следующие команды в корневой оболочке:

mount -o remount,rw /
chmod u=rwxs,g=rx,o=rx /usr/bin/sudo /usr/bin/pkexec
exit

Затем перезагрузка обычно и тест Ваши команды.

3
ответ дан 7 December 2019 в 12:43

Недавно имел ту же проблему, я испортил sudo и pkexec.

Испытанный @Byte Commander♦ answear выше, но это не работало на меня, потому что он не изменил полномочия на 2 определенных файлах, таким образом, я должен был изменить их по одному.

Первый файл sudoers который находится в /etc

  • cd /etc
  • chmod u=rwxs,g=rx,o=rx sudoers

Второй файл README который находится в /etc/sudoers.d

  • cd /sudoers.d
  • chmod u=rwxs,g=rx,o=rx README

После выполнения этих изменений попытка sudo echo "sudo works again! Yay! :D" как @Byte Commander♦ записал на его answear, и там у Вас есть он.

0
ответ дан 7 December 2019 в 12:43

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

  1. Запустите pkexec chmod 777 / etc / sudoers : это сделает мир файлов доступным для записи, иначе любой может редактировать сейчас
  2. Отредактируйте файл sudoers (установите права доступа пользователя / группы), как вам нужно
  3. Поскольку файл sudoers был сделан всемирно доступным для записи, он не будет работать (механизм безопасности Linux по умолчанию)
  4. Установите правильные права доступа в файле sudoers: pkexec chmod 0755 / etc / sudoers

Если вы испортили pkexec, также следуйте решению, данному @Byte Commander ♦

0
ответ дан 2 February 2020 в 11:13

устранить ошибку sudo

вам следует переустановить команду «sudo»

для этого выполните следующий рецепт:


1- установите «менеджер синаптических пакетов»

вы его можно скачать с:

https://pkgs.org/download/synaptic

или

http://archive.ubuntu.com/ubuntu/pool/universe/s/synaptic/synaptic_0.84.3ubuntu1_amd64 .deb

или

найдите в приложении Ubuntu обновление программного обеспечения «синаптический пакет» и установите его

image:

enter image description here


2- откройте приложение


3- поверх на странице щелкните поле поиска и введите текст « sudo » теперь найдите « sudo » в списке> и нажмите на сплошной квадрат и в открывшемся квадрате выберите « отметка для переустановки »> затем нажмите «Применить» вверху страницы и установите его

images:

enter image description here

enter image description here


4- откройте терминал и запустите команду « sudo »

вы получите:

 использование: sudo -h | -K | -k | -V
использование: sudo -v [-AknS] [-g группа] [-h хост] [-p приглашение] [-u пользователь]
использование: sudo -l [-AknS] [-g группа] [-h хост] [-p приглашение] [-U пользователь] [-u пользователь]
 [команда]
использование: sudo [-AbEHknPS] [-r роль] [-t тип] [-C номер] [-g группа] [-h хост] [-p
подсказка] [-T тайм-аут] [-u пользователь] [VAR = значение] [-i | -s] [<команда>]
использование: sudo -e [-AknS] [-r роль] [-t тип] [-C номер] [-g группа] [-h хост] [-p
подсказка] [-T тайм-аут] [-u пользователь] файл ...

итак: sudo сейчас работает


0
ответ дан 20 March 2020 в 10:11

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

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