con scp puedo obtener un archivo
scp remoteA:file .
y poner un archivo
scp file remoteB:
pero cuando lo intento
scp remoteA:file remoteB:
yo obtengo
ssh: Could not resolve hostname remoteB: Name or service not known
lost connection
¿por qué?
EDITAR:
la descripción de remotoA y remotoB está en ~/.ssh/config
Respuesta1
Probablemente no esté relacionado con scp en sí, sino con algún tipo de resolución de nombres de un host a otro. Otra cosa a considerar es la autenticación. es mejor que tenga una clave de autenticación sin contraseña de A a B. ¿En qué .ssh/config de host está definiendo estos hosts? scp no encuentra esa definición. Pruebe el fqdn real del host y debería funcionar bien, si el problema es la definición del host. Además, utilice -v para ver si se pueden encontrar más detalles sobre el error.
Respuesta2
Debe especificar un host al que remoteA
pueda acceder porque la copia se realiza remoteA
directamente a remoteB
.
Para evitar esto puedes utilizar la -3
opción. man scp
dice lo que hace:
Las copias entre dos hosts remotos se transfieren a través del host local. Sin esta opción, los datos se copian directamente entre los dos hosts remotos. Tenga en cuenta que esta opción desactiva el medidor de progreso.
Respuesta3
Para aquellos que vienen aquí porque scp acusa a un archivo local de ser un nombre de host que no puede resolver (otra fuente deNombre o servicio desconocido), como:
> scp archive_2017-03-01-09:54:02.tar.gz backupserver:/var/backups/
ssh: Could not resolve hostname archive_2017-03-01-09:54:02.tar.gz: Name or service not known
Solución alterna:
> scp ./archive_2017-03-01-09:54:02.tar.gz backupserver:/var/backups/