我有一个调制解调器/路由器 (DSL-2750B),USB 端口上插着一个外部硬盘。我的想法是直接将文件下载到外部驱动器而不是我的电脑上。我想这样做的原因是我想在晚上不打开电脑的情况下下载大量文件(操作系统:Ubuntu 14.04 和 Windows 10)。
假设我的问题是合理的,我想知道我所解释的是否可行,以及实现我的目标的步骤是什么。
答案1
另一个选择是使用 Raspberry Pi 或类似的微型计算机为您下载。您可以将 USB 驱动器直接连接到 Raspberry Pi,也可以让它在连接到路由器时以网络共享的形式访问驱动器。与让台式机开着做同样的事情相比,这样的小型计算机可以节省大量电量,而且您不必担心用不同的固件刷新路由器。
答案2
@Op,
您忽略的是软件。“下载”不是凭空发生的;软件通过打开 IO 流来请求资源。通常,服务器会通过发送请求的资源作为该流的一部分来响应。如果流结束(在任何一侧),则下载中断。
因此,在正常情况下,PC 会走到柜台前说“嘿,我来取那个订单……”柜台的服务员会说“好的,这是第一个箱子;把它拿到车上,然后回来拿接下来的 60 亿个”。
在您的情况下,PC 会走到柜台领取订单。他们会将第一个箱子拿到车上,然后开车离开,而服务员只是在等待 PC 回来取更多。
因此最终(抛开愚蠢但恰当的类比不谈),如果没有本地运行的软件来操作 IO 流的一端,就不会发生下载。当流的一方消失时,TCP 不会只是继续发送或接收数据。当发生这种情况时,整个流就会中断。此外,在您的示例中,PC 正在将下载的数据发送到远程硬盘,而不是远程服务器,当关闭时它无法做到这一点。
正如@Tyson 所建议的,解决此问题的一个方法是将软件部署到路由器本身。这当然是可能的。OpenWRT 是一种常见的固件替代品。请随意调查它是否会运行执行您正在寻找的任何特定下载操作所需的软件。