Eu transfiro arquivos usando este comando
scp <localfile> user@host:<destination>
O comando acima só funciona quando não estou ssh'd no servidor.
Como transfiro arquivos locais para a máquina host quando já estou com o SSH conectado ??
Eu ssh usando ssh user@hostname
ssh
file-transfer
Onipresente
fonte
fonte
Respostas:
Boa pergunta.
scp
novamente, mas o caminho oposto. Eu fiz e aqui está:editado para adicionar: conforme indicado nos comentários, isso requer que o computador remoto possa acessar o computador local. E o sshd ou (openssh-server) precisa estar instalado e em execução na máquina local.
fonte
Seria bom saber o que você está executando na máquina host. Se você estiver usando Linux,
Deveria trabalhar.
fonte
user@host
parece se referir ao computador que você não está controlando no momento. Portanto, quando o OP não está conectado ao computador remoto, entãouser@host
é o computador remoto. Quando o OP está conectado ao computador remoto, entãouser@host
é o computador local. Se minhas suposições estão corretas, essa resposta faz sentido.Se você tiver um caminho de volta à sua máquina local (sua máquina local pode ser acessada pela remota - geralmente quando as duas máquinas estão na mesma LAN), o uso de scp na máquina remota deve funcionar (
scp local:/path-to-file .
).Se a sua máquina local não puder ser acessada a partir da remota (geralmente verdadeira se o seu controle remoto for um VPS na Internet e a sua máquina local tiver um IP dinâmico), a melhor maneira é abrir um novo terminal na máquina local e copiar o arquivo.
Outra maneira, mais complicada e certamente não necessária apenas para copiar arquivos, seria criar uma VPN entre as máquinas (ou redes) para que ambas as máquinas estivessem acessíveis uma da outra e você pudesse usar o scp de uma máquina ou da outra.
fonte
enquanto estiver conectado ao sistema remoto (mais fácil colocar apenas o CD no local do arquivo) sudo scp local_do_arquivo / nome_do_arquivo usuário @ host: local_do_arquivo
enquanto desconectado do sistema remoto sudo scp authoried_user @ hostname: file_location / file_name new_location_on_local_machine
NOTA: lembre-se, enquanto estiver desconectado de sistemas remotos, se for um novo terminal, a primeira senha será sudo password, a segunda senha será a senha de usuário autorizada. se você já fez o sudo anteriormente nesse terminal específico, é apenas a senha do usuário autorizado que você precisa. cuidado com isso, torna complicado.
fonte