В ubuntu 14 4 выполнил chmod 777 /
, после чего перестали выполняться su
и sudo -s
.
Как это исправить?
$ su
operation not permitted
$ sudo -s
/etc/sudoers is world writable
no valid sudoers souces found, quitting
unable to initialize policy plugin
наиболее эффективный, с моей точки зрения, выход из сложившейся ситуации — сохранение файлов с данными и переустановка системы.
поведение двух упомянутых программ — это лишь самая верхушка «айсберга», остальные последствия будут обнаруживаться позже, в самые, вероятно, неожиданные моменты. из основных «результатов» можно отметить хотя бы пару: во-первых, ваша система сейчас представляет собой «дырявое решето» (с точки зрения безопасности и защищённости системы), во-вторых, некоторые «демоны» могут либо вообще перестать работать (после перезагрузки), либо работать некорректно.
я лично (считая себя далеко не новичком) исправлять последствия такого «вандализма» даже бы не взялся — это адский кропотливый труд.
Можно ещё поставить систему на соседней виртуалке и сделать автоматическое приведение прав к одному знаменателю простым скриптом.
На виртуалке:
find / |xargs stat -c "chmod %a %n" > /rights-1.txt # Создаёт файл где сохранены права и названия с путем
find / |xargs stat -c "chown %U:%G %n" > /rights-2.txt # Создаёт файл с принадлежностями и путём
Перенести эти файлы на основную систему и просто выполнить:
bash </rights-1.txt
bash </rights-2.txt
Из-под root
chmod 440 /etc/sudoers
Указанная команда не могла нанести такого вреда, по-видимому был ещё ключ -R
.
Можно переустановить все установленные пакеты, при этом восстановятся и права, кроме файлов и каталогов не относящихся к пакетам. Для систем с дебиановским менеджером пакетов:
# apt-get --reinstall install `dpkg --get-selections | grep install | grep -v deinstall | cut -f1`
Если при этом будет невозможно переустановить какие-то пакеты, их можно пропустить добавив имена в фильтр:
# apt-get --reinstall install `dpkg --get-selections | grep install | grep -v deinstall | cut -f1 | egrep -v '(package1|package2)'`
Источник: http://hyperlogos.org/page/Restoring-Permissions-Debian-System
Если в систему нельзя войти как root, придётся загрузиться с флэшки. и сделать chroot
на раздел с испорченной системой.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Добрый деньИзучаю Java,и вот начал изучать java i/o
Кому-нибудь известен расширенный на возможности элемент подобный ImageViewЧтобы там уже были нужные обработчики вроде двойного нажатия, или...
Сделал все по инструкции, установил все переменные среды, но он все равно не запускаетсяВот что выводится в cmd при попытке запуска: