Publi

[Bash script] Hacer un mirror de un servidor FTP

Este script puede venir muy bien para copiar sitios enteros y sólo tengamos acceso por FTP. Sólo necesitáis tener lftp instalado.
Lo realmente interesante de este script es que podéis programarlo como tarea cron o correrlo remotamente.

El script no es mío, es uno de estos copia y pegas que tengo desde hace tiempo y seguro que encontráis por la red mil parecidos a este. Normalmente para cada sitio donde tengo que ejecutar esto modifico este script, pero es muy fácil hacer un entorno un poco más amigable, aceptando argumentos, notificando al terminar, etc.

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash    
HOST="ftp.servidor.remoto"
USER="usuario"
PASS="password"
FTPURL="ftp://$USER:$PASS@$HOST"
REMOTEPATH="/ruta/dentro/del/ftp"   # / o /www, por ejemplo
LOCALPATH="/ruta/local_donde/copiar"
lftp -c "set ftp:list-options -a;
open '$FTPURL';
cd $REMOTEPATH;
lcd $LOCALPATH;
mirror --verbose"

Como curiosidad, podemos utilizar junto con –verbose, la opción –delete y borrar todos los archivos del servidor remoto.

Foto: Steven Bratman (Flickr CC-by a 24/12/2014)

También podría interesarte...

Leave a Reply