servidores - Transferencia de archivos a través de SSH
transferir archivos sftp linux (4)
Debe especificar el origen y el destino, y si desea copiar directorios, debe consultar la opción -r.
Entonces, para copiar recursivamente / home / user / lo que sea del servidor remoto a su directorio actual:
scp -pr user@remoteserver:whatever .
Estoy SSHing en un servidor remoto en la línea de comandos e intento copiar un directorio en mi máquina local con el comando scp
. Sin embargo, el servidor remoto devuelve este mensaje de "uso":
[Stewart:console/ebooks/discostat] jmm% scp -p ./styles/
usage: scp [-1246BCEpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 [...] [[user@]host2:]file2
[Stewart:console/ebooks/discostat] jmm%
Me gustaría poder transferir archivos en ambas direcciones. Por lo que leí, pensé que el comando anterior funcionaría para descargar, y scp -p [localpath] [remotepath]
para cargar?
Necesitas scp
algo en algún lugar. Tiene scp ./styles/
, por lo que está diciendo copia segura ./styles/
, pero no dónde copiarla.
Generalmente, si quieres descargar, irá:
# download: remote -> local
scp user@remote_host:remote_file local_file
donde local_file
podría ser realmente un directorio para colocar el archivo que está copiando. Para cargar, es lo contrario:
# upload: local -> remote
scp local_file user@remote_host:remote_file
Si desea copiar un directorio completo, necesitará -r
. Piense en scp
como en cp
, excepto que puede especificar un archivo con user@remote_host:file
así como solo archivos locales.
Edición: como se indica en un comentario, si los nombres de usuario en los hosts locales y remotos son los mismos, entonces se puede omitir al usuario al especificar un archivo remoto.
No, todavía necesitas scp [from] [to]
la manera que estés copiando
La diferencia es que necesitas scp -p server:serverpath localpath
Si copia a / desde su computadora de escritorio, use WinSCP, o si está en Linux, Nautilus admite SCP a través de la opción Conectar al servidor.
scp solo puede copiar archivos a una máquina que ejecuta sshd, por lo tanto, debe ejecutar el software cliente en la máquina remota desde la que está ejecutando scp.
Si está copiando en la línea de comando, use:
# copy from local machine to remote machine
scp localfile user@host:/path/to/whereyouwant/thefile
o
# copy from remote machine to local machine
scp user@host:/path/to/remotefile localfile