Ужасная ошибка с chmod?

Хотел выставить для папки рекурсивно права 644 и ввел команду chmod -R 644 /.

Спохватился поздно, но выполнение команды прервал.

Посоветуйте, как минимизировать ущерб. И реально ли восстановить систему. Или теперь придется ставить с нуля?
  • Вопрос задан
  • 12358 просмотров
Пригласить эксперта
Ответы на вопрос 15
wholeman
@wholeman
На сами директории права выполнения восстановить удалось?
Ответ написан
@v1z
Да, бывает и такое =(

Напомнило:
Ответ написан
@bondbig
Ух, знатный выстрел в собственную ногу.
Я бы загрузился с livecd, скопировал конфиги/данные и переустановил бы ОС. Все остальные варианты не дадут 100% уверенности, а нафиг нужен сервер с кучей скелетов в шкафу.
Ответ написан
Комментировать
Valistar
@Valistar
Надо изменить привычку писать chmod ./ будет работать также если вы будете писать chmod .
Ответ написан
@odmin4eg
я раз дал 777 всей системе… тогда тоже ничего больше не работало :)

грузимся в «сингл моде» и мы можем выполнять любые команды для восстановления прав
Ответ написан
Комментировать
r00tkit
@r00tkit
Ммм… Иногда rm -rf / помогает, но не уверен, что в этом случае спасёт, тут всё запущено уже давно и глубоко…
Ответ написан
wholeman
@wholeman
Скопировать нормальный chmod через scp -p /bin/chmod user@hostname:, затем /home/user/chmod +x /bin/* не получается? (Вместо «user», конечно, правильное имя поставить надо.)
Ответ написан
asm0dey
@asm0dey
cp тоже не работает?
sudo?
Ответ написан
@dendery
если бы это была gentoo, я бы восстановил build environment и пересобрал мир.
соотвественно можно попробовать сделать нечто похожее и в бинарном дистрибутиве, сгенерировав список пакетов установленных в системе и накатить эти пакеты заного с флагом force или что-то вроде, при этом не забыв сказать, что конфиги не трогать.
это общие соображения.
частное решение будет зависеть от конкретного дистрибутива пакетного менеджера и здравого смысла.
здравый смысл заключается в том, что если не хочется потом еще в течении n-ного времени вычищать
подземные стуки, а они будут, нужно переставить систему с нуля.
Ответ написан
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
Достаньте LiveCD, который умеет работать с ФС, да восстановите необходимое.
Ответ написан
Комментировать
kekekeks
@kekekeks
У вас там поди на либах нет прав запуска, в итоге и выдаёт пермишн денайд.
Ответ написан
asm0dey
@asm0dey
В общем-то еще надо на все директории проставить права 755, на все файлы 644/
Ответ написан
Комментировать
kekekeks
@kekekeks
Ставьте сейчас параллельно с sshd dropbear (там надо будет в его конфиге только порт поправить). По идее, через него должна завестись сессия.
Ответ написан
Комментировать
r0ster
@r0ster
Однажды столкнулся с такой же ситуацией, не знаю почему, но сразу пришло на ум, открыть другой сервер в Kitty (Putty) и WinSCP (благо были под рукой другие сервера с одинаковой системой (Debian)) и сравнить содержимое дерикторий на двух серверах, и выставить права/владельца аналогично «здоровой» системы.

Попробуйте, может вам это тоже поможет. Как вариант, поставить на виртуалку такую же ОСь как на сервере и сравнивать с ней.

Пусть и долго, зато рабочий способ. И меня он выручил.
Ответ написан
Комментировать
pewpew
@pewpew
Это ещё чего… я вот как-то раз chmod -R 777 / выполнил. Хотел к текущей папке применить рекурсивно, а вышло для всей системы. В результате всё конечно работает (кроме почему-то VSFTPD), но систему под снос, однозначно.
Ничего, такой дзен укрепляет нервы. Это полезно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы