看板 MobileComm 關於我們 聯絡資訊
https://www.guidingtech.com/39472/map-android-drive-windows/ 因個人需求,我需要mount android phone當作網路磁碟機 參考這篇指南,手機執行WebDAV Server後 我pc端ping得到手機ip(同wifi網域),但無法用explorer探訪手機端 windows的map network drive也失敗(該ip無回應) 想知道WebDAV server在android 6.0 / Samsung Note 4 上作用ok嗎? 有板友有興趣能給點建議嗎 -- 問題起因: 手機上許多下載的網路圖片(非照片,無exif) 有備份到pc端或者sd卡,導致修改日期跳掉,順序大亂 已有事先爬文,板上即有數篇相關文章 其解法為用快圖瀏覽修復exif,但我不適用 已參考文章 [問題] HTC照片移至SD卡後日期跳掉 https://www.ptt.cc/bbs/MobileComm/M.1433856780.A.9F8.html [請益] Z2照片移至SD卡後的日期會變更?有救嗎? http://www.ucptt.com/article/Android/1404295371/0E2 [其他] 關於記憶卡轉移(檔案時間) https://apk.tw/thread-786104-1-1.html 簡單說就是手機上無論是本機內部記憶體 或者是sd卡 最初儲存的圖片檔都有日期標籤(屬性) 複製到pc上的時候 日期順序也都還是正確的 無論檔名怎麼亂序 按照日期排序都可以正常瀏覽 但pc端複製回手機端 圖片的日期屬性就統統被修改成當下時間 不管怎麼排序都無法正常瀏覽了 這個問題會發生在: 1) 內存<->SD卡 互copy時 2) PC->內存 時 故我參考網路文章 想把手機map成網路磁碟機 用xcopy保留所有屬性的方式來copy試試 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.39.147.115 ※ 文章網址: https://www.ptt.cc/bbs/MobileComm/M.1533899646.A.CC3.html
mainline : 簡稱蛋疼 這題回答會很長 吃飯先 08/10 19:24
mainline : 先問一盲點 個人沒用過webdav 你確定這樣抄modifi 08/10 19:48
mainline : ed date在電腦收件端的mod不會跑掉? 08/10 19:48
確定pass 因為備份到pc時時如果「修改日期」就亂掉 那我瞬間就會發現 我備份好多次皆正常 剛剛也有特地針對測試過 也注意到手機端跟pc端的「日期」屬性名稱不太一樣(都從pc端看) 手機端:有「修改日期(default)」、「建立日期」 https://i.imgur.com/WCJW0P8.png pc端(從手機端copy出來後):變成「日期(default)」,其他種日期標籤都有 https://i.imgur.com/MsxmI1p.png <--這些就是備份出來的圖檔 日期都還在 但是要顯示什麼欄位其實是windows自己自訂檢視的 所以我也不懂 日期標籤的名稱差異或空缺 有什麼結論 因此結果更讓我困惑 手機端的圖片含有正確的日期資訊 備份到pc上時仍然還有 那怎麼複製回去就沒了 難道就是單純的資料庫欄位名稱不一樣 備份出來時有對應欄位可以填入 而備份回去時就找不到欄位填入,故統統一致改寫? 有空我再試試批次寫入時間標籤的軟體試試... https://i.imgur.com/7NS2LBs.png <-- ex:也只有三種日期標籤 上網爬文的確有看到類似你說的儲存格式的問題 導致手機連接PC走MTP/PTP,而非以前的USB模式 但既然原本的日期資訊可以正常備份出來 那我就鐵了心想所有備份回去的方法試試看 爬文apk.tw的使用者回應把手機map成disk 用xcopy指令有成功 https://i.imgur.com/Q4spt7a.png
Segal : 通訊協定和port沒打錯吧? 08/10 19:56
Segal : 另外 #1M-8BmmK (Android)這篇參考一下,樓上m大也 08/10 19:56
Segal : 有回文說明過 08/10 19:56
嗯 沒打錯 照著server info打的
mainline : 那個webdav daemon軟體還有在維護嗎 看介面好古老 08/10 21:21
mainline : 在新系統上出這類問題不奇怪 08/10 21:21
剛剛測試webdav是好的 樓上s大提醒我通訊協定要打對 我看是http 在web browser有連接成功 但是只能read-only 我要copy圖片進手機的話 還是得走「新增網路磁碟機」的路 https://i.imgur.com/BL1tRfi.png <-- but still failed
mainline : 其實FTP應該更好用才對 請參考樓上連結文 而且手機 08/10 21:23
mainline : 端的FTP daemon還有在維護的比較多選擇 如solid e 08/10 21:23
mainline : xplorer的FTP插件 08/10 21:23
mainline : 至於最後的複製一與二 問題根源是同一個 08/10 21:29
mainline : 無解 換手機吧 08/10 21:29
mainline : 這問題是fuse造成的 大概是這樣的情況 約在安卓換 08/10 21:34
mainline : MTP同一時期 內部虛擬SD空間不再是格式化為ext或f 08/10 21:34
mainline : at 而是使用了潮貨fuse (file system in userspa 08/10 21:34
mainline : ce) 08/10 21:34
mainline : 白話說法是 從前的data是/data partition 虛擬sd是 08/10 21:45
mainline : /ext_sd partition 兩個獨立的partition 出廠前怎 08/10 21:45
mainline : 麼切就定終生了 如當年32GB HTC One X 大概這般/s 08/10 21:45
mainline : ystem 2G /data 2-3G dalvik /1-2G 虛擬 ext_sd 2 08/10 21:45
mainline : 4 後期就遭遇了app不能裝太多困境 因為安裝的APK檔 08/10 21:45
mainline : 與app內部資料 全都塞在data裡 說為何不切大一些 08/10 21:45
mainline : 因為切大會永久吃掉虛擬SD空間 賣32G手機結果開機 08/10 21:45
mainline : 剩不到20G會被罵死的道理 08/10 21:45
Segal : 所以, https://goo.gl/5dLcrr FTP server拿去用 08/10 21:51
Segal : 吧... 08/10 21:51
Segal : 然後潮貨FUSE也退潮了,SDCardFS準備接棒潮一發 08/10 21:52
mainline : fuse解決了切分區的難題 因為安卓透過它在data分區 08/10 21:54
mainline : 內虛擬出一個“虛擬SD分區“ 可視成這個虛擬出來的 08/10 21:54
mainline : 分區 其實data分區內的一個文件 這樣就不用再另外 08/10 21:54
mainline : 切一個大大的虛擬SD分區給用戶塞文件了 成功解決了 08/10 21:54
mainline : data ext_s怎麼切都不滿意的難題 08/10 21:54
mainline : 但是fuse有個大弱點 性能不好 因為它活在userspac 08/10 22:03
mainline : e data分區使用的ext4驅動則是更底層kernel space 08/10 22:03
mainline : 成員 安卓4.3開始動工添加selinux強化底層安全性後 08/10 22:03
mainline : 間接造成了這一切寫入日期丟失的問題 因為在user 08/10 22:03
mainline : 的fuse無法直接將這指令下達了 08/10 22:03
mainline : 一直到三星開發了kernel space 的sdcardfs (註: 08/10 22:08
mainline : 名不符實,與SD卡無關)作為fuse的替代品 三星在某 08/10 22:08
mainline : 些手機上有偷跑這東西 但我不清楚是哪隻 08/10 22:08
mainline : 谷歌在開發安卓8同時 已將sdcardfs移交成為安卓ke 08/10 22:14
mainline : rnel分支一環 因此新機“應”該都會用它 舊機升安 08/10 22:14
mainline : 卓8的則要看廠商怎麼辦 一般舊機升級是不會特意去 08/10 22:14
mainline : 替換啦 資源有限就別多做事 免得多做多錯出事情的 08/10 22:14
mainline : 道理 08/10 22:14
mainline : 囉唆完的結語就是 要想保留正確的修改日期 你需要 08/10 22:19
mainline : 的是kernel使用sdcardfs的手機 這是出新手機不會交 08/10 22:19
mainline : 代的瑣碎資訊 但就我上頭說的 你可以大略知道那些 08/10 22:19
mainline : 手機有在使用它 08/10 22:19
wow 好多熱心板友 謝謝你們的資訊 我慢慢消化 嘗試後再來回報結果 確實我還沒試過ftp的方式 我試試 (更新) ftp copy圖片回手機仍然失敗 日期依舊跳掉了 ※ 編輯: legendsaga74 (114.39.147.115), 08/10/2018 23:34:54
mainline : 注意電腦的客戶端 要設定寫入修改時間 客戶端通常 08/11 00:41
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 這是? 我用filezilla 設定裡面沒看到這樣的設定
mainline : 會將這項做成選項 08/11 00:41
(更新) 我成功用WebDAV去copy檔案過去了! 原來我WebDAV一直連失敗是因為在錯誤的視窗下操作 以WebDAV Server (Android)而言 server: http://192.168.1.113:8080 是要在「新增網路位置」下連接,而非在「連線網路磁碟機」下連接 https://i.imgur.com/z4Km2pP.png 而且若server有設帳密還連不到,可能帳密要塞進位址當中,故我server沒設帳密 接著爬文找到如何給網路位置一個磁碟代號 https://i.imgur.com/xqmaKrP.png 開始copy https://i.imgur.com/8XevKJd.png Result: FAIL 日期還是統一被改寫 放棄了:( 果然如m大所說 換一隻手機比較快 囧 ※ 編輯: legendsaga74 (114.39.147.115), 08/11/2018 01:11:22
legendsaga74: 不過有學到WebDAV 好像比ftp好用 滿有趣的 08/11 01:13
Segal : 就知道是通訊協定問題XD。連線網路磁碟機是連SMB協 08/11 12:11
Segal : 定的,連WebDAV最快就直接位置列\\進去就好 08/11 12:11
Segal : 提供兩個思維給你。一是root後在su權限下跑SMB ser 08/11 12:19
Segal : ver。理論上繞過user spaces的FUSE直接存取。二是 08/11 12:19
Segal : 把圖檔打包(zip, tar隨便都好)傳回來再解包,應該 08/11 12:19
Segal : 可以保留Time stamp 08/11 12:19
thanks for nice idea 另外昨晚也有熱心板友來信提供想法 == 作者 jhangyu (jhangyu) == 就是用Shell Script(bash)裡面的stat指令去取得檔案修改日期時間 然後把它重新命名成檔名 搬出來到Windows之後在重新把修改日期依照檔案名稱修正 這樣就OK了 不過你要跟bash熟一點,用for迴圈會比較省事 例如說: for IMG in $(ls ${your_folder} | grep -P .*\.jpg) mod_date=$(stat ${IMG} | grep Modify | awk -F. '{print $1}' | awk '{print $2 ,$3}' | sed 's/[-:]/./g') mv ${IMG} ${mod_date}.jpg done == 根據他的idea我決定去找現成更名工具 果然被我找到 https://i.imgur.com/JnySwVq.png 所以我可以在pc端批次更改檔名為「修改日期」 之後依檔名排序瀏覽即可 就不怕TimeStamp丟失了... ※ 編輯: legendsaga74 (114.39.147.115), 08/11/2018 13:22:10
mainline : 強! JHDR+在桶內都能搶舞台 08/11 18:01
mainline : 不曉得FileZilla對於MDTM指令是怎麼一回事 安卓FT 08/11 18:06
mainline : P daemon核心都是拿既有代碼libs移植過來的 FTP協 08/11 18:06
mainline : 議與指令歷史悠久 那些libs不會不支援這指令 08/11 18:06
mainline : @segal 繞不過fuse的 因為fuse是fuse 它活在其它f 08/11 18:21
mainline : ile system下 fuse不是在ext4分區內再模擬一個ext 08/11 18:21
mainline : 4分區 你要讀取它只能透過fuse driver 因為它有自 08/11 18:21
mainline : 己一套邏輯 它不是ext也不是fat般的存在 因此無法 08/11 18:21
mainline : 繞過 舉例data分區若是ext4的話 直接透過ext4驅動 08/11 18:21
mainline : 是無法讀取那個由fuse生出來的檔案 因為ext4根本搞 08/11 18:21
mainline : 不懂那東西的內容 08/11 18:21
mainline : BTW 若你還想試FTP的話 FTP在連線登錄訊息上 serv 08/11 18:38
mainline : er方會自己表明自己有支援的指令 你看看有沒有個M 08/11 18:38
mainline : DTM 若沒有見到那就是你使用手機的FTP_app本身就不 08/11 18:38
mainline : 支援 08/11 18:38
mainline : 我剛用solid explorer的FTP插件 搭電腦FTPrush客戶 08/11 18:40
mainline : 端 沒問題 rush是要去設定改說你要保留server文件 08/11 18:40
mainline : 時間 08/11 18:40
m大你談的FTP部份我都試了 結果都不行欸 1. filezilla的MDTM設定我找到並開啟了 試著上傳 PC(client) -> Phone(server) 日期丟失 2. FTP Rush https://i.imgur.com/F466jqa.png 日期還是丟失 我爬文時有看到是ftp server要有支援MFMT client(PC)做上傳動作才會保留mod_date http://blog.roodo.com/ystuan/archives/6171547.html https://i.imgur.com/bwvSsTw.png 你的方案是下載時保留mod_date,可是我從手機copy出來本來就沒有date lost的問題 那上傳部份我用solid FTP + FTP Rush/Filezilla 試過都是fail 看來就是手機端ftp server不支援MFMT,那我client端就沒搞頭了
mainline : OR 我平常都直接透過solid連windows的SMB傳輸 在升 08/11 18:48
請問SMB是用什麼軟體/界面在傳輸的 關鍵字詳細希望~
mainline : 到Oreo後 文件雙向移動的修改時間都獲得保留 手機 08/11 18:48
mainline : 是Nexus 5X 谷歌有將fuse換成sdcardfs 在Oreo前 虛 08/11 18:48
mainline : 擬SD內的新文件修改時間只能等同創建時間 08/11 18:48
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 所以我現在對ftp也不太抱持希望 只能在client端照mod_date改名的方式將就著用 幸好也還ok ※ 編輯: legendsaga74 (114.39.147.115), 08/11/2018 23:48:01
mainline : 啊 我說的FTP部分的確是手機去電腦並保有mod_date 08/12 02:03
mainline : 的 因為覺得透過FTP會比webdav便利 08/12 02:03
mainline : 要從電腦_client 改 手機_server 的確是要使用MFM 08/12 02:07
mainline : T沒錯 就算FTP daemon支援也無解 原因不外乎就是上 08/12 02:07
mainline : 面說的 08/12 02:07
mainline : SMB - samba 就是windows在局域網共享文件的那個東 08/12 02:12
mainline : 西啦 應該與webdav雷同 大概差在兩者是基於不同OS 08/12 02:12
mainline : I層級基礎上開發的 08/12 02:12