題:
亞行拉/數據失敗
user3734225
2014-07-04 11:30:09 UTC
view on stackexchange narkive permalink

我已經將我的設備HTC Evo Design 4G紮根了,我嘗試adb拉/ data數據,並說“ 0個文件拉0個文件已跳過”

我能夠拉/System/build.prop 。我如何拉根文件夾。

謝謝youiua

您是否先運行了“ adb root”?
是的,但是adb root無法成功。沒有權限。但是我可以使用adb shell su。它給 #。
五 答案:
Izzy
2014-07-04 20:22:04 UTC
view on stackexchange narkive permalink

/ data / data 下的文件和目錄受“普通用戶”保護,因此,除非ADB守護程序以root模式運行,否則您不能簡單地“拉”它們。除了您所引用的文件( / system / buildprop 至少對所有應用程序均可讀)以外, / data / data 下的文件夾是“不可見”(root用戶除外),因此甚至無法讀取它們。

要能夠對它們使用 adb pull ,您需要使ADB守護程序在root用戶中運行模式優先。根據設備的不同,一個簡單的 adb root 命令可能會執行此操作-但大多數設備都拒絕這樣做。在這種情況下,您可以使用Chainfire的 adbd不安全 :在您的設備上安裝此應用,在設備上啟動它,然後手動切換到“不安全”模式。現在, pull 應該會成功。

備註:之所以稱為“不安全”,是因為以root用戶身份運行 adbd 可以使所有人都有計算機和USB電纜訪問設備上的所有內容。萬一你想知道。

