Restic: Restaurar con --include crea directorios con permisos incorrectos en el camino hacia abajo.

Creado en 31 oct. 2017  ·  5Comentarios  ·  Fuente: restic/restic

Salida de restic version

restic 0.7.3
compilado con go1.9 en linux / amd64

¿Cómo corriste restic exactamente?

Vea los detalles abajo

¿Qué backend / servidor / servicio usaste?

Cliente: Debian estable (9.2)
Servidor: servidor FreeBSD 11.1 en la LAN usando OpenSSH (OpenSSH_7.2p2, OpenSSL 1.0.2k-freebsd 26 de enero de 2017)

Comportamiento esperado

Todos los directorios deben crearse con los permisos y la propiedad originales, incluso si solo restaura los archivos que se encuentran en lo más profundo de la jerarquía.

Comportamiento real

Al restaurar archivos que se encuentran en lo más profundo de la jerarquía, los directorios en el camino hacia abajo se restauran con un usuario y permiso diferentes a los que tenían en el original.

Pasos para reproducir el comportamiento

mkdir testdir # crear directorio
toque testdir / testfile # cree un archivo en él
chmod 755 testdir testdir / testfile # asegúrese de que los permisos sean 755
su # cambiar a root
restic -r sftp: rakor @ SERVER : / usr / home / rakor / resticbackuptest backup testdir # haciendo la copia de seguridad
restic -r sftp: rakor @ SERVER : / usr / home / rakor / resticbackuptest restore latest -t testrestore -i testfile # restaurar el archivo (no todo el directorio)
ls -lR testrestore # el archivo se restaura con el propietario y los permisos correctos. Pero los directorios en el camino hacia el archivo se restauran con el usuario 'root' y los permisos 700.
testrestore /:
insgesamt 4
drwx ------ 2 raíz raíz 4096 Okt 31 21:30 testdir

testrestore / testdir:
insgesamt 0
-rwxr-xr-x 1 rakor rakor 0 Okt 31 21:25 archivo de prueba

¿Tiene alguna idea de qué pudo haber causado esto?

Creo que los directorios en el camino hacia abajo no se "restauran" sino que simplemente se "crean" con "valores predeterminados seguros".

¿Tiene una idea de cómo solucionar el problema?

restaurar los directorios vacíos en lugar de simplemente crearlos.

restore bug

Comentario más útil

Para mí, esto definitivamente parece un error / problema en la funcionalidad de restauración. Si estoy restaurando datos que originalmente pertenecían a algún usuario en un directorio al que este usuario puede acceder, espero que este usuario pueda acceder a los datos restaurados, incluso si solo se restauró una parte. Restaurar los atributos del directorio (propietario / acceso / etc.) parece una forma natural de lograrlo.

Además, el comportamiento actual se percibe como una "restauración parcial" de estos directorios intermedios (su existencia se restaura, pero sus atributos no), lo que parece inconsistente / ilógico.

Todos 5 comentarios

Gracias por sacar este tema. No estoy seguro de que establecer los derechos de acceso anteriores en los directorios intermedios de la manera correcta, déjeme pensar un poco en esto.

¿Alguna otra idea al respecto?

Para mí, esto definitivamente parece un error / problema en la funcionalidad de restauración. Si estoy restaurando datos que originalmente pertenecían a algún usuario en un directorio al que este usuario puede acceder, espero que este usuario pueda acceder a los datos restaurados, incluso si solo se restauró una parte. Restaurar los atributos del directorio (propietario / acceso / etc.) parece una forma natural de lograrlo.

Además, el comportamiento actual se percibe como una "restauración parcial" de estos directorios intermedios (su existencia se restaura, pero sus atributos no), lo que parece inconsistente / ilógico.

Creo que esto es un error. Si deseo restaurar parte de una copia de seguridad, la copia restaurada debería poder utilizarse. Actualmente no se puede utilizar sin realizar operaciones restic ls para descubrir los permisos, el propietario y el grupo adecuados de cada elemento de ruta que se creó automáticamente. Realmente dificulta la restauración de archivos / directorios.

Estoy de acuerdo en que lo que restic restaura debe restaurarse de manera coherente (es decir, con los permisos "predeterminados" del usuario que ejecuta la restauración, o con los permisos, etc. de los archivos y carpetas originales de los que se hizo una copia de seguridad, no con un combinación de los dos).

Sin embargo, puedo ver un caso de uso en ambos tipos de permisos:

  • Algunos usuarios necesitan / quieren restaurar los datos en un nuevo contexto, y con eso quieren que las propiedades y los permisos sean "predeterminados", como si hubieran creado los mismos directorios y archivos de nuevo.
  • Algunos usuarios necesitan / desean restaurar los datos en el mismo contexto o en el mismo contexto en el que fueron respaldados, y con eso quieren que el resultado tenga la misma propiedad y / o permisos que los archivos originales que fueron respaldados.
  • Algunos usuarios quieren conservar solo los permisos, pero no las propiedades (aunque pueden corregir fácilmente las propiedades ellos mismos).

Creo que la forma razonable de avanzar es que uno puede controlar qué propiedad y / o permisos restic restaura mediante algunas opciones del comando de restauración.

¿Alguien puede confirmar que sigue siendo un problema? Desde que se lanzó 0.7.3, hemos realizado algunos cambios en el manejo de permisos (y marca de tiempo) para directorios intermedios ...

¿Fue útil esta página
0 / 5 - 0 calificaciones