Buen punto, gracias por el script. Permíteme compartir la versión de rsync
.
En el ejemplo a continuación, sql y attachments se sincronizan por separado. No es necesario incluir attachments en el archivo de copia de seguridad. Tampoco es necesario eliminar copias de seguridad antiguas.
Uso Chocolatey para instalar cwrsync. Después de la instalación, solo es necesario agregar algunas líneas al final del archivo cmd + crear una programación:
C:\ProgramData\chocolatey\lib\rsync\tools\cwrsync.cmd
Por ejemplo:
rsync -rvm --delete --ignore-errors --ignore-existing --size-only --chmod=ugo=rwX -e "ssh -i /cygdrive/c/Users/user1/.ssh/id_rsa" login@host:/var/discourse/shared/standalone/backups/default/ /cygdrive/d/backup/forum/db/
rsync -rvm --delete --ignore-errors --ignore-existing --size-only --chmod=ugo=rwX -e "ssh -i /cygdrive/c/Users/user1/.ssh/id_rsa" login@host:/var/discourse/shared/standalone/uploads/ /cygdrive/d/backup/forum/uploads/
Nota 1: Usa /cygdrive/c/ en lugar de C:, lee el archivo cmd para referencia y sintaxis.
Nota 2: Puedes modificar el comando para usar una contraseña en lugar de una clave ssh (formato PEM)
Nota 3: Si no pones una barra inclinada después de la carpeta dump/, rsync copiará la carpeta, pero si lo haces, solo copiará el contenido de la carpeta.
Nota 4: si chocolatey actualiza cwrsync, crea una copia de seguridad del cmd anterior en la misma carpeta. Necesitas copiar tus comandos al nuevo cmd manualmente para continuar con las copias de seguridad.
Importante: Establece la misma regla en el Programador como escribió el OP. La línea del programador es:
C:\ProgramData\chocolatey\lib\rsync\tools\cwrsync.cmd >> d:\backup\cwrsync.txt 2>&1
Esto agregará la salida al archivo cwrsync.txt. Eso es todo.