You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

从Arch Linux向32位Windows 7传输100GB文件的最简最快方案

最简最快的传输方案:SMB共享(无需额外工具,多线程高速传输)

考虑到你的场景:32位Windows 7原生支持SMB协议,而Arch Linux可以快速搭建SMB共享,这应该是无需额外安装工具、速度最快的方案——既避免了wget/curl的串行慢速度和编码问题,也比SSH/scp的单线程传输高效得多,而且完全不用在老旧的Win7上折腾工具。

具体步骤

第一步:在Arch Linux上搭建SMB共享

  1. 安装samba服务:
    sudo pacman -S samba
    
  2. 准备要共享的目录:
    假设你要传输的文件目录是/home/your-user/transfer-files,先开放权限(因为你无需考虑安全性):
    sudo chmod 777 /home/your-user/transfer-files
    
  3. 配置SMB共享:
    编辑samba的配置文件:
    sudo nano /etc/samba/smb.conf
    
    在文件末尾添加以下内容(替换路径为你的实际目录):
    [LinuxTransfer]
       path = /home/your-user/transfer-files
       read only = no
       guest ok = yes
       browseable = yes
       create mask = 0777
       directory mask = 0777
    
  4. 重启samba服务:
    sudo systemctl restart smb nmb
    
  5. 获取Linux的局域网IP:
    运行以下命令找到WiFi接口的IP(通常是wlan0wlp2s0开头的条目):
    ip a
    
    记下类似192.168.xx.xx的IP地址。

第二步:在Windows 7上访问共享并传输文件

  1. 打开Windows资源管理器(Win+E),在地址栏输入:
    \\192.168.xx.xx\LinuxTransfer
    
    替换成你刚才记下的Linux IP地址。
  2. 此时你应该能直接看到Linux上的共享文件,像操作本地文件夹一样,直接复制粘贴到Win7本地目录即可。

Win7的文件复制是多线程的,加上SMB协议的优化,速度会远快于串行的wget/curl,而且支持断点续传——如果中途WiFi断开,重新连接后继续复制会自动跳过已传输的文件。

为什么不选其他方案?

  • Curl/Wget:单线程传输速度慢,还要处理目录下载、西里尔字母编码问题,完全没必要折腾;
  • SSH/SCP:默认是单线程传输,速度不如SMB多线程,而且Win7的Git Bash虽然支持scp,但配置和操作都不如SMB直观;
  • USB线缆:虽然USB3.0速度快,但需要把Linux配置为USB大容量存储设备(加载g_mass_storage模块等),操作繁琐,不如SMB通过WiFi传输方便。

内容的提问来源于stack exchange,提问作者hlebyshek

火山引擎 最新活动