/etc/sudoers доступен для записи всем пользователям Linux SSH

/etc/sudoers доступен для записи всем пользователям Linux SSH

Я перепробовал все, но ничего не помогло.

sudoне работает, потому что там написано:

/etc/sudoers is world writable

Не могу войти в систему как пользователь root, даже если ввожу командуsudo -i

chmod: changing permissions of 'etc/sudoers': Operation not permitted

su: Authentication failure

До того, как возникла эта ошибка, я попытался изменить права доступа к папке /etc, чтобы разрешить мне создать новую папку внутри нее /etc, но на следующий день после того, как я открыл SSH, возникла эта ошибка.

Я помню только следующие команды, позволяющие создать папку:

sudo chmod -R 777 /etc chmod a+w test mkdir /etc/backup

Я новичок в командах Linux, поэтому я просто поискал их и попробовал на своем ssh, после чего возникла эта ошибка.

ошибки в терминале

Кто-нибудь может мне помочь? Спасибо заранее.

решение1

До того, как возникла эта ошибка, я попытался изменить права доступа к папке /etc, чтобы разрешить мне создать новую папку внутри папки /etc.

НЕТ НИКАКИХ веских причин для изменения /etc/. Это системный каталог, поддерживаемый пакетами/менеджером пакетов. Если вам нужен персональный каталог, поместите его либо в , /home/$USERлибо, если это многопользовательский сервер, в /opt/etc(но даже они противны, по моему скромному мнению ;)).

Это можно исправить, перезагрузившись в grub rescue или из сеанса Live, а затем выполнив следующие действия:

chmod 440 /etc/sudoers

так что это соответствует

r--r----- 1 root root 1800 feb 20 18:38 /etc/sudoers

Помните, что это может быть тщетной попыткой: если вы что-то сделали со всем, /etc/вы могли изменить больше, чем просто файл sudoers. Тогда переустановка без форматирования будет ответом.

решение2

Вам следует перезагрузить систему и начать какоднопользовательский режим, перейти в оболочку root, сменить владельца/etc/sudoers:

После перезагрузки нажимайте shfitдо появления меню GRUB, затем нажмите eдля редактирования, после этого перейдите к строке, которая начинается с linux /boot/vmlinuzи замените конец строки ro \ console=ttyS0 console=tty0на rw init=/bin/bash.

Инструкции отитгалас изображениями.

Теперь chmod 440 /etc/sudoersв конце файл sudoers должен выглядеть так

-r--r-----

Я рекомендую вам отредактировать файл sudoers с помощью visudoи для добавления дополнительных настроек /etc/sudoers.d/my-sudoers.

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