謝謝你!除了chainfire adbd不安全之外,是否可以在build屬性中設置ro.secure標誌?我可以使用adb shell setprop ro.secure 0嗎?
我從來沒有嘗試過,也不知道該標誌的用途是什麼,所以我無法分辨。 (順便說一句:如果您發現答案很有用,歡迎您對它進行[“ upvote”)(http://android.stackexchange.com/help/why-vote)(SE表示“謝謝”的方式)–或[“ accept” it](http://android.stackexchange.com/help/accepted-answer)解決了我們的問題;)
亞行對我不安全的工作:)
Juan
2015-11-06 00:35:41 UTC
view on stackexchange narkive permalink

如果您的手機已紮根,則有三種解決方法。第一個是使用不安全的ADBD

另一個是將其移動到具有root用戶的另一個文件夾,然後從那里拉出它:

  $ adb shellshell @ android:/ $ suroot @ android:/#mkdir / sdcard / dataroot @ android:/#cp / data / data / * / sdcard / dataroot @ android:/#exitshell @ android:/ $ exit $ adb pull / sdcard / data。$ adb shellshell @ android:/ $ rm -r / sdcard / data / shell @ android:/ $ exit  

我認為您可以構建如下腳本:

  echo'echo“ mkdir / sdcard / data; cp $ 1 / * / sdcard / data; exit” | su退出” | adb shelladb pull / sdcard / data .echo'rm -r / sdcard / data;退出” |最後,第三個選項是 chmod -R 1777 / data / data ,但這是不安全得多,因此強烈建議不要這樣做。
我可以問一下“ $ 1 / *”是什麼意思嗎?是/ data / data目錄嗎?
非常好的答案
使用-r複製遞歸子目錄和文件 “ cp -r / data / data / sdcard / data”
@Emen`$ 1`將是提供給腳本的第一個參數,在這種情況下,它將引用目錄。因此,如果該腳本位於名為“ extractdir.sh”的文件中,則可以使用“ ./extractdir.sh / path / to / target / dir”來調用它。
Hiemanshu Sharma
2014-07-04 12:12:48 UTC
view on stackexchange narkive permalink

您不能直接拉數據文件夾,因為adb沒有文件列表訪問權限。如果要拉/ data文件夾,則可以通過恢復來完成([自定義恢復,CWM / TWRP]在設備處於恢復模式時運行adb,希望是自定義恢復)。或者以根用戶身份將/ data複製到另一個目錄(sdcard)並將其從那里拉出。

謝謝。但是我能夠拉/ System文件夾中的build.prop文件。 adb shell su,然後我可以列出根文件夾中的文件。我在Google搜索設置中將ro.secure build屬性讀為0將有助於提取/ data。如果是這樣,有辦法嗎?
您可以拉出build.prop,因為/ system具有列表權限。您可以在boot.img中更改ro.secure = 0,但這是一個非常複雜的步驟。僅安裝自定義恢復並從那裡進行操作會更容易。
非常感謝你!我的主要目的是將法醫相關應用程序作為大學的最後一年項目。我真的很害怕,安裝自定義恢復會清除設備中的證據。您對這個主題有任何想法嗎?
添加到我之前的評論-adb shell setprop的用途是什麼?我不能在這種情況下使用它嗎?
依靠手機紮根並打開調試功能的取證恢復程序聽起來不是很有用。
我必須同意@DanHulme。您不能啟用依賴root和usb調試的應用程序。您還認為自定義恢復將消除什麼?
“依靠電話紮根並打開調試功能的取證恢復程序聽起來不是很有用。”有人可以向我解釋一下。我完全是一個新手,他還在努力學習東西
AtomicusZro
2018-01-14 10:21:38 UTC
view on stackexchange narkive permalink

部分I:為ADB PULL準備好所有文件

這對我有用:*確保您使用的是最新的ADB版本。

  • 啟動ADB會話:

'infocus $ adb shell'

  • 獲取SU在ADB會話中擁有一次權利,您只需要做的就是輸入“ su”,如下所示:

'shell @ m1:/ $ su'

然後您會注意到“ $”變成“#”,就像這樣:

'root @ m1:/#'

-哈希讓您知道您處於SU模式。

  • 在設備的/ sdcard上創建一個文件夾

'root @ m1:/#mkdir / sdcard / data /'

*指向要復制的文件的根-例如,對於我來說,我想備份/複製我的應用程序並將其存儲在計算機上,以便:

'root @ m1:/ data / app#'

  • 如果我“ ls”該文件夾,我將得到的示例:

'root @ m1:/ data / app#ls
com.abtnprojects.ambatana-1
com.acr.rootfilemanager-1
com.amazon.kindle-1 com.android.chrome-1
com.android.mms-1
com.android.vending-2'

  • 為了使用ADB“ cp”命令遞歸複製,使用選項“ -R”,由於我想複製其中的所有內容,因此使用通配符“ *”,如下所示:

'root @ m1:/ data / app#cp -R * / / sdcard / data /'

  • 按Enter鍵後,如果文件很大複製文件顯然會花費一些時間,因此光標會空轉一會兒,看起來好像不是做任何事情,但就是這樣!它正在復製文件,所以不要驚慌!並且不要停止該過程!!!-如果您只想打開另一個ADB Shell會話並轉到要傳輸文件的文件夾,然後執行“ ls”檢查,您應該會看到空文件夾正在填充文件。轉移完成後,您將獲得外殼。

  • 轉到“ sdcard /數據”,並確保所有內容均已復制為“ ls”:

'root @ m1:/ sdcard / data#ls
com.abtnprojects.ambatana-1
com.acr.rootfilemanager-1
com.amazon.kindle-1
com.android.chrome-1
com.android.mms-1'

PART II:ADB PULL

  • 通過此操作如果您尚未在目標計算機上創建文件夾,請執行此操作。我方便地創建了一個名為“ apps”的文件夾

  • 現在,讓我們一次執行所有文件的難以捉摸的遞歸ADB PULL:-確保您已退出ADB會話中,因為我們處於SU模式,所以需要退出兩次:

'root @ m1:/ sdcard / data#exit'
'shell @ m1:/ $ exit'

  • 從正常的shell會話運行“ adb pull”,您不必使用“ -a”選項,我個人使用它來盡可能地保持文件的完整性。 -運行命令:

'AtomicusZro $ adb pull -a / sdcard / data / apps /'

您應該看到類似這個:

'[69%] /sdcard/data/com.google.android.gms-1/base.apk:74%'

完成後:

'/ sdcard / data /:提取了296個文件。 5.1 MB / s(在221.352s中為1193942288字節)'

然後瞧!

注意:
。不​​知道是否有問題,但我使用的是Mac。
。如果在ADB會話中,您也無法獲得“ su特權”:
第一個:您可能需要授予ADB根訪問權限
第二個:“超級用戶”,它安裝不正確
。再次檢查您的命令

祝您好運。-

我不需要為此紮根嗎?
Haris Cheong
2018-09-22 13:45:57 UTC
view on stackexchange narkive permalink

在我的android 7.1設備上工作。使它正常工作的步驟:

  1. 通過leroy在 https://nofile.io/f/86605d8qsJs/adbd-Insecure-v2.00.apk下載adbd不安全版本 a>
  2. 安裝在手機中。
  3. 在adb目錄中運行adb shell
  4. 鍵入“ su”,以便您可以獲取“#”
  5. 鍵入“ setenforce 0”
  6. 啟用不安全的adbd。關閉USB調試
  7. 打開和關閉開發人員選項的USB調試
  8. 關閉不安全的adbd,然後重新打開。
  9. ol>

    您現在可以執行adb

    希望這會有所幫助


    Haris



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...