如何在 Linux 中使用媒體傳輸協議訪問安卓設備的內部存儲和 SD 卡
MTP,即 ??媒體傳輸協議??media transfer protocol,是圖片傳輸協議的擴展,它在安卓 6.0(棉花糖)版本中實現。在更新了安卓 6.0 之后,你無法將安卓設備用作典型的大容量存儲設備,以便讓你直接插入并在文件管理器(例如 Thunar 或 GNOME Files)中查看內部存儲內容和 SD 卡內容。這是由于操作系統無法確定 MTP 設備,而且還沒有實現支持的設備列表。
在 Ubuntu、Linux Mint 中訪問 Android 設備的步驟
使用以下命令為啟用 MTP 的設備 ??mtpfs?? 安裝 ??libmtp?? FUSE 文件系統:
sudo apt install go-mtpfs
sudo apt install libmtp
sudo apt install mtpfs mtp-tools
使用 USB 線纜將你的安卓設備插入 Ubuntu。
在你的安卓設備上,在主屏幕下拉,然后單擊 “觸摸獲得更多選項Touch for more options”。
在下面的菜單中,選擇“傳輸文件(MTP)Transfer File (MTP)”選項:
MTP Option1
MTP Option2
在終端中運行以下命令查找設備 ID 等。你可以在設備的命令輸出中看到 ??VID?
? 和 ??PID?
?。記下這兩個數字(在下圖中高亮顯示):
mtp-detect
mtp-detect Command Output
使用以下命令使用文本編輯器打開安卓規則文件:
sudo gedit /etc/udev/rules.d/51-android.rules
如果你使用的是未安裝 gedit 的最新 Ubuntu,請使用以下命令:
sudo gnome-text-editor /etc/udev/rules.d/51-android.rules
在 ??51-android.rules?
? 文件中使用你設備的 VID 和 PID 輸入以下行(你在上面的步驟中記下):
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="2e82", MODE="0666"
保存并關閉文件。
運行以下命令通過 ??systemd?? 重啟設備管理器:
sudo service udev restart
訪問內容的后續步驟
接下來的步驟主要用于訪問你的 Android 設備的外部 SD 卡的內容。
我必須這樣做,因為文件管理器沒有顯示 SD 卡的內容。不過,這不是一個解決方案,但它是一種臨時方案,根據這個 ??Google 論壇帖子??,它適用于大多數用戶,并且適用于我的帶有閃迪 SD 卡的摩托羅拉 G 2nd Gen:
- 在 Ubuntu 中安全刪除你連接的設備。
- 關閉設備。從設備中取出 SD 卡。
- 在沒有 SD 卡的情況下打開設備。
- 再次關閉設備。
- 將 SD 卡重新插入并再次打開設備。
重啟你的 Ubuntu 機器并插入你的安卓設備。
現在你可以看到你的安卓設備的內部存儲和 SD 卡的內容。
MTP Device Contents in Ubuntu
總結
上述在 Ubuntu 中訪問安卓設備內容的教程在舊版和新版 Ubuntu 中的安卓設備(三星、一加和摩托羅拉)上都可以使用。如果你在訪問內容時遇到困難,可以試試這些步驟,它可能會起作用。在我看來,MTP 與老式的即插即用方案相比非常慢。