Dei uma olhada em outras perguntas aqui e em vários tutoriais de "uso de scp" na Internet, mas não consigo entender o que está errado.
Estou usando o Linux Mint e estou tentando descobrir como o scp funciona.
Eu tenho um arquivo file.ext (no meu computador) no diretório / home / name / dir /
Eu me conecto a uma máquina remota usando ssh , como:
ssh -p 2222 username@domain
ele me pede a senha e o shell exibe:
username@domain ~ $
agora, se eu emitir o comando (antes de executar o ssh, eu estava no diretório local / home / name / dir ):
scp -r -P 2222 file.ext username@domain
saída é:
cp: cannot stat ‘file.ext’: No such file or directory
O mesmo resultado se, em vez de file.ext, eu escrever o caminho completo
scp -r -P 2222 /home/name/dir/file.ext username@domain
Além disso, o administrador do servidor me disse que eu devo carregar o arquivo no meu diretório pessoal remoto (em vez de raiz), como:
scp -r -P 2222 file.ext username@domain:~/
mas quando eu faço e pressiono "Enter" nada acontece, como se o shell estivesse esperando por mais informações.
Resumo dos meus problemas:
- cp: esse arquivo ou diretório não existe
- shell "preso" em ~ /
Alguma sugestão?
scp
, o remoto lado sempre tem que conter o cólon (por exemplo remotehost:/tmp
), então ele só vai fazer uma cópia ordinária ( scp /tmp/foo.txt example.com
copia /tmp/foo.txt
em um arquivo local example.com
)
-r
bandeira, como isso não é necessário para copiar arquivos individuais (é usado para recursivamente copiar diretórios)
localuser@machineA: ssh -p 2222 username@domain
(para indicar que você está executando o comando ssh como localuser em machineA)