Назад | Перейти на главную страницу

Восстановить владение по умолчанию в CentOS после ужасного удара

Возможный дубликат:
Как мне восстановить сервер RHEL 4.3 из-за неправильных разрешений, установленных для всей файловой системы?

Есть ли способ восстановить владение файловой системой CentOS по умолчанию после случайного chown -R user: group / *?

Прежде чем пойти и переустановить, я подумал, что спрошу и, возможно, сэкономлю время. Я настраиваю новую машину разработчика (к счастью, не prod) и набираю слишком быстро или пропустил. ключ или что-то в этом роде. Я попытался отменить, как только поймал это, но все мои / bin / boot / dev и т. Д. Уже были изменены.

Есть ли надежда, или просто переустановите и будьте счастливы, что это не производственная машина?

«Просто переустановите и будьте счастливы, что это не производственная машина?»

Да.

rpm -a --setugids

Если у вас есть точный клон этой машины, вы можете восстановить разрешения, используя другую машину в качестве модели. Что-то вроде:

server1:# find / /usr /home -xdev | xargs getfacl -Pp > /tmp/permissions_from_server1


server2:# setfacl --restore=/tmp/permissions_from_server1
  • -xdev говорит найти оставаться в одной файловой системе.
  • Верхний регистр -P обозначает Физическую прогулку; т.е. игнорировать символические ссылки.
  • Строчные p сохраняет ведущую косую черту. Без этого переключателя getfaclповедение по умолчанию - удалить начальную косую черту, что приведет к сбою восстановления.

YMMV, вот отправная точка.

Переустановить в конечном итоге проще, и я бы пошел именно по этому пути. Если бы это был производственный сервер и у вас не было резервных копий, вашей первой задачей было бы восстановление привилегий root, так как /bin/su и /usr/bin/sudo может больше не работать.

Войдите в систему локально как root, сбросьте права собственности на эти двоичные файлы и начните работать над ошибками, которые вы сразу видите, такими как неработающие библиотеки и т. Д.

На аналогичной машине вы можете создать список файлов в различных системных каталогах с помощью сценария оболочки / Perl / Python, а затем запустить сценарий в обратном порядке в затронутой системе, чтобы предоставить надлежащие права собственности на файлы.

Это не конец света, хотя и довольно близко, и это огромная боль в заднице.