Transferência simples de arquivos

17

Considerando duas caixas Linux em uma LAN, qual é a maneira mais simples de transferir arquivos entre elas?

    
por David Thornley 11.08.2010 / 14:08

10 respostas

22

Eu uso scp .

scp source desthost:/path/to/dest/.

para copiar da máquina local para a máquina remota ou

scp srchost:/path/to/file/file .

para copiar de uma máquina remota para a máquina local.

Se o nome de usuário não for o mesmo na máquina remota,

scp user@srchost:/path/to/file/file .
    
por 11.08.2010 / 14:31
6

Eu costumo montar um diretório através do ssh via FUSE e sshfs.

Montagem:

$ sshfs name@server:/path/to/dir /path/to/mount/point

Desmontar:

$ fusermount -u /path/to/mount/point
    
por 11.08.2010 / 14:44
5

Eu uso o netcat (se não precisar de segurança)

nc -l -p 1234 < send_file   # 'server'
nc x.y.z.t 1234 > receive_file  # 'client'
    
por 11.08.2010 / 14:37
5

nfs pode ser útil.

O Network File System (NFS) permite que um nó cliente realize o acesso transparente a arquivos pela rede. Usando o NFS, um nó cliente opera em arquivos que residem em uma variedade de servidores e arquiteturas de servidor, e em uma variedade de sistemas operacionais. As chamadas de acesso a arquivos no cliente (como solicitações de leitura) são convertidas em solicitações de protocolo NFS e enviadas ao sistema do servidor pela rede.

Você pode precisar da ajuda do seu Unix Admin para configurá-lo pela primeira vez, mas é muito útil.

    
por 11.08.2010 / 14:45
2

Para transferências de arquivos fora do padrão, geralmente uso SFTP ou um compartilhamento de samba existente.

Para manter a sincronia, sugiro que você tente rsync ou unison (para sincronização bidirecional)

Editar: scp seria melhor do que sftp , pois funcionaria em todos os hosts habilitados para SSH

    
por 11.08.2010 / 14:12
2

Para fazer backups, geralmente uso o rsync. Se eu quiser fazer o backup em uma máquina remota, colocarei uma linha no / etc / fstab para manter a máquina remota montada pelo NFS ou CFIS (Samba).

192.168.0.101:/ /mnt/backup nfs rsize=8192,wsize=8192,timeo=14,intr 0 0

Então, tenha uma linha no meu crontab usando o rsync.

rsync -av /home/user/sourcedir/ /mnt/backup/destinationdir > /home/user/backup.log
    
por 12.08.2010 / 18:08
1

O netcat é simples, mas nem todas as versões fecham a conexão de forma confiável.

Aqui está o tópico sobre o uso de socat : transferência confiável de arquivos socat sobre TCP

Para resumir:

Proposta :

Server sending file:

server$ socat -u FILE:test.dat TCP-LISTEN:9876,reuseaddr
client$ socat -u TCP:127.0.0.1:9876 OPEN:out.dat,creat

Server receiving file:

server$ socat -u TCP-LISTEN:9876,reuseaddr OPEN:out.txt,creat && cat out.txt
client$ socat -u FILE:test.txt TCP:127.0.0.1:9876

Melhorias propostas :

  • OPEN:out.txt,creat,trunc will delete all the bytes in out.txt before writing to it. This option mimics what you'd expect from cp, and is probably what you want.
  • OPEN:out.txt,creat,excl will refuse to write out.txt if it already exists. Use this option for extra safety.
  • OPEN:out.txt,creat,append will append data to out.txt.
    
por 14.08.2012 / 22:02
1

O Giver é um simples aplicativo de compartilhamento de arquivos. Outras pessoas que executam o Giver em sua rede são descobertas automaticamente e você pode enviar arquivos para eles simplesmente arrastando os arquivos para suas fotos ou ícones mostrados no Giver.

No Ubuntu:

sudo apt-get install giver
    
por 13.08.2010 / 17:58
0

Você também pode usar o programa Doador . Usando-o você pode transferir arquivos via LAN com 2 cliques ou "arrastar e arrastar" o arquivo para o destinatário. Os destinatários (que também precisam executar giver ) são descobertos por meio do Zeroconf, portanto, você não precisa saber nem mesmo seu IP. Aqui está vídeo sobre como o Giver funciona .

    
por 11.08.2010 / 21:34
0

Se você não tiver uma conta (senha) no host de destino, poderá usar woos (um fluxo de oferta da web):

woos file-or-directory ...

link

    
por 10.02.2016 / 15:24