Как исправить фатальную ошибку sudo в Ubuntu после предоставления неправильных прав?

Как исправить фатальную ошибку sudo в Ubuntu после предоставления неправильных прав?

Я допустил ошибку, предоставив неправильные разрешения для папок (я думаю, chown не для той папки) при использовании wsl и Ubuntu.

Теперь при запуске Ubuntu у меня возникают следующие ошибки. Я действительно не знаю, что делать:

sudo: error in /etc/sudo.conf, line 0 while loading plugin "sudoers_policy"
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0
sudo: fatal error, unable to load plugins

Я попробовал некоторые решения, предложенные в других ответах, но они не решили мою проблему.

Я не понимаю, я удалил Ubuntu, но ошибка все равно та же.

Есть ли возможность сбросить все настройки на моем ноутбуке и переустановить все?

решение1

Я не понимаю, я удалил Ubuntu, но ошибка все равно та же.

Если вы удалили Ubuntuчерез Windows, то, что вы установили и (предположительно) переустановили, былонетваш дистрибутив. Это просто "шаблон" (rootfs) для дистрибутива, который создается при первом запуске приложения. Смотритеэтот ответи/илиэтот ответчтобы узнать об этом больше.

Есть ли возможность сбросить все настройки на моем ноутбуке и переустановить все?

Конечно, и это, вероятно, самый простой путь, если у вас нет критических файлов в Ubuntu. Имейте в виду, что эторазрушительная операцияи все файлы вДистрибутив Ubuntu(но не Windows) будут удалены.

Из PowerShell:

wsl -l -v

# Confirm the distro name - Likely Ubuntu

wsl --unregister <distro_name>

Затем просто повторите:

ubuntu.exe
# Or ubuntu2004.exe, ubuntu2204.exe, etc.

Он запросит имя пользователя и пароль, которые вы хотите использовать, аналогично тому, как это было при первой установке.

Затем начните так же, как и при новой установке:

sudo apt update && sudo apt upgrade -y

Теперь у меня следующие ошибки при запуске Ubuntu. Я действительно не знаю, что делать

Похоже, вы могли сделать рекурсию chownна корневом уровне. В этом случае может быть сложно восстановить все права собственности в точности как было. В общем:

  • Насколько мне известно, все файлы в папках /usrи /binдолжны принадлежать пользователю root.

  • В установке «по умолчанию» все файлы /varбудут принадлежать пользователю root, но дополнительные программы (например, почтовый сервер или сервер печати, которые редко используются в WSL) могут означать, что файлы в /var.

  • /etcфайлы, по моему опыту, обычно принадлежат пользователю root, но дополнительные службымощьустанавливать файлы конфигурации, принадлежащие другому пользователю и/или группе.

  • /home/<user>Файлы обычно должны принадлежать вашему пользователю.

/rootочевидно, что файлами должен владеть пользователь root.

/tmpбудут отличаться, но (поскольку это все временные файлы) можно безопасно удалить все, что там осталось, и начать заново.

Вероятно, где-то в этом списке я пропустил каталог импорта FHS, но сейчас я буду действовать по памяти.

Связанный контент