是否可以通過 SSH 從 Linux 智能或部分下載超大文件到 Windows?
我在遠端Linux Ubuntu 伺服器 上有一個 ~35 GB 的文件。在本地,我執行的是 Windows XP,因此我使用 SSH 連接到遠端 Linux 伺服器(具體來說,我使用的是一個名為SSH Secure Shell Client version 3.3.2 的 Windows 程序)。
雖然我的寬頻網際網路連接非常好,但我下載大文件經常失敗並顯示
Connection Lost
錯誤消息。我不確定,但我認為它失敗了,因為我的網際網路連接可能每隔幾個小時就會斷開一兩秒鐘。由於文件太大,下載它可能需要 4.5 到 5 個小時,而且在很長一段時間內,網際網路連接可能會中斷一兩秒鐘。我認為這是因為我已經在同一台電腦上使用相同的網際網路連接和相同的 SSH 軟體成功下載了這種大小的文件。換句話說,有時我很幸運,並且在網際網路連接中斷一秒鐘之前下載完成。有什麼方法可以讓我以智能的方式下載文件——作業系統或軟體“知道”它在哪裡停止,如果網際網路連接中斷,可以從最後一點恢復?
也許可以分段下載文件?雖然我不知道我是否可以方便地將我的文件拆分為多個文件——我認為這將非常困難,因為該文件是二進製文件並且不是人類可讀的。
就像現在一樣,如果整個 ~35 GB 文件下載在連接中斷之前沒有完成,那麼我必須重新開始下載並覆蓋目前在本地下載的 ~5-20 GB 塊。
你有什麼建議嗎?謝謝。
rsync --partial
如果你有rsync
,這是一種簡單的方法,因為它執行在 ssh 上就好了。什麼--partial
是保留部分下載的文件,這樣您就可以從中斷的地方恢復。
我對您所說的正在使用的 SSH 客戶端一無所知,但是您所描述的應該可以使用任何支持 SFTP 的 SSH 客戶端。
如果這個沒有,抓住一個(WinSCP http://winscp.net/是一個免費的支持 SFTP 的 Windows SSH 客戶端),你應該能夠像使用正常 FTP 客戶端一樣下載你的文件,即. 如果您的連接中斷,則從中斷處恢復下載。