Аварийное восстановление после команды Chown
Одна из интересных задач и непростых задач, с которыми может столкнуться начинающий администратор - восстановление сервера после неосторожного применения на Ubuntu команды chown * -R username.username в корне ФС. Эта команда меняет группу и пользователя всем файлам в папках начиная от var до bin. А из-за этого уже такие сервисы, как Apache, Mysql, Postfix, Dovecot, просто останавливаются.
Конечно, самое простое решение – откатиться к бэкапу. Но часто ли у нас будет в распоряжении бэкап? Если нет, то при наличии похожей системы с уже настроенными Dovecot и Postfix с помощью утилиты можно установить нужные данные с нее на проблемную.
Для этого необходимо будет создать на нормальной машине эталон нужных данных папки var:
sudo getfacl -R /var/* > /home/username/var.txt
Установить его туда, куда нам необходимо:
setfacl --restore=var.txt
Для ОС Ubuntu нужно будет обзавестись также программой acl.
В версии ОС 14.04 будет выдано сообщение о ошибке:
sudo apt-get install acl
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package acl is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'acl' has no installation candidate
Это значит, что необходимо будет добавить в source.list:
deb http://cz.archive.ubuntu.com/ubuntu trusty main
обновить и установить – не забываем уничтожить строчку после установки!