Я случайно запустил следующую команду
sudo chown [username] -hR /
Сейчас sudo su
получение ошибки:
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
Как Это решить?
Я случайно запустил следующую команду
sudo chown [username] -hR /
Сейчас sudo su
получение ошибки:
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
Как Это решить?
Как вы будете читать дальше этот ответ на ТАК, эта проблема заключается в нет так же трудно, как это делают люди. Вы можете получить sudo
команда снова работает без переустановки выполнив эти простые шаги:
chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
Это делает свое дело и намного быстрее и менее болезненно, чем "ядерный вариант", рекомендованный в других ответах.
Если ваш пароль root не установлен, вы можете загрузиться в режим восстановления чтобы установить его.
Обратите внимание, что это устранит ошибку заголовка /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
но если, как и в случае с операцией, вы сделали больше, чем просто испортили разрешения /usr/bin/sudo
однако более "ядерный" вариант на самом деле может иметь больше смысла.
Создайте резервную копию ваших данных и переустановите их.
Это, вероятно, выглядит экстремально, но это не просто sudo
. Вы уничтожили структуру разрешений всей вашей файловой системы. Некоторые из других ответов можно получить sudo
работает, но игнорирование всей проблемы в целом влечет за собой последующую катастрофу.
Вы могли бы попытаться отразить владельцев от другой установки, но бывают случаи (/var/
например), которые сильно зависят от того, что у вас на самом деле установлено. Если вы хотите получить масштаб проблемы, На самом деле у меня уже была попытка помочь кому-то решить подобную проблему раньше. Исправление выполняется вручную, долго и может легко привести к небезопасности или поломке вашей системы.
Разбираться в этом беспорядке займет значительно больше времени, чем чистая установка.
Это вызвало пару наездов со стороны людей, которые не понимают серьезности сложившейся здесь ситуации. Для них это выглядит как большая куча ненужной работы, что-то вроде того, что говорит мошенник-сантехник или механик, чтобы вытрясти из вас большую работу.
Если вы изменили только разрешения на /usr/bin/sudo
во что бы то ни стало, просто исправь это. Но этот вопрос касается полного изменения системы. Каждый файл (за исключением файлов, доступных только для среды выполнения) теперь принадлежит пользователю. Все, что запускает пользователь (например, браузеры, эксплойты браузера) может затем перезаписать системные файлы, шпионить за вами, извлекать любые данные. Это необходимо исправить. Согласно вышесказанному, это сложно. Самый простой способ - это переустановка.
Так что, пожалуйста, не ленитесь по этому поводу. Разрешения файловой системы помогают обеспечить вашу безопасность, исправьте их.
перейдите в режим восстановления, продолжая нажимать Esc во время загрузки системы.
выберите опцию root в длинном списке, который вы можете увидеть после входа в режим восстановления (на самом деле это корневая оболочка).
введите команду - mount -o remount /
(Или в режиме восстановления вы можете нажать на опцию grub. Это помогло мне получить права на чтение и запись в файловой системе. Это в основном обновило режим чтения / записи в файловой системе, поскольку изначально команда у меня не работала)
Он перемонтирует вашу файловую систему в режиме чтения и записи.
команда - chown -R root:root /usr
эта команда снова рекурсивно изменит владельца с "пользователя" на root
теперь у меня все еще были проблемы с sudo
команду, поэтому я снова выполнил шаг 1,2,3 и выполнил chmod 4755 /usr/bin/sudo
Теперь я действительно думаю, что повторная установка была бы действительно "ядерным вариантом".;
У меня была такая же проблема с моим droplet на digital ocean.
sudo: /usr/bin/sudo
должно принадлежать uid 0
и иметь возможность setuid
набор бит.Ниже приведены команды, которые я выполнил и после перезагрузки.
chown -R root:root /usr/bin/sudochmod -R a=rx,u+ws /usr/bin/sudochown -R root:root /usr/lib/sudo/sudoer.sochmod -R a=rx,u+ws /usr/lib/sudo/sudoer.so
Надеюсь, это поможет.
Вышеуказанные методы не сработали для меня, потому что я не мог "войти в систему как root" (неизвестный пароль), но я получил корневую оболочку, отредактировав
vi /etc/lightdm/lightdm.confautologin-user=rootgreeter-show-manual-login=true
После перезагрузки я, наконец, смог запустить
chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
К сожалению, если у вас нет полной резервной копии, вероятно, лучшее, что вы можете сделать на данный момент, - это переустановить.
Учтите, что вы изменили права собственности на все файлы на одного и того же пользователя, полностью нарушив парадигму безопасности вашей системы....
Если вы выполните поиск по этому сайту, то обнаружите много подобных проблем с chmod, как, например Как я могу восстановить данные из chmod -R a-wrx / command?
Я не смог отредактировать lightdm.conf
файл под запущенной системой. Я исправил такие вещи, как это:
/etc/lightdm/lightdm.conf
об установкеsudo -H gedit /mnt/etc/lightdm/lightdm.conf
и добавьте следующие строки из Ответ раздражителя
autologin-user=rootgreeter-show-manual-login=true
перезагрузить
выполнить команду:
chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
Вернуть пользователя по умолчанию в /etc/lightdm/lightdm.conf
(вы же не хотите каждый раз автоматически входить в систему от имени root, что было бы очень небезопасно и опасно)
Я изменил / usr /lib / на root-владельца, но sudo выполняется только с root-логином в терминале.
шаг первый: su rootstep два: cd /usr/libstep три: chown -R root:root sudo
и это все. Просто ОБРАТИТЕ ВНИМАНИЕ, что вам нужно запускать su root каждый раз, когда вы хотите использовать sudo.
Использование https://medium.com/@KongToonArmy/sudo-must-be-owned-by-uid-0-and-have-the-setuid-bit-set-cdca3dba7d19 автор KongToonArmy
Конгтунская армия
Примечание: Когда у меня возникла эта проблема, я переустановил ОС (потому что в то время существовали другие ответы, и я не могу больше ждать). Итак, теперь новые ответы больше не будут поддерживаться с моей стороны!
Благодаря крошечному предупреждению, размещенному в разделе Вариант 1 здесь, который я с радостью проигнорировал и оказался здесь!