ti-enxame.com

Transferência de arquivos simples.

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

17
David Thornley

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 [email protected]:/path/to/file/file .
22
KeithB

Eu costumo montar um diretório através do SSH via fusível e sshfs.

Monte:

$ sshfs [email protected]:/path/to/dir /path/to/mount/point

Desmontar:

$ fusermount -u /path/to/mount/point
6
Maik

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

nc -l -p 1234 < send_file   # 'server'
nc x.y.z.t 1234 > receive_file  # 'client'
5
nc3b

nfs poderia ser útil.

O sistema de arquivos de rede (NFS) permite que um nó cliente execute acesso de arquivo transparente pela rede. Ao usar o NFS, um nó cliente opera em arquivos residentes 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 para o sistema de servidor pela rede.

Você pode precisar de ajuda do seu administrador UNIX para configurá-lo pela primeira vez, mas é muito útil.

5
Hemant

Para uma transferências de arquivos, geralmente use SFTP ou um compartilhamento de samba existente.

Para manter em sincronia, sugiro que você tente rsync ou nison (para sincronização de 2 vias)

Editar: scp seria melhor que sftp, uma vez que funcionaria em todos os hosts do SSH ativado

2
Gert

Para fazer backups, muitas vezes uso rsync. Se eu quiser fazer backup em uma máquina remota, colocará uma linha em/etc/fstab para manter a máquina remota montada por 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 rsync.

rsync -av /home/user/sourcedir/ /mnt/backup/destinationdir > /home/user/backup.log
2
jjclarkson

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

Aqui está o encadeamento sobre o uso socat: transferência de arquivo SOCAT confiável sobre TCP

Resumindo:

proposto :

Arquivo de envio do servidor:

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

Arquivo de recebimento do servidor:

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

aprimoramentos propostos :

  • OPEN:out.txt,creat,trunc vai excluir todos os bytes em out.txt antes de escrever para isso. Esta opção imita o que você espera de cp, e é provavelmente o que você quer.
  • OPEN:out.txt,creat,excl vai se recusar a escrever out.txt Se já existir. Use esta opção para segurança extra.
  • OPEN:out.txt,creat,append APENGARÁ DADOS PARA out.txt.
1
Grzegorz Wierzowiecki

O Giver é um aplicativo de desktop de compartilhamento de arquivos simples. Outras pessoas que funcionam doador em sua rede são descobertas automaticamente e você pode enviar arquivos para eles simplesmente arrastando os arquivos para sua foto ou ícone mostrado no doador.

No Ubuntu:

Sudo apt-get install giver
1
Gasuma

Além disso, você poderia usar doador programa. Usando você pode transferir arquivos sobre a LAN com 2 cliques ou por "Drag'n'Dropping" arquivo para destinatário. Os destinatários (que também precisam ser executados giver) são descobertos via Zeroconf, para que você não tenha que saber até mesmo seu IP. Aqui está vídeo sobre como funciona o Giver .

0
Andrei Dziahel

Se você não tiver uma conta (senha) no host receptor, você pode usar o WOOS (Web Ofereça um fluxo):

woos file-or-directory ...

http://fex.belwue.de/fstools/woos.html

0
Framstag