PTT推薦

[心得] 手機無線傳照片檔案到電腦 ~ 使用SSHFS

看板MobileComm標題[心得] 手機無線傳照片檔案到電腦 ~ 使用SSHFS 作者
ivon852
(內容農場殺手)
時間推噓 7 推:7 噓:0 →:12

*本文僅適用Android手機,iOS的情況見文末

要將大量手機檔案整理到電腦時,如果要用檔案總管像整理硬碟般的操作,那我們會將手機接上電腦用MTP傳輸。

但是MTP功能有限,並且檔案一多直接卡。整理相片也看不到縮圖:
https://i.imgur.com/cvhRlde.png

圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

影片點開也必須是完整下載到電腦才能預覽/播放,所以MTP僅是一種傳檔案的手段而已,而且還沒ADB指令穩定。

如果我想要更無縫的瀏覽手機檔案的體驗呢?所以找到了SSHFS,能看縮圖,檔案操作像是在用本機硬碟一般,還有批次備份檔案的用法。
https://i.imgur.com/Hn31Ski.png

圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

市面上有那麼多傳輸檔案APP組合,的確就傳輸檔案而言,網路檔案系統並無優勢,甚至是搞剛。但我想要的是方便整理檔案的界面,為此選擇SSHFS。

顧名思義,SSHFS是透過加密SSH連線掛載的檔案系統,跟SMB、NFS、SFTP一
樣都是網路檔案系統,也就是將遠端硬碟掛載至本機存取。SSHFS好處在於看得到縮圖,傳輸速度屬中上(下面的例子都以區網傳輸為主)。

以作業系統支援度來說,Linux、Wndows、MacOS安裝軟體也能支援掛載SSHFS。
Android跑SSH伺服器不需要Root權限。

具體作法

Linux用戶要掛載SSHFS可以用指令,也可以用Gnome Nautilus或KDE Dolphin的圖形化界面掛載。

以Windows 11掛載Android手機的SSHFS來說,要讓二部装置處在同一個Wifi下。

1. Android手機安裝開源終端機Termux:https://reurl.cc/kqkmZb

2. 在Termux依序執行以下指令:
```
pkg update -y
# 安裝OpenSSH
pkg install openssh sshfs
# 設定user密碼
passwd
# 允許Termux存取手機內部儲存空間
termux-setup-storage
# 執行SSH伺服器
sshd
# (選擇性) 每次啟動Termux就自動啟動SSH伺服器
echo "sshd" >> ~/.profile
```

3. 以上步驟,Termux會將手機內部儲存空間掛載到自己的storage目錄。storage/shared目錄下就是Download、DCIM、Movies等手機內部的目錄,像照片路徑就是
`storage/shared/DCIM`;要存取下載的目錄則是`storage/shared/Download`。

4. 點選手機的Wifi設定查看手機的區域IP,通常是以192.168開頭。
https://i.imgur.com/FWrCRfE.png

圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

5. 在Windows安裝sshfs-win和SSHFS-Win Manager。
https://reurl.cc/28NXrX
https://reurl.cc/YdGLOx

6. 啟動SSHFS-Win Manager,點選Add Connection
https://i.imgur.com/QHWIX6r.png

圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

7. IP填手機IP,Port要填8022。user一律為user,Password填寫Termux設定的密碼。
PATH則是填寫要掛載的手機目錄,例如上面說過「相機」的目錄為
`storage/shared/DCIM`,或者你要掛載整個手機目錄的話就是`storage/shared`。
https://i.imgur.com/CEd7ycM.png
圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

8. 點選插頭的圖示連線,檔案總管就會以網路磁碟機掛載Android的目錄,在這裡可以自由刪改Android上的檔案。
https://i.imgur.com/ONycR49.png
圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

如果不用了記得回到SSHFS-Win Manager取消掛載。

其他應用

Android端跑SSH server不需要Root權限,但Android手機需要Root權限才能以SSHFS
掛載電腦上的目錄。Android有EasySSHFS這個APP方便掛載SSHFS。

如果只是要單純傳檔案,就用SCP指令傳輸目錄或檔案。

另外,考慮到Termux有自動執行script的能力,你可以在Temrux用Rsync走SSH通道,無線將檔案或整個目錄備份到電腦上,還能設定排程任務。

詳情有點複雜,煩請參閱:https://reurl.cc/gQx907


iOS能否做到SSHFS

不越獄的話,iOS有「iSH」能執行SSH伺服器
https://reurl.cc/91xMO8

不過iSH的SSHFS我怎麼樣也連不上,也許有bug。此外因為iOS的檔案管理不好用,即使
iSH的目錄能用檔案APP存取,要備份相機膠卷的照片也很麻煩。

--
最真實的1944年日美海空戰,絕贊上映中。
https://i.imgur.com/kRCHaaH.png

圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS
https://i.imgur.com/QrmG2LL.png
圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS
https://i.imgur.com/zZ0vNvR.png
圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS
https://i.imgur.com/dlhNnEL.png
圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS
https://i.imgur.com/sRxPU0m.jpg
圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.236.222.21 (臺灣)

※ 文章網址:
https://www.ptt.cc/MobileComm/M.1671220267.A.211

LastAttack12/17 07:24原來各家連接電腦的軟體,傳照片就是用這技術?功能特

LastAttack12/17 07:24徵基本上一樣,可預覽、可輕鬆拖曳到想要的地方

johnhmj12/17 10:32怎麼不直接用AirDroid ??

fiiox312/17 11:12有不需要區網的方案嗎

用ZeroTier這類技術做一個虛擬區域網路

ch41077312/17 12:06Solid explorer一鍵開好ftp,不過看不了縮圖

tomsawyer12/17 12:11當然有不須要區網的方案 比如樓上提到的airdroid 但檔

tomsawyer12/17 12:11案就要預設經過他們的relay做中轉

tomsawyer12/17 12:13作業系統支援度來說=0 全不支援原生掛載 不如ftp來的

tomsawyer12/17 12:13方便 windows可用 linux也可以直接掛

tomsawyer12/17 12:13不如用sftp就好了 又不用而外裝東西

SFTP也是個方法,KDE Connect用的就是這個。我是想說SSH就不用再跑一個FTP服務這樣。

tomsawyer12/17 12:14不然rclone+fuse/winfsp是萬解

Leo12345712/17 14:02https://i.imgur.com/Ojm7BUf.png 縮圖可以從這開

圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

FTP模式下還是看不到縮圖吧?

※ 編輯: ivon852 (36.236.222.21 臺灣), 12/17/2022 15:08:17

tcchu12/17 18:42的確是很搞剛

tcchu12/17 18:43不然直接adb pull或app開ftp比較實際

tcchu12/17 18:45沒有掛載需求平常直接app存取PC sftp就好

tcchu12/17 18:46我是為了retroarch檔案同步 pc定時跑一次adb-sync

Leo12345712/17 21:44https://i.imgur.com/OBM2gIH.png

圖 手機無線傳照片檔案到電腦 ~ 使用SSHFS

Leo12345712/17 21:45或許skip previews for remote files above要調大一點

謝謝

※ 編輯: ivon852 (36.236.222.21 臺灣), 12/18/2022 03:43:31