Ubuntu

在本地機器和遠端機器之間傳輸文件的最便捷方式

  • May 28, 2021

scp在某些遠端伺服器上工作時,每次我需要複製一個小文件是很累的。

我們還有哪些其他解決方案?哪個最方便?

最好是:

  • 不需要在任一側進行複雜的設置(假設兩台機器都是現代 Ubuntu)
  • 打開某種持久連接,因此後續傳輸所需的輸入很少

(也許是一個持續同步的 FTP 伺服器?)

也許是一個不斷同步的 FTP 伺服器?

不推薦使用FTP 。該協議有很多問題,幾年前Debian核心關閉了他們的 FTP 服務。您的問題有兩種解決方案:

如果您正在編輯文本文件,您應該首先檢查您使用的編輯器是否帶有允許您遠端編輯文件的功能。Emacs TRAMP就是這種特性的一個例子。

如果您正在複製二進製文件或使用不允許您遠端編輯文件的編輯器,您可以使用 sshfs 在本地安裝遠端伺服器(您不需要是 root):

$ mkdir ~/ssh-mount
$ sshfs <your-ssh-server>: ~/ssh-mount

用於連接遠端伺服器的使用者主目錄將掛載到 ~/ssh-mount 目錄。您可以顯式指定要在:. 根據您正在執行的操作,您現在可以像打開本地文件一樣在編輯器中正常打開文件,或者指示編譯器將輸出二進製文件保存在 ssh-mount 目錄中,例如通過-o ~/ssh-mount在 gcc 中指定選項。

您也不必以 root 身份解除安裝目錄:

$ fusermount -u ~/ssh-mount

請注意,並非所有 SSH 伺服器都實現了 sshfs - OpenSSH 實現了,但 Dropbear 沒有。

引用自:https://unix.stackexchange.com/questions/651854