Использование rsync для файлов с контекстом безопасности
Утилита rsync - быстрый и гибкий инструмент копирования информации.
Она позволяет копировать файлы локально, с и на удаленную машину, используя любую удаленную оболочку, а также с использованием удаленного демона rsync.
Крайне удобна из-за применяемого алгоритма, который позволяет уменьшить количество передаваемой информации, передавая только разницу между файлами источника и файлами назначения.
Все действия выполняются от имени учетной записи администратора с использованием механизма sudo.
Синтаксис команды выглядит следующим образом:
В таблице приведены некоторые наиболее часто используемые опции команды rsync.
Опция | Назначение |
---|---|
-а | Рекурсивное копирование, сохранение символических ссылок, устройств, владельцев, разрешений и т.д. |
-v, --verbose | Подробный режим с информацией о прогрессе |
-z, --compress | Сжимать трафик |
-r, --recursive | Выполнять копирование рекурсивно |
-p, --perms | Сохранять дискретные права доступа |
-t, --times | Сохранять время доступа к файлам |
-g, --group | Сохранять группу |
-o, --owner | Сохранять владельца |
-A, --acls | Сохранять списки контроля доступа ACL (включает -p) |
-X, --xattrs | Сохранять расширенные атрибуты (в том числе мандатные атрибуты) |
Источник (как и назначение) может быть как локальной машиной, так и удаленной.
Стандартным методом передачи данных является ssh.
rsync поддерживает работу с расширенными атрибутами файлов, включая контекст безопасности. За это отвечает опция –X. Также rsync необходимо запускать с контекстом безопасности с помощью команды runcon с указанием тегов CHCTX , OMIT и SETXATTR_OMITMAC , которые позволят ему работать с файлами вне зависимости от их контекста безопасности.
Рассмотрим работу rsync с контекстом безопасности на примере создания резервной копии домашних каталогов пользователей.
Следующая команда позволит сделать копию директории /home:
для упрощения команды можно использовать числовые обозначения тегов:
Для восстановления домашних каталогов пользователей из архива используется следующая команда:
или с числовым обозначением тегов:
Посмотреть видеоурок: Использование rsync для файлов с контекстом безопасности