Говорят, что для этого нет правильного решения, но это практически выполнимо, если принять во внимание условия спасения.
Как и во всех операциях восстановления, вы должны сделать все возможное, чтобы у вас была резервная копия, или сделать ее сейчас из всех данных, к которым у вас есть доступ, на случай, если вы случайно нанесете дополнительный ущерб.
Во-первых, если у вас есть недавняя резервная копия, вам лучше восстановить ее из резервной копии. Даже если вы не хотите восстанавливать файлы (возможно, некоторые из них были обновлены с тех пор), восстановление с правами доступа является выполнимым и достаточно безопасным вариантом - если вы не установили ничего нового или не изменили какие-либо конфигурации с тех пор, вы ' Я имею чистое восстановление + изменения данных с тех пор.
Чтобы сделать это из резервной копии, вы должны сначала восстановить резервную копию во временный каталог, а затем скопировать разрешения.
Другой вариант - настроить простую базовую систему (возможно, временно развернуть новый VPS), создать резервную копию разрешений оттуда и восстановить эти разрешения на существующем сервере. Однако это, очевидно, не будет включать какие-либо изменения в пакетах, которые вы установили с тех пор, как и какие-либо изменения конфигурации, которые вы сделали. Это, вероятно, вернет вас в загрузочную систему, но вы не должны продолжать ее использовать - запланируйте полную перестройку как можно скорее.
Общий метод резервного копирования, восстановления или копирования разрешений заключается в использовании команд getfacl
и setfacl
.
Во- первых, cd
в корень пораженной системы (или /
на бегущий один, или там , где вы смонтировали диск на систему спасения, или временный каталог , который вы хотите скопировать разрешения от), а затем:
Резервное копирование с
getfacl -R . >permissions.facl
и восстановить с
setfacl --restore=permissions.facl