[廚餘瑣碎] Dukto: 區域網路檔案傳輸的第一把交椅

「我想要快速地把這堆檔案從這個設備傳輸到那個設備」,如此簡單的需求,令人訝異地難以實現。十幾年前,行動通訊邁入 3G 時代,每個人手邊開始常態地攜帶多個電腦設備(包括智慧型手機),在設備之間傳輸檔案也成為日常生活的一部分。這個看似簡單的需求,隱藏著許多挑戰:

跨平台
不是每個人都願意把自己鎖在特定廠商打造的生態環境。舉例來說,我曾經同時擁有 Windows 電腦、Linux 桌面設備、mac 電腦、Android 行動電話、Android 平板電腦、iPod、iPad、Symbian Belle 行動電話,意味著光靠著微軟、蘋果、榖歌等廠商提供的解決方案,都沒辦法涵蓋我手上所有的設備。
傳輸速度及檔案大小
也許一口氣需要傳輸幾千個檔案,也許需要傳輸幾十甚至幾百 Gigabytes 的檔案。我需要盡量快的傳輸速度,為此我可以犧牲一些安全性,意思是我不需要傳輸過程中的加密解密。
資料夾
有時候需要連同資料夾以及子資料夾結構一起傳輸。當然可以先把資料夾壓縮再傳輸,但是這樣往往花費更多空間、時間,操作上也更麻煩。
區域性
只是要把檔案從自己的某個設備傳輸到另一個設備,我不希望這個過程中還需要先把檔案交給另一方(例如各種雲端服務);除了不想過多暴露自己的隱私之外,也希望減少外部依賴,以免網際網路異常或任何雲端服務商因故暫停服務時,就無法順利傳輸檔案。
臨時性
我只想在有需要傳輸檔案的時候才傳輸檔案,不希望為了這種任務還要特地先在各個設備上架設檔案伺服器;換句話說,這個機制應該要很容易開關、設定組態應該極簡。

我在 2012 年產生這樣的需求,當時已經有個很合適的開放源碼解決方案:Emanuele Colombo 開發的 Dukto。很快地,Dukto 進入我的生活。

然而 Dukto 在 2013 年推出 R6 版本之後,不再繼續維護開發;Dukto R6 使用 Qt 4,這個 Qt 版本在 2015 年年底已經終止維護,我手上陸續更新的設備開始遇到無法安裝或執行 Dukto 的挑戰,然而接下來十年,市面上所有號稱「Dukto 接班人」的解決方案通通無法真正取代 Dukto 的性能與便利。

拜開放源碼所賜,仍有其他開發者接手分支,讓 Dukto 至今仍然能夠繼續傳承下去:

Xu Zhen
xuzhen/dukto-qt5 專案把 Dukto 移植到 Qt 5 及 Qt 6,可在新版的 Android、Linux、macOS、Windows 等系統上編譯安裝,並提供預先編譯好的 Android (arm64-v8a_qt6, armeabi-v7a_qt6, multiabi_qt5, x86_qt6, x64_qt6) 及 Windows (x86_qt5, x86_qt6, x64_qt6) 安裝套件,以及適用於 Ubuntu 的 PPA (Personal Package Archives)。
Kafabih Rahmat
kafabih-kr/dukto 專案也提供適用於 Linux 及 Windows 的執行套件。
Trọng Phạm
Tian Media Transfer 是與 Dukto 相容的 Symbian^3 應用程式,比原始 Dukto for Symbian 更為穩定。
Davide (Dede)
Dukto Pro 似乎是唯一存在的 iOS/iPadOS 版本分支,不過此刻似乎已經無法購買或取得了?我自己有幸在多年前購入,目前在 iPad mini (5th Generation) 還能夠使用。

jedi.org: