GNU/Linux >> Tutoriales Linux >  >> Linux

rsync no eliminará archivos en el destino

Solución 1:

Eliminar el * . Como se menciona en las páginas man de rsync, el --delete La opción no funciona con entradas de comodines.

Usa esto en su lugar:

rsync -a --delete $DIR1/ $DIR2/

"--deleteEsto le dice a rsync que elimine los archivos extraños del lado receptor (los que no están en el lado emisor), pero solo para los directorios que se están sincronizando. Debe haber pedido a rsync que envíe el directorio completo ( por ejemplo, dir o dir/ ) sin usar un comodín para el contenido del directorio (por ejemplo, dir/* ) ya que el shell expande el comodín y, por lo tanto, rsync recibe una solicitud para transferir archivos individuales, no el directorio principal de los archivos. Los archivos que se excluyen de la transferencia también se excluyen de la eliminación a menos que utilice el --delete-excluded o marque las reglas para que solo coincidan en el lado de envío (consulte los modificadores de inclusión/exclusión en la sección REGLAS DE FILTRO)."

Solución 2:

El motivo es que está llamando a rsync en /tmp/1/b, que no tendrá en cuenta el archivo /tmp/1/a en absoluto.

Su intención parece ser sincronizar el directorio /tmp/1/ -- si usa "/tmp/1/" como fuente en lugar de los archivos individuales, notará que "a" ha sido eliminado del directorio y eliminará del objetivo.

Solución 3:

Si cambia la segunda línea de rsync a rsync -a --delete $DIR1/ $DIR2 (sin el *) funcionará. La razón es que el shell expande el * a los nombres de archivo en el primer directorio, que es solo b en su caso, por lo que rsync no considerará en absoluto el archivo a que falta, ya que el comando que se ejecuta es en realidad rsync -a --delete $DIR1/b $DIR2 .


Linux
  1. Opción Rm para fallar en archivos inexistentes?

  2. ¿Cómo silenciar selectivamente Rsync?

  3. cp -r sin archivos ocultos

  4. Linux equivalente a robocopy?

  5. archivos rsync más nuevos que 1 semana

Comando Rsync en Linux con ejemplos

Ejemplos de Rsync para transferir archivos en Linux

Linux Eliminar archivos y directorios

rsync N archivos más nuevos en un directorio

fusionar carpetas de linux:rsync?

Archivos Rsync a través de host intermedio