作者sawg (Mr.絲襪)
看板Android
標題[心得] MTP超難用與資料備份解決辦法
時間Mon Mar 28 09:03:35 2016
一、前言
真是搞不懂MTP(媒體傳輸模式)這種傳輸模式為什麼會廣泛使用
不僅慢還常常會發生圖片資料毀損的情況
還我MSC(大量儲存模式)啊...
二、研究動機與目的
在處理手機.thumbnails資料夾的時候
發現刪除了容量還是回不來
只好備份資料後格式化內建儲存空間
備份拉出資料的速度還算可以
12G大檔混小檔的檔案一個小時左右完成
但要還原的時候真的讓人吐血
事前就知道MTP傳零碎檔超級慢
所以我放著12小時去睡覺
睡醒居然還沒跑完那堆資料(LINE的零碎檔和2萬張照片占大多數)
有人可能會問,為什麼不手機開FTP直接扔過去比較快
1.零碎檔斷線又傳斷線又傳
而且多檔連線常常會跳出失敗
不會快到哪裡去
2.如果使用FTP傳輸或adb backup
adb backup -shared -nosystem -f "sd.ab"
還原回去的時候會是一個「全新」的檔案
一些跟日期沒有關係的檔案可能無傷大雅
但照片及影片的
檔案排序會整個亂掉
在看圖的時候會非常不方便
三、文獻探討
上網爬完之後發現不只我在罵
原來已經幹聲一片好幾年了= =
現在除了少部分廠商的4.x系統可以使用MSC模式以外
5.x以上基本都已經是強制走MTP了
而有人就質疑了「明明還可以用push,為什麼把MSC取消了?」
這段話明顯是兩個不同的東西看起來很搞笑XD
但卻讓我想到可以用adb pull和push來達到我要的效果
備份: adb pull /sdcard x:\ooo (全部備分)
adb pull /sdcard/aaa x\ooo\aaa (單獨備份資料夾)
註3.1. x:\ooo\為你要在電腦上放置的目錄,不寫就是同adb.exe位置
註3.2. 它是複製「該資料夾內的檔案」不是「資料夾」直接過去
因此備份及還原時請務必在目的路徑加上原資料夾名稱
還原: adb push x:\ooo /sdcard (全部還原)
adb push x:\ooo\123 /sdcard/123 (單獨還原資料夾)
四、結論
1.零碎小檔還原傳輸速度(以LINE零碎圖片暫存檔為例)
a.使用MTP的速度是: 2秒1個
b.使用FTP的速度是: 1秒5~10個
c.使用adb pull/push的速度是: 1秒25個以上
(說以上是因為跑太快我看不清...)
2.單就資料結構完整性來說
a.MTP 可以保留 媒體拍攝時間
b.FTP 無法保留 媒體拍攝時間
c.adb pull/push 可以保留 媒體拍攝時間
3.檔名名稱編碼支援度
a.MTP 支援 非英數檔名
b.FTP 支援 非英數檔名
c.adb pull/push 不支援 非英數檔名
註4.1. 下指令後日語及簡體錯誤會馬上告知,不會跑一半才報錯
註4.2. 中文不會報錯,但會產生資料錯誤及檔案遺漏
綜合以上結果可知
目前尚有與MSC同樣效能與穩定性的傳輸方式
英文文件使用adb pull/push,非英文文件另外獨立使用MTP
是現在備份/還原內建儲存空間最好的折衷方法
--
人生中有些東西放著放著就會發現突然不見了:
一是時間,二是青春,三是3DS的觸控筆……
正常來說新買一根是比較簡潔的解決方法
問題是這台限定機要是換一根筆的話
相當於在愛花的洞洞裡插進了另外一根棒子
這種事情我是不會允許發生的
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.161.178.87
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Android/M.1459127024.A.C14.html
1F:推 justblackJ: 好文推 有時插上去還會讀不到也很惱人 03/28 09:11
2F:推 Woqeker: 檔名編碼支援度…(略 這裡應該是中文檔名而不是非中文吧 03/28 09:17
3F:→ sawg: 謝樓上糾正 搞了整夜沒睡頭昏了我改一下... 03/28 09:17
4F:→ sawg: 如果有更好的解決方法歡迎提出... (有朋友提到rsync 03/28 09:26
5F:→ yeuling9300: 欸sony的5.0還是有大量儲存模式耶? 03/28 09:44
6F:→ sawg: 樓上可以連內建SD空間? 還是只能連實體SD卡? 03/28 09:50
7F:→ sam613: MTP各種不穩,以前我都備到SD卡再拔到PC,現在改用區網或FTP 03/28 09:52
8F:推 s91156: 我都懶得用線了XD,直接用AIRDROID 03/28 09:52
9F:→ sawg: M7內建空間不能插卡啊啊啊啊啊 03/28 09:55
10F:→ sawg: AIRDROID時間格式會變動嗎? 03/28 09:56
11F:→ Tenka: SONY兩個模式都一直在 03/28 10:01
12F:→ sawg: HTC沒有 三星沒有 ASUS沒有 Nexus親兒子沒有 03/28 10:10
13F:→ sawg: 原來SONY才是真良心嗎XD 03/28 10:10
14F:→ sawg: 想問一下,SONY的大量儲存模式是能連進內建空間? 03/28 10:13
16F:推 wuliou: adb pull檔名亂碼問題應該是cmd害的 03/28 12:01
17F:→ wuliou: 你走powershell看看? 03/28 12:01
w兄講了我有去試了一下,還是不行會產生亂碼
應該是adb pull/push本身檔案編碼轉換的問題
18F:→ Segal: Mtp-Alternative試試 走WebDAV的傳檔穩定性不錯 03/28 12:36
19F:→ Segal: 拉大檔時PC端要改登錄檔 W7之後微軟新增限制 03/28 12:42
這應該是基於USB有線內網網芳的方式?
傳輸方式和速度跟MSC差不多
但過去的檔案還是會變成新的(唯一缺點)
還是感謝S兄推薦
20F:推 grantchiue: MTP 真的...很麻煩。 03/28 12:56
21F:推 Kreen: 感覺沒什麼方便的方案,照片和影片我都丟 flickr 反正不貴 03/28 13:05
22F:→ Kreen: 也不會錯亂,其他檔案重要的就用 dropsync 備份一下就好, 03/28 13:06
23F:→ Kreen: 其他方法弄半天搞得用個手機像是在找自己麻煩,尤其又不是 03/28 13:06
24F:→ Kreen: 單隻,自用、公司配的、平板,每個都要獨立去用也太累了。 03/28 13:07
25F:→ ChiuTW: 我用 BTSYNC 03/28 13:07
26F:推 popbitch: mtp速度比大量儲存模式慢很多,也不能預覽 03/28 13:58
27F:推 pennymarkfox: 這個時後可以推我索粉我驕傲嗎? 03/28 14:10
28F:推 andy114425: MTP真的是垃圾中的垃圾,難用到不行。 傳輸慢又不穩, 03/28 14:19
29F:→ andy114425: 常常傳到一半當掉,開資料夾也常等老半天就當掉。 搞 03/28 14:19
30F:→ andy114425: 的我每次要拉資料出來都一肚子火。 所以我現在資料都 03/28 14:19
31F:→ andy114425: 不存在手機內建ROM,存記憶卡再把卡拔出用讀卡機都還 03/28 14:19
32F:→ andy114425: 比較快。 真不知GOOGLE跟MICROSOFT在想什麼...講到就 03/28 14:19
33F:→ andy114425: 不爽 03/28 14:19
34F:推 ymx3xc: MTP真的糞 我媽的ZF5 老人家愛拍照片 有近上萬張 03/28 14:28
35F:→ ymx3xc: 後來直接放棄備份 03/28 14:28
36F:→ Kreen: 咕狗和巨硬:賺雲端被備份的錢啊。 03/28 14:29
37F:→ jasonlai79: MTP應該是為了OSX吧?! 03/28 14:32
38F:推 hoho: 好文推 03/28 18:38
39F:→ sawg: @ChiuTW 這可以保留影片照片的產生日期嗎? 03/28 20:03
40F:→ mainline: ftp能保留文件創造時間 客戶端發個指令便能獲取時間 所 03/28 20:22
41F:→ mainline: 以只要客戶端軟體設置/支援即可。 03/28 20:22
42F:→ mainline: mtp問題的確很多 我也受害過 但能理解為何會挑它 兼容性 03/28 20:24
43F:→ mainline: 最佳 03/28 20:24
44F:→ sawg: 其實應該是修改時間 m兄有關鍵字做法嗎 03/28 20:49
45F:→ sawg: 例如FileZilla的保留傳輸檔案的時間戳記? 03/28 20:50
46F:→ sawg: 不過走FTP常常會掉包檔案不完整 尤其開多線的情況下... 03/28 20:53
47F:推 mainline: MDTM - return the modification time of a file 03/28 21:11
48F:推 mainline: 沒錯 是修改時間 但必須由客戶端軟體自動獲取寫入才人道 03/28 21:15
49F:→ mainline: 找找FZ設定 內應該有類似 保留伺服器文件時間 的選項 03/28 21:15
50F:→ mainline: 有比較exotic的客戶端下載好後能自動用同文件夾內sfv資 03/28 21:18
51F:→ mainline: 料來md5 hash的 03/28 21:18
52F:推 naviblue: 有人跟我一樣在mtp底下更名必當嗎 03/29 00:04
53F:推 tom282f3: 我裝了Xposed之後根本連MTP都連不上了,有人一樣的嗎? 03/29 00:32
※ 編輯: sawg (122.116.165.111), 03/29/2016 05:14:58
54F:→ ymx3xc: xposed不會影響MTP 我四支手機都有上xposed 03/29 10:23
55F:推 zxc123270: 我現在都用區網傳 03/30 08:32
56F:推 xvid: 個人問題 03/30 09:53
57F:推 randy061: MTP超爛,MSC才是王道 04/02 21:36