scp
funciona bem em todos os casos, mas o Raspberry Pi é muito fraco para copiar arquivos com eficiência em um ambiente seguro (lan). Teoricamente possível, 6,75 MB / s via LAN sem fio de 54 Mbit diminuem para cerca de 1,1 MB / s.
Existe uma maneira de copiar arquivos remotamente sem criptografia?
Deve ser um comando cli sem dependências para serviços extras (ftp, samba) ou pelo menos com um mínimo de configuração. Quero dizer, uma ferramenta padrão que funciona muito bem com os programas / serviços padrão (como scp / ssh).
command-line
ssh
ftp
file-transfer
smb
ManuelSchneid3r
fonte
fonte
scp
)Respostas:
Você pode estar procurando
rcp
, ele executa execução remota via,rsh
assim você terá que confiar nisso e ter em mente que toda a comunicação é insegura.fonte
Você não pode desativar a criptografia completamente no ssh / scp, mas pode forçá-lo a usar uma cifra mais fraca que consome muito menos CPU. Certifique-se de que a compactação não esteja ativada no ssh_config ou na linha de comando e adicione
-c arcfour,blowfish-cbc
à sua linha de comando scp para selecionar cifras mais fracas.fonte
Host
seção do seu ssh_config, useCiphers arcfour,blowfish-cbc
para espelhar a-c
opção acima . No entanto, se suas CPUs suportam o conjunto de instruções AES-NI, eu tentaria mudar para[email protected]
(sim, esse é o nome da cifra, incluindo o@
material), que usará o incrivelmente rápido (com AES-NI) AES128-GCM.Eu escrevi este script rápido:
São necessários dois argumentos, o host para enviá-lo e o arquivo para o qual você está enviando. Funciona apenas para um arquivo. Ele usa ssh para iniciar uma
netcat
escuta no lado oposto e depoisnetcat
envia para essa porta de escuta. Eu adicioneipv
ao início uma barra de progresso agradável. Substituapv
porcat
se você não tiver ou quiser isso. Mude a porta 2020 para o que quiser. Isso requer que você tenha acesso ssh ao sistema remoto.Isso é completamente inseguro, mas é isso que você queria.
fonte
Acho que o NFS é bastante subestimado para esse tipo de tarefa, onde você deseja comodidade, rapidez e não se preocupa com segurança. O NFS é realmente simples de configurar, especialmente no cliente: consulte este pequeno guia para o ubuntu , junto com esta página de ajuda da comunidade ubuntu, mais longa . Do ponto de vista do cliente que você acabou de montar o diretório do servidor e ele se parece com uma unidade local e você pode usar
cp
oursync
ou qualquer comandos que você deseja.fonte
Existem correções para o openssh para HPC (High Performance Computing) que melhoram a taxa de transferência ssh aumentando os tamanhos das janelas de transferência e desativando a criptografia - se você não se importa em recompilar (e provavelmente correções de portabilidade), verifique HPN-SSH . Como BowlOfRed reparou no comentário, você precisa usar os patches em tanto o cliente e servidor.
Você também pode usar
rsync
- em uma máquina como um daemon e como um cliente simples na outra. É particularmente útil para sincronizar volumes maiores através de um link de rede mais lento que a leitura (e a soma de verificação) dos arquivos, pois é capaz de transferir apenas as partes dos arquivos que diferem entre cliente e servidor. Veja as páginas do manualrsync(1)
ersyncd.conf(5)
para detalhes.fonte
O script bash acima, de Ben Collins, é uma boa solução, mas ele não possui o
-p
sinalizador da porta no lado do servidor. Executá-lo como está seria apenas fornecer um arquivo vazio ou um servidor travado que nunca faz nada.É mais fácil ver o que isso está fazendo se você apenas observar os comandos.
nc
, ou netcat, é como cat, exceto que a saída é ecoada em outra máquina por meio de uma conexão TCP. Você está apenas enviando a saída de nc no servidor para o arquivo de destino. Você pode configurar o destino da mesma maneira e fazerecho foo | nc dest.ip.address 2020
e fazer todo tipo de coisa com nc.fonte
já faz algum tempo desde a última atualização, algumas cifras foram alteradas e, pelo menos no freeBSD, o blowfish não está mais disponível. A cifra mais rápida que encontrei nas instalações ssh atuais é -c aes128-cbc.
Apreciar.
fonte
Se você deseja transferir estruturas de arquivos inteiras, use tar.
no sistema receptor:
depois no sistema de envio:
Assista o arquivo morto em um sistema e extraia no outro;)
fonte