На этот вопрос уже есть ответ здесь:
Я использую Ubuntu 17.04.
По ошибке я сменил владельца sudo
. Так что теперь я не могу вносить никаких изменений, поскольку команда chown
, которую я мог бы использовать для исправления, требует sudo
.
Если я использую sudo
, я получаю
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
Если Вы действительно просто изменили владение sudo
команда - то есть, файл /usr/bin/sudo
- затем можно зафиксировать это при помощи pkexec
вместо sudo
работать chown
и возвратите владение. Эта команда делает это:
pkexec chown root: /usr/bin/sudo
pkexec
предложит Вам Ваш пароль (как был бы sudo
если Вы смогли выполнить его).
root:
означает то же самое как root:root
, в случае, если Вы изменили владельца группы также.
Если Вы изменили владение значительно большего количества файлов, кроме того, /usr/bin/sudo
, и в особенности если Вы изменили владение всех файлов в /usr/bin
(который также произошел бы если Вы измененные полномочия на /
или /usr
но передал -R
флаг к chown
, определение рекурсивной операции), затем это не будет достаточно. Но на основе описания Вы дали в вопросе - что Вы конкретно изменили владение /usr/bin/sudo
- выполнение, что один pkexec
команда должна быть достаточной.
Ваше разрешение должно быть следующим:
$ ls -l /usr/bin/sudo
-rwsr-xr-x 1 root root 155008 May 29 15:49 /usr/bin/sudo
Чтобы изменить его по умолчанию, сначала войдите в систему как пользователь root и измените владельца на sudo "/ usr / bin / sudo".
Используйте Живой CD, чтобы смонтировать корневой раздел Вашей системы и исправить полномочия оттуда.