2013-08-07 26 views
0

在閱讀模式下打開android手機內部存儲器mmcblk0我正在做我的研究在android手機取證。我想使用open()和read()linux調用訪問android手機內部內存。我使用NDK在c中實現了這些調用。這是我的本地C代碼:如何使用open()

jint fd; 
jlong ReadMemory(jbyte* buf, jint bufflength){ 

    jlong size=0; 
    system("su"); 
    fd=open("/dev/block/mmcblk0",O_RDONLY); 
    size=read(fd,buf,bufflength); 
    return size;//fd; 

} 

所以當我試圖打開內存時,FD得到-1值。請幫助我克服這種情況。

回答

0

這是一個文件系統特殊塊設備。您可以從系統內部(在設備上,在外殼中)讀取它。您可以使用Linux命令:

cat /dev/block/mmcblk0 | gzip > /emmc/copy 

拷貝整個文件系統,用gzip壓縮,並把在安裝/EMMC文件夾名稱爲「複製」的文件。

您可以選擇壓縮圖像的文件夾和文件名。並且請注意,在700MHz設備上,讀取和壓縮整個文件系統可能需要很長時間(幾個小時)。