如何在LAN上的两台Ubuntu计算机之间传输文件而无需安装其他软件?

我知道我可以安装Samba或openssh-server以便能够在两台Ubuntu计算机之间共享文件。 有没有办法在安装其他软件包的情况下共享文件?

我在同一局域网上的两个系统上安装了Ubuntu,但没有连接互联网。 我发现传统文件(scp)的常用方式失败,因为在任一系统上都没有安装openssh-server。 如果不安装额外的包,则无法使用个人文件共享。 我最终使用netcat进行传输,这对于普通用户来说是次优的并且不直观。

所以我想知道是否有人知道如何通过开箱即用的Ubuntu安装(或者至少使用Ubuntu桌面CD中提供的软件包)来实现这一点。

谢谢!

您可以使用cd移动到给定目录,然后使用以下命令将当前目录作为Web服务器提供:

 python -m SimpleHTTPServer 

在另一台机器上转到地址http://server-ip:8000/

其中“server-ip”是您在源计算机上执行“ifconfig”时在“inet addr:”下看到的内容。 例如,如果源计算机上的ifconfig输出如下所示:

 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 ... 

然后在目标计算机上,您应该将浏览器指向:

  http://10.0.0.3:8000/ 

如果你想要更快的python的SimpleHTTPServer模块(这是很棒的,并且是最简单的imho),你可以使用netcat( nc实用程序) – 它使用原始TCP,因此你不会有HTTP协议带来的开销。

例如,如果您尝试将文件config.xml从主机germany.local复制到主机france.local(两者都运行ubuntu),则需要执行以下步骤:

  1. 在目标主机上france.local运行:

     nc -l -p 7000 > copied_config.xml 

    (它将启动nc进程,在端口7000上侦听传入数据并将所述数据写入文件copied_config.xml

  2. 在源主机germany.local运行:

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

就这样!

此外,您可以查看此有用的指南,以获取更深入的说明