En este post te mostraré un ejemplo sencillo sobre cómo usar scp para copiar archivos entre dos computadoras, ya sea que copiemos desde A hacia B o desde B hacia A.
scp significa secure copy y, aunque suene redundante, copia archivos de manera segura, algo así como ssh.
Voy a explicar todo con ejemplos.
Para ejemplificar usaré mi computadora con Windows y mi Raspberry Pi 4. En la vida real podrían ser dos servidores separados geográficamente, una máquina virtual, etcétera.
Llamaremos a mi computadora con Windows cliente, y a la Pi servidor. Vamos a ver cómo copiar de cliente a servidor, y de servidor a cliente.
Vamos a ejecutar todos los comandos desde el cliente, incluso para copiar un archivo hacia el servidor.
La sintaxis es:
scp origen destino
Cuando el origen o destino son algo remoto, indicamos el usuario y la ip a la que hay que conectarse. Suponiendo que copiamos desde un host remoto sería:
scp usuario@ip:ruta_del_archivo destino
Con los ejemplos quedará mejor explicado. Por favor nota que los dos puntos (:
) separan al usuario con host, de la ruta.
Ejecutamos:
scp escribir_contenido.py pi@192.168.1.79:/home/pi/
El origen es escribir_contenido.py
, aquí podría igualmente ser la ruta absoluta de un archivo.
El destino es /home/pi/
dentro del servidor con la ip 192.168.1.79
, por ahora nos estamos conectando como el usuario pi
. Al conectarnos se nos pedirá la contraseña:
Así que básicamente estamos subiendo o enviando un archivo. Si en el servidor listamos el contenido veremos el archivo que subimos:
Veamos el proceso inverso; ahora vamos a descargar un archivo. Recuerda que esto igualmente lo haremos dentro del cliente.
Primero, en el servidor, observamos el archivo que vamos a copiar y vemos su ruta:
La ruta absoluta es /home/pi/k.png
así que ejecutamos:
scp pi@192.168.1.79:/home/pi/k.png C:\Users\usuario\Desktop\
Ahora el origen es el servidor remoto, y el destino una ruta local. Al ejecutar, la imagen llamada k.png estará en mi escritorio:
También puedes copiar una carpeta completa. En ese caso la sintaxis es:
scp -r directorio_local usuario@host:/home/parzibyte
Por ejemplo:
scp -r dist usuario@host:/home/parzibyte
Va a copiar la carpeta dist
y todo su contenido en /home/parzibyte
, creando la carpeta dist
en /home/parzibyte
. Si quisieras copiar todo el contenido, recomiendo copiar toda la carpeta y luego con SSH mover el contenido situándote en la carpeta y ejecutando mv dist/* .
Así es como puedes usar scp para copiar archivos entre servidores. En este caso copié de Windows hacia Linux, pero podría ser igualmente de Linux a Linux.
Si quieres, puedes leer más sobre Linux en mi blog.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.