Como posso transferir arquivos entre dois computadores Ubuntu em uma LAN sem instalar software adicional?


7

Eu sei que posso instalar o Samba ou o openssh-server para poder compartilhar arquivos entre dois computadores Ubuntu. Existe uma maneira de compartilhar arquivos sem instalar pacotes adicionais?

Instalei o Ubuntu em dois sistemas na mesma LAN, mas sem conectividade com a Internet. Eu descobri que minha maneira usual de transferir arquivos (scp) falhou porque o openssh-server não estava instalado em nenhum sistema. O uso do Compartilhamento pessoal de arquivos era impossível sem a instalação de pacotes extras. Acabei usando o netcat para transferir, que é abaixo do ideal e não é intuitivo para o usuário médio.

Então, eu gostaria de saber se alguém sabe como fazer isso com instalações Ubuntu prontas para uso (ou pelo menos com pacotes disponíveis no CD da área de trabalho do Ubuntu).

Obrigado!



Respostas:


19

Você pode mover para um determinado diretório com cd, em seguida, servir o diretório atual como um servidor da web com o comando:

python -m SimpleHTTPServer

Na outra máquina, vá para o endereço http://server-ip:8000/

onde "server-ip" é o que você vê quando executa "ifconfig" no computador de origem, em "inet addr:". Por exemplo, se a saída do ifconfig no computador de origem iniciar assim:

eth0      Link encap:Ethernet  HWaddr 00:30:67:d5:a7:a4  
          inet addr:10.0.0.3  Bcast:10.0.0.255  Mask:255.255.255.0
          ...

depois, no computador de destino, você deve apontar o navegador para:

 http://10.0.0.3:8000/

1
Obrigado por isso! Achei a maneira mais fácil de fazer o que eu precisava, basta abrir um terminal, digitar um comando relativamente simples e posso usar o navegador em outro sistema.
roadmr

obrigado, esta é a maneira mais fácil de baixar arquivos de outros computadores. Existe uma maneira de acelerar a taxa de transferência, atualmente estou recebendo apenas 2,5 MB / s.
Ankit

5
Cuidado que no Python 3 SimpleHTTPServerfoi renomeado para http.server.
asmeurer

1

se você quiser algo mais rápido que o SimpleHTTPServermódulo python (que é incrível e é a maneira mais simples), você pode usar o netcat ( ncutilitário) - ele está usando o TCP bruto, para que você não tenha sobrecarga que vem com o protocolo HTTP.

Por exemplo, se você estiver tentando copiar o arquivo config.xmldo host germany.local para o host france.local (ambos executando o ubuntu), siga estas etapas:

  1. no host de destino france.local:

    nc -l -p 7000 > copied_config.xml
    

    (iniciará o processo nc que escuta na porta 7000 os dados recebidos e grava os dados em um arquivo copied_config.xml)

  2. no host de origem germany.local:

    nc -q 0 france.local 7000 < config.xml
    

Isso é tudo!

Além disso, você pode verificar este tutorial útil para obter instruções mais detalhadas


Obrigado! Se você ler a pergunta, perceberá que foi o que fiz naquela época, e meu comentário foi que suboptimal and not intuitive for the average user. ainda prefiro o SimpleHTTPServer, pois implica um comando no final do envio e um navegador no final do "cliente", que é super fácil de usar .
roadmr
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.