Archivo

Entradas Etiquetadas ‘copiar’

rsync por ssh en puerto no estandar

jueves, 25 de octubre de 2012 Sin comentarios

En el post anterior expliqué el uso del comando rsync para copiar archivos local y remotamente, copiando sólo las diferencias si ya existen los archivos en el destino.

 

En la copia remota por SSH está la dificultad de que no existe un parámetro tipo "-p" o "-P" para especificar el puerto SSH en caso de que sea distinto del estándar (22).

 

Pero Google lo sabe y me arrojó esta página web donde con el parámetro "-e" se puede personalizar el comando ssh y ahí se puede especificar un puerto distinto.

 

El comando viene a ser el siguiente:

 

rsync –av –e "ssh –p 2222" /var/www/ user@sitio.com:/home/user/public_html/

 

Este comando es útil para sincronizar tu servidor web local con el de tu cuenta en Hostgator, donde el puerto SSH es el 2222.

Sincronizar carpetas en linux con rsync

jueves, 25 de octubre de 2012 Sin comentarios

Me ha pasado varias veces que quiero sincronizar una carpeta con otra, por ejemplo al hacer respaldos para no borrar todo y copiar todo de nuevo, siendo que no todos los archivos se han modificado.

 

Pero en cualquier distro de linux está la solución: es el comando rsync.

 

Este comando – como dice su página de manual – sirve para copiar archivos de un lugar a otro, remotamente y localmente, y tiene la característica “delta-transfer” que sólo copia las diferencias entre archivo origen y destino.

 

image

 

La sintaxis del comando es

 

rsync –av <origen> <destino>

 

Donde origen o destino pueden ser carpetas y archivos del sistema de archivos local. En el caso de sistemas de archivos remotos se usa la misma sintaxis que el comando scp: <host>:<path>

 

Ejemplos:

 

rsync –av /var/www /media/pendrive/

 

Crea carpeta www en /media/pendrive y copia su contenido ahí

 

rsync –av /var/www/ /media/pendrive/www

 

Igual que el comando anterior, en el origen no tiene el "/" al final, eso quiere decir que "quiero copiar la carpeta misma", mientras que el primero "quiero copiar su contenido"

 

rsync –av /var/www/ misitio.com:/home/misitio/public_html/

 

Este comando copia el contenido de /var/www en la carpeta public_html remota. Util para sincronizar los archivos del hosting, siempre que éste soporte SSH.

 

rsync –av /var/www/ usuario@misitio.com:/home/misitio/public_html/

 

Y si el usuario del hosting no es el mismo de tu computador debes especificarlo igual que en ssh y scp.