forzar a rsync a sobrescribir archivos en el destino, incluso si son más nuevos


43

Tengo un script de copia de seguridad rsync que ejecuto, que también restaura los archivos de donde vinieron cuando pregunto. Pero si los archivos en el destino son más nuevos que los de la copia de seguridad cuando intento restaurar, no los reemplazará. Realmente quiero reemplazar los archivos más nuevos con los de la copia de seguridad, pero no veo una manera de hacer que rsync haga esto.

tldr: ¿hay alguna forma de forzar a rsync a sobrescribir archivos en el destino?

editar: he estado ejecutando rsync -avhpCuando quiero restaurar una copia de seguridad, utilizo el mismo comando con el "a" y "desde" intercambiados. Por lo tanto, intenta copiar archivos de la unidad de copia de seguridad en el lugar de mi computadora al que pertenecen.


14
rsyncsiempre sobrescribirá los archivos en el destino a menos que le indique que no haga esto (opción -u, --update). Verifique los argumentos de su línea de comando.
scai

¿Puedes compartir tu comando rsync real? Rsync sobrescribirá los archivos más antiguos con los más nuevos, por lo que lo más probable es que compare archivos con solo una marca de tiempo, y las fechas están ligeramente fuera de control entre las 2 computadoras.
slm

He intentado usar touchpara hacer que los archivos que quiero reemplazar sean "más antiguos" que mi copia de seguridad, pero todavía no reemplaza los existentes en mi carpeta de inicio.
jedipixel

¿Quizás '-I --modify-window = 999999999' funcione para usted?
jelle foks

Respuestas:


47

El manual dice:

-I, --ignore-times   don't skip files that match size and time

Con mas detalles:

-I, --ignore-times

Normalmente, rsync omitirá cualquier archivo que ya tenga el mismo tamaño y tenga la misma marca de tiempo de modificación. Esta opción desactiva este comportamiento de "verificación rápida", lo que hace que todos los archivos se actualicen.

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.