scp
Copia archivos entre tu equipo y un servidor usando SSH.
Transfiere archivos de forma segura con el mismo cifrado que SSH. Lo usas para subir un respaldo, publicar archivos en un servidor o bajar un log desde una máquina remota.
scp [opciones] ORIGEN DESTINOSobrescribe sin avisar cualquier archivo que ya tenga el mismo nombre en el destino, sea remoto o local. Revisa la ruta de destino antes de copiar.
Despiece
5 ejemplosSubir un archivo al servidor
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | scp | Comando | El comando para copiar entre equipos de forma segura. |
| 2 | documento.pdf | Argumento | El archivo local que quieres enviar. |
| 3 | usuario@192.168.1.100:/home/usuario/ | Argumento | El destino: usuario y equipo remoto, seguidos de dos puntos y la carpeta. |
Pide la contraseña y copia documento.pdf a la carpeta /home/usuario/ del servidor.
Bajar un archivo del servidor
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | scp | Comando | El comando para copiar entre equipos de forma segura. |
| 2 | usuario@192.168.1.100:/home/usuario/reporte.pdf | Argumento | El archivo remoto: equipo, dos puntos y su ruta completa. |
| 3 | . | Argumento | El destino local; el punto significa la carpeta actual. |
Copia reporte.pdf desde el servidor a la carpeta donde estás parado.
Subir una carpeta completa
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | scp | Comando | El comando para copiar entre equipos de forma segura. |
| 2 | -r | Opción | Recursivo: copia la carpeta y todo lo que tiene dentro. |
| 3 | carpeta-proyecto/ | Argumento | La carpeta local que quieres enviar completa. |
| 4 | usuario@192.168.1.100:/home/usuario/ | Argumento | El destino remoto donde queda la carpeta. |
Sube carpeta-proyecto con todos sus archivos y subcarpetas al servidor.
Conectar a un puerto distinto
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | scp | Comando | El comando para copiar entre equipos de forma segura. |
| 2 | -P | Opción | El puerto del servidor, con P mayúscula. |
| 3 | 2222 | Valor | El puerto por el que escucha el SSH del servidor. |
| 4 | documento.pdf | Argumento | El archivo local que quieres enviar. |
| 5 | usuario@192.168.1.100:/tmp/ | Argumento | El destino remoto en la carpeta temporal del servidor. |
Copia el archivo al servidor aunque su SSH esté en el puerto 2222.
Usar una clave para no escribir contraseña
| N.º | Pieza | Tipo | Qué hace |
|---|---|---|---|
| 1 | scp | Comando | El comando para copiar entre equipos de forma segura. |
| 2 | -i | Opción | Elige el archivo de clave privada para autenticarte. |
| 3 | ~/.ssh/id_ed25519 | Argumento | La ruta de tu clave privada; ~ es tu carpeta personal. |
| 4 | documento.pdf | Argumento | El archivo local que quieres enviar. |
| 5 | usuario@192.168.1.100:/home/usuario/ | Argumento | El destino remoto donde queda el archivo. |
Copia el archivo sin pedir la contraseña del servidor si tu clave pública está registrada ahí. Si la clave tiene frase de acceso, te pedirá esa frase.
Opciones
Las que sí vas a usar| Opción | Qué hace |
|---|---|
| -r | Copia carpetas enteras con todo lo que tienen dentro. |
| -P PUERTO | Puerto del servidor. Ojo: en scp es P mayúscula; en ssh es -p minúscula. |
| -i ARCHIVO | Indica qué clave privada usar para autenticarte, en vez de la contraseña. |
| -C | Comprime los datos antes de enviarlos; útil en conexiones lentas. |
| -v | Muestra el detalle de la transferencia para depurar errores. |
| -q | No muestra la barra de progreso ni mensajes de avance. |
Fallas comunes
| Falla | Remedio |
|---|---|
| Usar -p en minúscula para el puerto, como en ssh. | scp usa -P mayúscula para el puerto. La -p minúscula sirve para conservar fechas y permisos, así que scp toma el número del puerto como si fuera un archivo a copiar y se conecta al 22. |
| Copiar una carpeta sin -r. | scp sin -r solo copia archivos. Si le pasas una carpeta responde not a regular file; agrega -r para copiarla completa. |
| Olvidar el destino y ejecutar solo scp documento.pdf. | scp siempre necesita ORIGEN y DESTINO; si falta uno, solo imprime la ayuda de uso. Asegúrate de los dos argumentos. |
| Creer que scp mueve el archivo y lo borra del origen. | scp copia, no mueve. Si quieres moverlo, borra el original tú mismo cuando confirmes que la copia llegó bien. |
Preguntas frecuentes
- ¿Cómo subo un archivo a un servidor con scp?
- Escribe scp archivo.pdf usuario@servidor:/ruta/. Lo que va después de los dos puntos es la carpeta de destino en el servidor. Te pedirá la contraseña si no usas clave.
- ¿Cuál es la diferencia entre scp y cp?
- cp copia dentro del mismo equipo, entre carpetas locales. scp copia entre equipos a través de la red, cifrado con SSH. Solo necesitas que el otro equipo tenga un servidor SSH y una cuenta para ti.
- ¿Cómo copio una carpeta entera con scp?
- Usa la opción -r: scp -r carpeta/ usuario@servidor:/rutadestino/. Así se copian todos los archivos y subcarpetas de una sola vez.
- ¿scp borra el archivo de origen al copiarlo?
- No. scp solo copia y siempre deja intacto el archivo original. Si quieres moverlo, borra el origen tú mismo después de la copia.
- ¿Qué puerto usa scp por defecto?
- El 22, el mismo de SSH. Si tu servidor escucha en otro, indica -P PUERTO (la P mayúscula), por ejemplo scp -P 2222 archivo usuario@servidor:/tmp/.