macOS 提供了什麼

  • Finder:前往 → 連接伺服器可連線到 SMB、NFS 和 WebDAV 共享,以及唯讀的 FTP 伺服器。SFTP 不在列表中。Apple 在將 Mac 連接到共享的電腦和伺服器中說明了這些選項。
  • 終端機:sftp user@host 會打開互動式工作階段,scp file user@host:/path 會拷貝檔案。兩者都很快,也會使用你的 SSH 金鑰,但看不到任何畫面:每個路徑都要自己輸入。

偶爾傳幾個檔案,用終端機就夠了。日常工作中,能同時顯示兩端的用戶端會更輕鬆。

挑選 SFTP 用戶端時該注意什麼

注意 為什麼重要
使用你自己的 ~/.ssh 金鑰、代理程式和設定 不必另外維護一套金鑰和主機
跳板主機(ProxyJump) 許多伺服器位於堡壘主機後方
根據 known_hosts 檢查主機金鑰 伺服器不是你預期的那一台時會提醒你
你的 Mac 和伺服器並排顯示 每次拷貝都能看到兩端
拷貝能撐過連線中斷 大型上傳會自行完成
用你自己的編輯器編輯 不必手動下載就能修改設定檔

AnyBucket 全都做得到。比較頁面列出了其他 Mac App 說明支援其中哪些項目。

連線到 SFTP 伺服器

  1. 按下 ⇧⌘K(檔案 → 連接伺服器⋯),然後選擇 SFTP。
  2. 輸入伺服器的位址和你的使用者名稱。如果你用金鑰登入,密碼請留空。
  3. 連線。如果是第一次連線,AnyBucket 會顯示伺服器的主機金鑰;信任之前,請將它的指紋與管理員公佈的指紋比對。
  4. 將它儲存為書籤,下次只要按下 ⌘K 輸入幾個字母就能找到。

你也可以將位址貼到面板中:按下 ⌘K,貼上 sftp://deploy@example.com/var/www。

拷貝檔案

  1. 按下 ⌘\ 打開第二個窗格,選擇這台 Mac 或另一台伺服器。
  2. 用 Space 標記檔案,或按下 + 並輸入模式,例如 *.html。
  3. 按下 F5 將它們拷貝到另一個窗格,或按下 F6 移動它們。

遇到連線中斷的傳輸會以新的連線重試,即使你結束 App,佇列也會回來。當兩個窗格位於同一台 SFTP 伺服器,且你的帳號有 shell 時,拷貝會在伺服器上以 cp 執行,不會有任何資料下載到你的 Mac。

編輯伺服器上的檔案

在檔案上按下 F4 並選擇一個 App。AnyBucket 會在那個 App 中打開檔案,每次儲存時都會上傳變更。F3 會用快速查看顯示檔案,不需要打開任何 App。⇧⌘C 會拷貝檔案的 URL。

金鑰、設定與跳板主機

由於 AnyBucket 執行的是 /usr/bin/ssh,凡是在終端機中能以 ssh user@host 使用的,在這裡也能使用:密碼、金鑰、代理程式、包含 Host、IdentityFile 和 ProxyJump 的 ~/.ssh/config,以及安全金鑰。如果登入失敗,請先在終端機中嘗試同一台主機。SSH 金鑰與跳板主機會逐步說明設定方式。