rsync recursivo solo en el mismo soporte

21

Con suerte, esta simple pregunta tiene una respuesta simple.

Quiero ejecutar rsync de forma recursiva con la opción -r , pero sin descender a un punto de montaje diferente (sistema de archivos). es decir, como la opción -mount con el comando find , se lee una página de manual, por ejemplo, “No descienda directorios en otros sistemas de archivos. Un nombre alternativo para -xdev , para compatibilidad con algunas otras versiones de find ".

Danorton
fuente

Respuestas:

29

Creo que quieres la -xxopción:

-x, --one-file-system
Esto le dice a rsync que evite cruzar un límite del sistema de archivos cuando se repite. Esto no limita la capacidad del usuario para especificar elementos para copiar desde múltiples sistemas de archivos, solo la recursión de rsync a través de la jerarquía de cada directorio que especificó el usuario, y también la recursión análoga en el lado receptor durante la eliminación. También tenga en cuenta que rsync trata un montaje lqbindrq en el mismo dispositivo como si estuviera en el mismo sistema de archivos.

Si se repite esta opción, rsync omite todos los directorios de punto de montaje de la copia. De lo contrario, incluye un directorio vacío en cada punto de montaje que encuentra (utilizando los atributos del directorio montado porque los del directorio de punto de montaje subyacente son inaccesibles).

La razón que digo -xxse debe a la sección en negrita (énfasis agregado).

nerdwaller
fuente
Gracias. Debo haberlo pasado una docena de veces en la página del manual. :-)
danorton
No se preocupe, simplemente utilicé la función de búsqueda ( /) y busqué "montar". Tomó algunos nexts. Me alegro de que funcione!
nerdwaller