IT

WEB開發:有關在Windows – Linux上使用SSHFS

因近來轉到新公司及了解到同事的開發環境後,停滯了一、二個月的我趁著放假便做一點實驗。

很多時候,WEB開發員會在工作電腦上編程,再上傳(如透過FTP / SFTP / Webdav / CMS Client等) 檔案到遠端服務器做測試(也可能為了看看結果)。也有些開發員會透過SSH直接在遠端或VM做編程,其原因是遠端服務器多為Linux環境,能直接在服務器上邊開發邊測試就最理想了。

今天就想嘗試有什麼方法可以令開發更方便。

SSHFS

(其實這個方法是後來試的,因為覺得很直接實用所以放到前面來。)
SSHFS即是以SSH為通道的遠端檔案系統,雖不像NFS、SMB,但看來也是不錯的選擇,因為大多數的涉及WEB的開發都會用SSH連線到主機。

Windows 中用SSHFS

我相信開發員中使用Windows系統仍然佔多數,所以要找一個在Windows中掛接SSHFS的方案,目前找到以下幾種方案:

  1. Netdrive (收費)
  2. ExpanDrive (收費)
  3. win-sshfs + Dokan (免費)
  4. winfsp + ssh-fs (免費)

今次我選擇Billziss的Windows File System Proxy (winfsp)免費方案。基本如下:

  1. 下載並安裝 winfsp
  2. 下載並安裝 ssh-fs
  3. 在Windows 下連接網絡磁碟(Map Network Drive)
    1. 在 「folder」 欄輸入:
      \\sshfs[locuser=]user@host[!port][\path]

另外也有GUI – SiriKali, 但目前版本好像不相容所以未能成功。

如使用Key Auth,我會使用Putty 的Pageant (Putty Authentication Agent)

Visual Studio Code

近年來Visual Studio Code慢慢成為開發者的新寵,有一些Extension確實幫了一把。例如過住用過的 FTP-Simple (可SFTP)便可以很容易把當前檔案上傳到遠端服務器。

VS Code 中用 “SSHFS”

在VS Code中有不少方法可連到 SFTP/FTP的extension,這次找到了一個名為 SSH FS 的extension,但看清楚好像不是 SSHFS 而是SSH,只不過用了一會感覺比其他好,也支持 Pageant,如果不用 SSHFS (透過 Windows + WinFSP + SSH-FS),這個extension不錯。

另外還試了一個叫 「Remote Workspace」 的extension,能支持多種protocol,直接在VSCODE打開遠端的Workspace,只是還有點BUG,例如新增的空白文件(0 Byte)會導致無限等待。有待觀察。

發表回覆

你的電郵地址並不會被公開。 必要欄位標記為 *