¿Cómo configuro los permisos de destino con rsync (chown chmod)


13

Estoy tratando de hacer un rsync local, desde un punto de montaje a una carpeta local. Necesito establecer el propietario, el grupo y los permisos en configuraciones específicas. Esto es lo que estoy usando:

 rsync -rtlv --chown=process:sambausers --chmod=D770,F770 /mnt/owncloud_mnt/Engineering/ /Drive_D/docs/Engineering_test

Termino con los permisos 760 en directorios y archivos, y root: root en propiedad (rsync se ejecuta como root).

¿Qué estoy haciendo mal?

TIA


¿Es el sistema de archivos de destino algo así como NTFS, ya que es "Drive_D"?
Sami Kuhmonen

sistema de archivos de destino es ext4
Roger Creasy

¿Agregar -p ayuda?
Sami Kuhmonen

-p hace que funcione chmod en archivos movidos. Sin embargo, necesito hacer una prueba para asegurarme de que no sobrescribe los permisos en ningún archivo existente. Gracias. Y todavía tengo el problema de la comida
Roger Creasy

1
Para eso realmente necesitas -og creo
Sami Kuhmonen

Respuestas:


19

rsync necesita que le digan que desea establecer los permisos y la información del propietario / grupo. Sería lógico suponer que tener --chmodo --chowndecir eso, pero no lo hacen.

Para que se propaguen los permisos, necesita el indicador --permso -py para el propietario / grupo que necesita --owner --groupo -ogindicadores para que se establezca la información del propietario / grupo / permiso.

La documentación está un poco poco clara, por lo que no está claro cómo se manejan los permisos con diferentes combinaciones o si los archivos existentes se ven afectados.


todavía no está claro, porque al ejecutarse como sudo, lo que necesito hacer, los documentos linux.die.net/man/1/rsync señalan que solo puede establecer el destino igual que la fuente. El problema es que necesito configurarlo como lo que es el usuario registrado, por ejemplo$(whoami)
Brian Thomas

2

Encontré que esta versión de StackOverflow de la misma pregunta es más útil, porque parece que Roger y yo tenemos rsyncs con diferentes preferencias para el formato --chmod(el mío es 3.1.3 de un paquete Debian).

Como dijo Sami, rsync necesita que se le digan "permisos", por lo tanto -p, inclúyalo o hágalo implícitamente usando -a. Pero luego, para que el comando se ejecute realmente, necesita (por ejemplo, para los directorios 755 y archivos 644) --chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=r, en lugar del formato "D755, F644".

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.