it-swarm-es.tech

¿Qué usar para hacer una copia de seguridad de los archivos y preservar las ACL?

Cuando se utiliza la utilidad tar para almacenar archivos en copias de seguridad, se pierden las ACL extendidas.

¿Existe alguna solución comúnmente utilizada y no hack (como: crear un script que recite las ACL desde cero) para preservar las ACL?

24
silk

Usando alquitrán

Crear:

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

Para descomprimir:

tar --acls -xpf backup.tar
4
Scott Grayban

En realidad, creo que la pregunta no era sobre los bits de permiso de archivo (estándar), sino información ACL extendida (consulte setfacl (1) o acl (5) ).

Que yo sepa, el no modificado GNU tar ignora la información de ACL. (La página de manual para GNU tar 1.15.1 como se envía con RHEL 5.2 menciona los interruptores --acls y --no-acls, pero no los puse a trabajar.)

Sin embargo, el programa estrella puede hacer una copia de seguridad y restaurar las ACL, si selecciona la exustar formato:

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

Página de inicio de Star: http://cdrecord.berlios.de/new/private/star.html Star está disponible en ubuntu, al menos.

14
bhm

Estoy buscando una solución también hasta ahora encontré esto:

primero hago un getfactl de mi carpeta

getfacl -R /a_folder > folder.acl

luego haz un alquitrán regular

tar -czvf folder.tar.gz /a_folder

cuando lo extraigo

tar -xvf folder.tar.gz

hacer un setfacl para los permisos.

setfacl --restore=folder.acl

esto funciona para mi.

9
maniat1k
rsync with the -A and/or -X options.
5
Skaperen

Si está buscando una solución simple pero poderosa, le recomiendo rdiff-backup.

Básicamente, hace una copia de un directorio de origen en un directorio de destino, pero también guarda información adicional para que pueda retroceder en el tiempo cuando lo desee.

Y, por supuesto, conserva enlaces simbólicos, archivos especiales, enlaces duros, permisos, propiedad uid/gid y tiempos de modificación.

2
Pablo Antonio

Le sugiero que use bsdtar.

bsdtarlas copias de seguridad de ACL extendida de forma predeterminada, utiliza la misma sintaxis que GNU tar, y los archivos que produce son legibles por GNU tar.

El paquete y el nombre del comando (bajo distribuciones basadas en Debian) es bsdtar.

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

El segundo comando (extraer) restaura las ACL.

2
Totor

De la página del manual de alquitrán.

-p, --same-permissions, --preserve-permissions
Ignore umask al extraer archivos (el valor predeterminado para root)

En realidad, no es el acto de archivar lo que altera los permisos de acceso (ACL), sino el acto de desempaquetarlos. Tar se usa con mucha frecuencia para distribuir archivos de un usuario a otro, por lo que se considera conveniente aplicar un usuario mask cuando se descomprimen.

Para preservar los permisos anteriores de los archivos, simplemente agregue una p a sus opciones. Por ejemplo

Alquitrán recto:

tar xvp some-file

bz.tar:

tar xvjp some-file

gz.tar:

tar xvzp some-file
1
Eli Frey