歡迎光臨
每天分享高質量文章

iWant:一個去中心化的點對點共享檔案的命令列工具 | Linux 中國

它是一個基於命令列的自由開源的去中心化點對點檔案共享應用程式。

— Sk

 

不久之前,我們編寫了一個指南,內容是一個檔案共享實用程式,名為 transfer.sh[1],它是一個免費的 Web 服務,允許你在 Internet 上輕鬆快速地共享檔案,還有 PSiTransfer[2],一個簡單的開源自托管檔案共享解決方案。今天,我們將看到另一個名為 “iWant” 的檔案共享實用程式。它是一個基於命令列的自由開源的去中心化點對點檔案共享應用程式。

你可能想知道,它與其它檔案共享應用程式有什麼不同?以下是 iWant 的一些突出特點。

◈ 它是一個命令列應用程式。這意味著你不需要消耗記憶體來加載 GUI 實用程式。你只需要一個終端。
◈ 它是去中心化的。這意味著你的資料不會在任何中心位置儲存。因此,不會因為中心點失敗而失敗。
◈ iWant 允許中斷下載,你可以在以後隨時恢復。你不需要從頭開始下載,它會從你停止的位置恢復下載。
◈ 共享目錄中檔案所作的任何更改(如刪除、添加、修改)都會立即反映在網絡中。
◈ 就像種子一樣,iWant 從多個節點下載檔案。如果任何節點離開群組或未能響應,它將繼續從另一個節點下載。
◈ 它是跨平臺的,因此你可以在 GNU/Linux、MS Windows 或者 Mac OS X 中使用它。

安裝 iWant

iWant 可以使用 PIP 包管理器輕鬆安裝。確保你在 Linux 發行版中安裝了 pip。如果尚未安裝,參考以下指南。

如何使用 Pip 管理 Python 包[3]

安裝 pip 後,確保你有以下依賴項:

◈ libffi-dev
◈ libssl-dev

比如說,在 Ubuntu 上,你可以使用以下命令安裝這些依賴項:

  1. $ sudo apt-get install libffi-dev libssl-dev

安裝完所有依賴項後,使用以下命令安裝 iWant:

  1. $ sudo pip install iwant

現在我們的系統中已經有了 iWant,讓我們來看看如何使用它來通過網絡傳輸檔案。

用法

首先,使用以下命令啟動 iWant 服務器:

(LCTT 譯註:雖然這個軟體是叫 iWant,但是其命令名為 iwanto,另外這個軟體至少一年沒有更新了。)

  1. $ iwanto start

第一次啟動時,iWant 會詢問想要分享和下載檔案夾的位置,所以需要輸入兩個檔案夾的位置。然後,選擇要使用的網卡。

示例輸出:

  1. Shared/Download folder details looks empty..
  2. Note: Shared and Download folder cannot be the same
  3. SHARED FOLDER(absolute path):/home/sk/myshare
  4. DOWNLOAD FOLDER(absolute path):/home/sk/mydownloads
  5. Network interface available
  6. 1. lo => 127.0.0.1
  7. 2. enp0s3 => 192.168.43.2
  8. Enter index of the interface:2
  9. now scanning /home/sk/myshare
  10. [Adding] /home/sk/myshare 0.0
  11. Updating Leader 56f6d5e8-654e-11e7-93c8-08002712f8c1
  12. [Adding] /home/sk/myshare 0.0
  13. connecting to 192.168.43.2:1235 for hashdump

如果你看到類似上面的輸出,你可以立即開始使用 iWant 了。

同樣,在網絡中的所有系統上啟動 iWant 服務,指定有效的分享和下載檔案夾的位置,並選擇合適的網卡。

iWant 服務將繼續在當前終端視窗中運行,直到你按下 CTRL+C 退出為止。你需要打開一個新選項卡或新的終端視窗來使用 iWant。

iWant 的用法非常簡單,它的命令很少,如下所示。

◈ iwanto start – 啟動 iWant 服務。
◈ iwanto search  – 查找檔案。
◈ iwanto download  – 下載一個檔案。
◈ iwanto share  – 更改共享檔案夾的位置。
◈ iwanto download to  – 更改下載檔案夾位置。
◈ iwanto view config – 查看共享和下載檔案夾。
◈ iwanto –version – 顯示 iWant 版本。
◈ iwanto -h – 顯示幫助信息。

讓我向你展示一些例子。

查找檔案

要查找一個檔案,運行:

  1. $ iwanto search <filename>

請註意,你無需指定確切的名稱。

示例:

  1. $ iwanto search command

上面的命令將搜索包含 “command” 字串的所有檔案。

我的 Ubuntu 系統會輸出:

  1. Filename Size Checksum
  2. ------------------------------------------- ------- --------------------------------
  3. /home/sk/myshare/THE LINUX COMMAND LINE.pdf 3.85757 efded6cc6f34a3d107c67c2300459911

下載檔案

你可以在你的網絡上的任何系統下載檔案。要下載檔案,只需提供檔案的哈希(校驗和),如下所示。你可以使用 iwanto search 命令獲取共享的哈希值。

  1. $ iwanto download efded6cc6f34a3d107c67c2300459911

檔案將儲存在你的下載位置,在本文中是 /home/sk/mydownloads/ 位置。

  1. Filename: /home/sk/mydownloads/THE LINUX COMMAND LINE.pdf
  2. Size: 3.857569 MB

查看配置

要查看配置,例如共享和下載檔案夾的位置,運行:

  1. $ iwanto view config

示例輸出:

  1. Shared folder:/home/sk/myshare
  2. Download folder:/home/sk/mydownloads

更改共享和下載檔案夾的位置

你可以更改共享檔案夾和下載檔案夾。

  1. $ iwanto share /home/sk/ostechnix

現在,共享位置已更改為 /home/sk/ostechnix

同樣,你可以使用以下命令更改下載位置:

  1. $ iwanto download to /home/sk/Downloads

要查看所做的更改,運行命令:

  1. $ iwanto view config

停止 iWant

一旦你不想用 iWant 了,可以按下 CTRL+C 退出。

如果它不起作用,那可能是由於防火牆或你的路由器不支持多播。你可以在 ~/.iwant/.iwant.log 檔案中查看所有日誌。有關更多詳細信息,參閱最後提供的專案的 GitHub 頁面。

差不多就是全部了。希望這個工具有所幫助。下次我會帶著另一個有趣的指南再次來到這裡。

乾杯!

資源

iWant GitHub[4]

 

赞(0)

分享創造快樂