¿Cómo copiar archivos a otra máquina a través de la terminal?

39

Tengo Ubuntu 10.04 ejecutándose a través de VMPlayer. Y tengo otra máquina (enrutador Asus RT-N16). Puedo conectarme al enrutador con telnet y ver su sistema de archivos. ¿Cómo puedo copiar el archivo desde la máquina local (el archivo es / home / user / helloworld-c ) al enrutador (carpeta * / tmp / mnt / discb_1 *)?

LA_
fuente

Respuestas:

77

¿Existe la posibilidad de conectarse a través de SSH? Tal vez deberías considerar la utilidad "scp". Es muy simple, mira la página del manual :

man scp

El uso muy básico:

scp remote_user@remote_host:/path/to/remote/file /path/to/local/file

y viceversa:

scp /path/to/local/file remote_user@remote_host:/path/to/remote/file
Pavel S.
fuente
Gracias, funciona! ¿Cómo puedo hacer lo mismo con toda la carpeta?
LA_
44
Use la opción "-r": scp -r user @ host: / ruta / archivo / ruta / local. Por favor, marque la respuesta como aceptada si funciona.
Pavel S.
Simplemente mire la página del manual para scp (en la terminal, escriba "man scp"). Hay muchas más opciones.
Pavel S.
¿Cómo puedo copiar carpetas también con los archivos, este comando sólo copiar sólo los archivos
amit_game
@LA_ puedes comprimir todos los archivos.
Silvio Delgado
12

Para copiar un directorio no vacío de la computadora remota a su computadora:

scp -r [email protected]:/home/vrc/Desktop/www /home/ourusername/Desktop

Para copiar un archivo, simplemente excluya la -ropción:

scp [email protected]:/home/vrc/Desktop/file1 /home/ourusername/Desktop

Para copiar desde su computadora a la computadora remota, simplemente cambie la ubicación y el destino en el ejemplo anterior. Para más información hazlo man scp.

errakeshpd
fuente
10

Otra forma de hacerlo: (a través del archivo pem)

Si quieres usar el pemarchivo y eres ROOTusuario:

1. usuario root:

sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt [email protected]:/you-server-destination-path/

tenga en cuenta los dos puntos :entre el servidor IPy la ruta de destino.

Si no puedo iniciar sesión con el rootusuario, consulte el paso 2.

2. usuario estándar:

supongamos que es un ubuntuusuario con privilegios estándar.

sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt [email protected]:/home/ubuntu/

esto colocará el archivo en el directorio de inicio. luego inicie sesión en el servidor remoto con el usuario estándar. y hacer

sudo su

cambiarás a rootusuario. luego mueva el archivo al directorio de destino

mv /home/ubuntu/your-local-file.txt /you-server-destination-path/your-local-file.txt

¡A menudo encuentro este problema, por lo tanto, comparto una forma alternativa de hacer el trabajo!

Kaleem Ullah
fuente