Что использовать для резервного копирования файлов, сохраняя ACL?

Что использовать для резервного копирования файлов, сохраняя ACL?

При использовании утилиты tar для хранения файлов в резервных копиях теряются расширенные списки контроля доступа.

Есть ли какое-то общепринятое и нехакерское решение (например, создать скрипт, который перепишет списки ACL с нуля) для сохранения списков ACL?

решение1

На самом деле, я думаю, что вопрос был не о (стандартных) битах разрешений файла, а орасширенныйИнформация ACL (см. setfacl(1) или acl(5)).

Насколько мне известно, неизмененный GNU tar игнорирует информацию ACL. (На странице руководства для GNU tar 1.15.1, поставляемой с RHEL 5.2, упоминаются ключи --acls и --no-acls, но мне не удалось заставить их работать.)

Однакозвездапрограмма может создавать резервные копии и восстанавливать списки контроля доступа, если вы выберетеэксустарформат:

star -c -p -acl artype=exustar -f archive.tar  files...
star -x -acl -f archive.tar

Домашняя страница звезды:http://cdrecord.berlios.de/new/private/star.html Star доступен, по крайней мере, в Ubuntu.

решение2

Я тоже ищу решение, пока что нашел вот это:

сначала сделайте getfactl из моей папки

getfacl -R /a_folder > folder.acl

затем сделайте обычный tar

tar -czvf folder.tar.gz /a_folder

когда я его извлекаю

tar -xvf folder.tar.gz

выполните команду setfacl для разрешений.

setfacl --restore=folder.acl

Мне это подходит.

решение3

Использование тара

Создавать:

tar --acls -cpf backup.tar some-dir-or-file

Чтобы распаковать:

tar --acls -xpf backup.tar

решение4

Я предлагаю вам использоватьbsdtar.

bsdtar резервное копирование расширенного ACL по умолчанию, он используеттот же синтаксискак GNU tar, и создаваемые им архивы доступны для чтения GNU tar.

Имя пакета и команды (в дистрибутивах на базе Debian) — bsdtar.

bsdtar cf archive.tar /my/folder/using/extd_acl 
bsdtar xf archive.tar 

Вторая команда (извлечение) восстанавливает списки ACL.

Связанный контент