Я облажался. Я изменил разрешение /etc
в Ubuntu 11.10, используя следующую команду
sudo chmod 665 /etc
, теперь, когда бы я ни пытался использовать sudo, выдается следующая ошибка:
sudo: can't open /etc/sudoers: Permission denied
sudo: no valid sudoers sources found, quitting
с благодарностью, потому что я новичок в Ubuntu. Я уже пытался использовать su
, но он даже не входит в систему как root, и даже я даю ему правильный пароль, который всегда говорят Authentication Failure
. Я не хочу входить в систему как root, потому что это рискованно, и даже новичок в Linux, такой как я, не настолько глуп, чтобы иметь такой контроль. Я просто хочу использовать свой sudo
снова. Я также пытался перейти в режим восстановления, но не могу войти в режим восстановления.
ваш boot-manager-OS-List выглядит как windows-bootmanager, а не как ubuntu-grub-bootmanager, что даст вам возможность войти в режим восстановления.
Я на самом деле не знаю, устанавливает ли система где-нибудь grub, но когда вы выбираете ubuntu, попробуйте удерживать shift, чтобы войти в меню grub (если оно существует).
Другим способом было бы отредактировать файл boot.ini на вашем Windows-разделе. Там должна быть запись для Ubuntu. Попробуйте добавить 1 к этой строке и загрузиться в Ubuntu. 1 приводит вас в однопользовательский режим - командная строка с root-доступом к вашей системе.
Но самый простой способ - это Life-CD наверняка !!!
Вам нужно chmod 440 /etc/sudoers
. Попробуйте сделать это в режиме восстановления или введите init=/bin/bash
в командную строку загрузки. Спросите, нужна ли вам дополнительная информация.
Загрузите опцию консоли восстановления .
Выберите remount read-write
Выберите корневую оболочку
cd /
chmod 755 etc <--to get it back to default
sync
init 6
Как правило, проблему такого рода можно решить без загрузки в режиме восстановления, без использования компакт-диска и вообще без перезагрузки. Система Ubuntu с графическим интерфейсом (в отличие от системы Ubuntu Server без графического интерфейса) имеет два механизма запуска команд от имени пользователя root. Одним из них является sudo
. Другой - PolicyKit . Вы можете использовать pkexec
, интерфейс командной строки для PolicyKit, чтобы исправить разрешения:
pkexec chmod 755 /etc
Если все, что вы сделали, чтобы создать проблему, это запустить sudo chmod 665 /etc
тогда это полностью решает проблему, и вам не нужно пытаться восстановить какие-либо разрешения внутри /etc
. (Ничто внутри /etc
не изменяется с помощью команды chmod
на /etc
, которая не использует флаг -R
.)
Попробуйте вставить компакт-диск Ubuntu Live, откройте терминал и введите
sudo su -
mount /dev/sda5 (or whichever is the root partition of your Ubuntu installation) /mnt
chroot /mnt
chmod 755 /etc
exit
Это должно сделать вещи такими, какими они были.