Copiar archivos de un servidor linux a otro con el comando SCP

Comando SCP para copiar ficheros entre servidores

El comando SCP es la versión segura del comando CP. De ahí que se llame Secure CoPy. Es una extensión del comando SSH y permite que se puedan copiar archivos entre distintos servidores o máquinas de forma segura, pidiendo autenticación previa.

El formato del comando es el siguiente:

scp [servidor origen]:[archivo] [servidor destino]:[archivo]

Donde [archivo] puede ser un archivo como tal o una ruta de un archivo, o una ruta de una carpeta:

  • Ejemplo de ruta de archivo: /home/usuario/archivo.txt
  • Ejemplo de ruta de carpeta: /home/usuario/carpeta
  • Ejemplo de archivo: archivo.txt

La última opción es cuando estamos sobre la carpeta en la que se encuentra el archivo, como es obvio.

Después del usuario@servidor hay que usar el signo de los dos puntos : para indicar a continuación el archivo o ruta de lo que se quiere copiar.

Copiar de mi servidor a otro

Viendo los ejemplos anteriores, el caso de querer copiar un archivo desde mi máquina a otra, tendremos que hacer lo siguiente:

scp archivo.txt usuario@dominio.com:/home/usuario/

En este caso, hemos puesto como servidor destino el usuario y el dominio, pero podemos usar también como alternativa:

  • Con la ip de la máquina: usuario@192.168.1.15
  • Con el nombre de la máquina: usuario@srvpruebas

Cuando pulsemos el intro nos pedirá la contraseña del usuario de la máquina destino para que nos permita realizar la copia.

Copiar de otro servidor al mío

Esto sería al contrario, copiar desde un servidor al nuestro.

scp usuario@dominio.com:/home/usuario/ .

En este caso he puesto el punto para indicar que lo copie en la carpeta que me encuentro. Pero podría haber puesto también por ejemplo /home/usuario/carpeta para que lo copiara en esa ruta.

Copiar entre dos servidores

Si queremos realizar la copia entre servidores en los que no estamos logados, es decir, servidores ajenos al que estamos conectados, tenemos que hacer lo siguiente:

scp usuario_uno@servidor1:/home/usuario_uno/archivo.txt usuario_dos@servidor2:/home/usuario_dos/

Aquí nos pedirá las credenciales de ambos usuarios para poder realizar la copia.

Copia recursiva con el comando SCP

Si queremos copiar una carpeta con todos sus archivos, tenemos que usar el parámetro -r.

scp -r /carpeta usuario@servidor:/home/usuario/carpeta-destino

Esto yo no lo recomiendo, sobre todo si la carpeta contiene cientos de archivos y muy pequeños. La copia puede tardar demasiado. Para estos casos es recomendable comprimirla primero, copiar el archivo comprimido, y descomprimir el servidor destino. Ahorrarás mucho tiempo.

Para comprimir arhivos en linux te recomiendo el tutorial: comprimir y descomprimir archivos en linux

Comando SCP con puerto

Si necesitas especificar el puerto del host remoto debes usar el parámetro:

-P [puerto]

donde -P debe ser en mayúsculas. Ejemplo:

scp -P 80 archivo.txt usuario@dominio.com:/home/usuario/

 

Fuente: https://www.javierrguez.com/copiar-archivos-de-un-servidor-a-otro-en-linux-con-el-comando-scp/

  • 0 Los Usuarios han Encontrado Esto Útil
¿Fue útil la respuesta?

Artículos Relacionados

Como actualizar Paquetes Linux Debian a la ultima versi?n existente

Para realizar la actualizacion de los ultimos paquetes debian lo podremos realizar tecleando en...

XAMPP CONCEPTO DE SEGURIDAD

Si te asustas como yo, luego de ver este pantallon en la pag. que se supone entrar?a directamente...

Cambiar la hora de un contenedor Openvz

Por defecto una instalacion de un VZ no deja ajustar el reloj del sistema. Hay varias soluciones...

Como instalar y usar SCREEN en linux

Screen otra util herramienta en linux Leyendo unos feeds de RedHat Magazine, me encontre con...

Eliminar servicio web en Debian

Para eliminar el servicio web en debian lo aremos con un unico comando:# apt-get remove apache2*

Powered by WHMCompleteSolution