导航:首页 > 程序命令 > adb挂载data分区命令

adb挂载data分区命令

发布时间:2022-09-25 02:25:15

㈠ 手机内置存储镜像到电脑

本文详细图文讲述安卓直接镜像到电脑的方法;

目前安卓手机镜像数据恢复是一个困扰大家的难题,尤其是没有SD卡的手机数据恢复,更是不好做.


之前我做过一个三星W2013的手机,它的data和sdcard是一个分区(ext4)上不同的目录.那时我想都没想,直接dd if=/dev/block/mmcblkxpx of=/sdcard/data.img进行数据恢复,后来傻眼了,做镜像时data区的已经使用空间也在增长.数据被覆盖了!!!后来从客户的备份中找到了手机的联系人.虚惊一场.


现在给大家介绍一种方法,可以直接把手机的内存储镜像到电脑保存到任何一个分区中.

在给大家介绍这个方法之前看一下我们的准备工作:

1.手机要有ROOT权限.

2.手机要开启调试模式.

3.手机要有与外界相互沟通的管道.

4.要知道DATA区的挂载点.

5.要知道相应的镜像命令(dd)

6.电脑端要有相应的工具(nc.exe pv.exe cygwin1.dll以及必备的adb.exe AdbWinApi.dll AdbWinUsbApi.dll )我的这些工具都是放在C:ADBshelladbhelp目录下了.

我们做手机内存储的目的是做数据恢复,因些我们有一个先提条件:手机的DATA分区确保不要写入任何数据


1.ROOT的说明

有关ROOT的方法我这里就不多说了.网上的方法很多.大家选取吧.

对于某些手机比如说HTC,某些索爱手机,如果想ROOT,要先解锁,不解的话是不能取得ROOT的.

一般的ROOT有三个方法,

-- 专门针对某一个类型手机出的ROOT工具.:

--电脑端的一键ROOT工具

--手机端的ROOT工具.


我还有第四种方法,这种方法可以做到部分手机在关机的情况下取得ROOT,进而取得镜像.这是最完善的ROOT取得的方法.

对于找不到某一类型的ROOT工具,我推荐用:电脑端的360一键ROOT,我测试过,用这个软件ROOT的时候,DATA区写入的数据量最少(不到1MB).

万一电脑端的ROOT工具都不能ROOT这个手机,就采用手机端的ROOT工具.能ROOT总比什么也做不了强吧.

2.调试模式的说明

这个不用多说了.打开就行了.至于手机如何开启调试模式,大家一下相关的知识吧.这里就不多说了.


3.与外界管道的说明

这个要用大名鼎鼎的nc工具.关于这个工具的说明大家从网上找找就行了.记得很久以前用这个工具做后门用的.不过我已经不做黑客好多年了.

准备工作做好后,现在开始镜像工作.

手机连上电脑,

图10 镜像完工后手机端显示

图11 镜像完工后电脑端显示

下面就拿数据恢复软件打开F盘330wang目录下的data.img进行扫描吧.只要能支持ext4的就行,比方说winhex r-studio UFS等.

android 基本文件操作命令

ADB (Android Debug Bridge)
说明:下面一些命令需要有root权限才能执行成功
快速启动dos窗口执行adb:
1. adb.exe所在路径添加到系统环境变量中
2. 配置快捷键启动dos
进入C:\WINDOWS\system32目录下,找到cmd.exe.
右击菜单 "发送到" -> 桌面快捷方式。
在桌面上右击"快捷方式 到 cmd.exe" -> "属性" -> "快捷方式"页
-> 光标高亮"快捷键" -> 按下自定义快捷键 (如:Ctrl + Alt + Z)

任何情况下,按下Ctrl + Alt + Z启动dos窗口就可以执行adb命令了

-----------查看设备连接状态 系列-----------
adb get-serialno 获取设备的ID和序列号serialNumber
adb devices 查询当前计算机上连接那些设备(包括模拟器和手机),输出格式: [serialNumber] [state]
adb get-state 查看模拟器/设施的当前状态.

说明:
序列号[serialNumber]——由adb创建的一个字符串,这个字符串通过自己的控制端口<type>-<consolePort>
唯一地识别一个模拟器/设备实例。一个序列号的例子: emulator-5554

-----------发送命令到设备 系列-----------
adb [-d|-e|-s <serialNumber>] <command>
-d 发送命令给usb连接的设备
-e 发送命令到模拟器设备
-s <serialNumber> 发送命令到指定设备

如启动手机设备shell: adb -d shell

adb forward <local> <remote>发布端口,可以设置任意的端口号,
做为主机向模拟器或设备的请求端口。如:adb forward tcp:5555 tcp:8000

adb reboot 重启手机
adb remount 将system分区重新挂载为可读写分区
adb kill-server 终止adb服务进程
adb start-server 重启adb服务进程
adb root 已root权限重启adb服务
adb wait-for-device 在模拟器/设备连接之前把命令转载在adb的命令器中
adb jdwp 查看指定的设施的可用的JDWP信息.
可以用 forward jdwp:<pid> 端口映射信息来连接指定的JDWP进程.例如:
adb forward tcp:8000 jdwp:472
jdb -attach localhost:8000

adb shell am 命令可以启动应用程序

adb shell input text <string> 向设备输入文本(光标所在的文本框)
adb shell input keyevent <event_code> 向设备发送按键事件
如:
在编辑短信时,往文本框输入文本:adb shell input text "hello"
向手机发送键值回Home:adb shell input keyevent 3
event_code 参考view/KeyEvent.java中的 KEYCODE_*
public static final int KEYCODE_SOFT_LEFT = 1;
public static final int KEYCODE_SOFT_RIGHT = 2;
public static final int KEYCODE_HOME = 3;
public static final int KEYCODE_BACK = 4;
public static final int KEYCODE_CALL = 5;
public static final int KEYCODE_ENDCALL = 6;

-----------安装卸载 系列-----------
adb install [-l] [-r] <file> - push this package file to the device and install it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data)
adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories)
如:
adb install d:\hello.apk
adb unstall com.huawei.hello
说明:如果带-r选项重新安装apk时,安装在 /data/local/tmp/目录下,手机重启后还是使用原来的apk.

-----------文件操作 系列-----------
adb push <local> <remote> - file/dir to device
adb pull <remote> <local> - file/dir from device

-----------基本linux shell命令 系列-----------
adb shell [command]
ls 列出目录下的文件和文件夹
cd 切换目录
rm 删除目录和文件
cat 查看文件内容
ps 可以看那个进程再跑
ps -x [PID] 查看单个进程的状态
top 可以看那个进程的占用率最高
su 切换到root用户
kill [pid] 杀死一个进程
chmod 777 <file> 修改该文件为可执行权限

详细使用情况可以登录一台Linux服务器在shell下查看帮助手册, man <command>

-----------查看系统状态和信息 系列-----------
adb shell procrank 查询各进程内存使用情况
adb shell service list 查看services信息
adb shell cat /proc/meminfo 查看当前的内存情况
adb shell cat /proc/cpuinfo 查看CPU信息(硬件)
adb shell cat /proc/iomem 查看IO内存分区

adb shell getprop 列出系统所有属性
adb shell getprop | findstr "gsm" 列出包含gsm的属性
adb shell setprop <key> <value> 修改系统属性

adb shell sqlite3 可以执行sql语句查看数据库信息, 具体使用情况待调查

-----------Log 系列-----------
adb logcat [ <filter-spec> ] - View device log

1~~~~~~~~~~~查看可用日志缓冲区:
adb logcat -b radio — 查看缓冲区的相关的信息.
adb logcat -b events — 查看和事件相关的的缓冲区.
adb logcat -b main — 查看主要的日志缓冲区

2~~~~~~~~~~~过滤日志输出:
过滤器语句按照下面的格式描tag:priority ... , tag 表示是标签, priority 是表示标签的报告的最低等级
adb logcat *:W 显示优先级为warning或更高的日志信息
adb logcat ActivityManager:I MyApp:D *:S

日志的标签是系统部件原始信息的一个简要的标志。(比如:“View”就是查看系统的标签).
优先级有下列集中,是按照从低到高顺利排列的:
V — Verbose (lowest priority)
D — Debug
I — Info
W — Warning
E — Error
F — Fatal
S — Silent (highest priority, on which nothing is ever printed)

如果你电脑上运行logcat ,相比在远程adbshell端,你还可以为环境变量ANDROID_LOG_TAGS :输入一个参数来设置默认的过滤
export ANDROID_LOG_TAGS="ActivityManager:I MyApp:D *:S"
需要注意的是ANDROID_LOG_TAGS 过滤器如果通过远程shell运行logcat 或用adb shell logcat 来运行模拟器/设备不能输出日志.

3~~~~~~~~~~~控制日志输出格式:
日志信息包括了许多元数据域包括标签和优先级。可以修改日志的输出格式,所以可以显示出特定的元数据域。可以通过 -v 选项得到格式化输出日志的相关信息.

brief — Display priority/tag and PID of originating process (the default format).
process — Display PID only.
tag — Display the priority/tag only.
thread — Display process:thread and priority/tag only.
raw — Display the raw log message, with no other metadata fields.
time — Display the date, invocation time, priority/tag, and PID of the originating process.
long — Display all metadata fields and separate messages with a blank lines.
当启动了logcat ,你可以通过-v 选项来指定输出格式:

[adb] logcat [-v <format>]
下面是用 thread 来产生的日志格式:

adb logcat -v thread
需要注意的是你只能-v 选项来规定输出格式 option.

4~~~~~~~~~~~Logcat命令列表
-b <buffer> 加载一个可使用的日志缓冲区供查看,比如event 和radio . 默认值是main 。具体查看Viewing Alternative Log Buffers.
-c 清楚屏幕上的日志.
-d 输出日志到屏幕上.
-f <filename> 指定输出日志信息的<filename> ,默认是stdout .
-g 输出指定的日志缓冲区,输出后退出.
-n <count> 设置日志的最大数目<count> .,默认值是4,需要和 -r 选项一起使用。
-r <kbytes> 每<kbytes> 时输出日志,默认值为16,需要和-f 选项一起使用.
-s 设置默认的过滤级别为silent.
-v <format> 设置日志输入格式,默认的是brief 格式,要知道更多的支持的格式,参看Controlling Log Output Format

adb bugreport - return all information from the device
that should be included in a bug report.

adb shell dmesg 查询内核缓冲区信息
adb shell mpstate 各类信息,比如进程信息,内存信息,进程是否异常,kernnel的log等
adb shell mpcrash
adb shell mpsys 查询所有service的状态

-----------其他 -----------

模拟器使用镜像sdcard
用SDK里的mksdcard工具来创建FAT32磁盘镜像并在模拟器启动时加载它。这样创建镜像:? mksdcard <size> <file>,
比如我要创建一个64M的SD卡模拟文件,文件路径是在D:\workspace\sdcard.img
mksdcard 64000000 D:\workspace\sdcard.img

Emulator –sdcard D:\workspace\sdcard.img
或者在eclipse的run菜单的open run dialog对话框中配置启动参数。

#top
Usage: top [ -m max_procs ] [ -n iterations ] [ -d delay ] [ -s sort_column ] [ -t ] [ -h ]
-m num Maximum number of processes to display.
-n num Updates to show before exiting.
-d num Seconds to wait between updates.
-s col Column to sort by (cpu,vss,rss,thr).
-t Show threads instead of processes.
-h Display this help screen.

********* simple selection ********* ********* selection by list *********
-A all processes -C by command name
-N negate selection -G by real group ID (supports names)
-a all w/ tty except session leaders -U by real user ID (supports names)
-d all except session leaders -g by session OR by effective group name
-e all processes -p by process ID
T all processes on this terminal -s processes in the sessions given
a all w/ tty, including other users -t by tty
g OBSOLETE -- DO NOT USE -u by effective user ID (supports names)
r only running processes U processes for specified users
x processes w/o controlling ttys t by tty
*********** output format ********** *********** long options ***********
-o,o user-defined -f full --Group --User --pid --cols --ppid
-j,j job control s signal --group --user --sid --rows --info
-O,O preloaded -o v virtual memory --cumulative --format --deselect
-l,l long u user-oriented --sort --tty --forest --version
-F extra full X registers --heading --no-heading --context
********* misc options *********
-V,V show version L list format codes f ASCII art forest
-m,m,-L,-T,H threads S children in sum -y change -l format
-M,Z security data c true command name -c scheling class
-w,w wide output n numeric WCHAN,UID -H process hierarchy

netstat -ano 查看网络连状态
显示协议统计信息和当前 TCP/IP 网络连接。

NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v] [interval]

-a 显示所有连接和监听端口。
-b 显示包含于创建每个连接或监听端口的
可执行组件。在某些情况下已知可执行组件
拥有多个独立组件,并且在这些情况下
包含于创建连接或监听端口的组件序列
被显示。这种情况下,可执行组件名
在底部的 [] 中,顶部是其调用的组件,
等等,直到 TCP/IP 部分。注意此选项
可能需要很长时间,如果没有足够权限
可能失败。
-e 显示以太网统计信息。此选项可以与 -s
选项组合使用。
-n 以数字形式显示地址和端口号。
-o 显示与每个连接相关的所属进程 ID。
-p proto 显示 proto 指定的协议的连接;proto 可以是
下列协议之一: TCP、UDP、TCPv6 或 UDPv6。
如果与 -s 选项一起使用以显示按协议统计信息,proto 可以是下列协议之一:
IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6。
-r 显示路由表。
-s 显示按协议统计信息。默认地,显示 IP、
IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计信息;
-p 选项用于指定默认情况的子集。
-v 与 -b 选项一起使用时将显示包含于
为所有可执行组件创建连接或监听端口的
组件。
interval 重新显示选定统计信息,每次显示之间
暂停时间间隔(以秒计)。按 CTRL+C 停止重新
显示统计信息。如果省略,netstat 显示当前
配置信息(只显示一次)

pm
usage: pm [list|path|install|uninstall]
pm list packages [-f]
pm list permission-groups
pm list permissions [-g] [-f] [-d] [-u] [GROUP]
pm list instrumentation [-f] [TARGET-PACKAGE]
pm list features
pm path PACKAGE
pm install [-l] [-r] [-t] [-i INSTALLER_PACKAGE_NAME] PATH
pm uninstall [-k] PACKAGE
pm enable PACKAGE_OR_COMPONENT
pm disable PACKAGE_OR_COMPONENT

The list packages command prints all packages. Options:
-f: see their associated file.

The list permission-groups command prints all known
permission groups.

The list permissions command prints all known
permissions, optionally only those in GROUP. Options:
-g: organize by group.
-f: print all information.
-s: short summary.
-d: only list dangerous permissions.
-u: list only the permissions users will see.

The list instrumentation command prints all instrumentations,
or only those that target a specified package. Options:
-f: see their associated file.

The list features command prints all features of the system.

The path command prints the path to the .apk of a package.

The install command installs a package to the system. Options:
-l: install the package with FORWARD_LOCK.
-r: reinstall an exisiting app, keeping its data.
-t: allow test .apks to be installed.
-i: specify the installer package name.

The uninstall command removes a package from the system. Options:
-k: keep the data and cache directories around.
after the package removal.

The enable and disable commands change the enabled state of
a given package or component (written as "package/class").

查看stdout 和stderr
在默认状态下,Android系统有stdout 和 stderr (System.out和System.err )输出到/dev/null ,
在运行Dalvik VM的进程中,有一个系统可以备份日志文件。在这种情况下,系统会用stdout 和stderr 和优先级 I.来记录日志信息

通过这种方法指定输出的路径,停止运行的模拟器/设备,然后通过用setprop 命令远程输入日志

$ adb shell stop
$ adb shell setprop log.redirect-stdio true
$ adb shell start系统直到你关闭模拟器/设备前设置会一直保留,可以通过添加/data/local.prop 可以使用模拟器/设备上的默认设置

UI/软件 试验程序 Monkey
当Monkey程序在模拟器或设备运行的时候,如果用户出发了比如点击,触摸,手势或一些系统级别的事件的时候,
它就会产生随机脉冲,所以可以用Monkey用随机重复的方法去负荷测试你开发的软件.
最简单的方法就是用用下面的命令来使用Monkey,这个命令将会启动你的软件并且触发500个事件.

$ adb shell monkey -v -p your.package.name 500
更多的关于命令Monkey的命令的信息,可以查看UI/Application Exerciser Monkey documentation page.

㈢ 如何在adb shell下mount Android下的分区

方法一:使用df命令查看#/dev197M64K197M4096/mnt/asec197M0K197M4096/mnt/obb197M0K197M4096/system295M245M50M4096/data755M26M728M4096/cache188M4M184M4096/HWUserData2G1024K2G32768/cust59M14M44M4096/mnt/sdcard7G753M6G32768/mnt/secure/asec7G753M6G32768看到/system分区有295MB的大小。接着查看/proc下的partitions#cat/proc/partitionscat/proc/partitionsmajorminor#104096mtdblock0看出,分区mmcblk012的大小最接近295MB,判断挂载点/system就对应该它了。(其实,可以在/proc/mounts下面看的更直接。。。)于是,输入以下mount命令#mount-oremount,rw/dev/block/mmcblk0p12/system就可以在/system下面进行写操作。当然,如果不打算重启机子的话,最好还是将它恢复到readonly状态。输入:#mount-oremount,ro/dev/block/mmcblk0p12/system该方法比较麻烦的是还要判断某挂载点跟分区,理论上说必须要将它们对应上来,否则会出错。而实际上试过将不同的分区跟挂载点remount一下,居然还是可以的。原因暂时不明。方法二:考虑到上面用斜黑体字写的现象,尝试用其他信息代替”/dev/block/mmcblk0p12“,试了一下居然也是可行的!直接输入下列命令即可:#mount-oremount,rwmtd@system/system第二种方法虽然也是可以的。之所以这么写是参考init.rc里面的mount写法。不清楚这个是怎么回事,要是原生的linuxmount命令应该不会这样的。update:2013.11其实,没必要像上面方法一和方法二那么复杂.还可以更简单.只需要输入:#mount-oremount,rw/system即可.linux系统自己会去维护一个已经mount的表.所以只需要输入现有的挂载点就行啦

㈣ adb怎么修改DATA文件夹的权限

你好,这个问题比较好处理,
首先用ls
-l
/data看看
data目录是否有读写权限,如果没有就用一下命令改一下:
chmod
777
/data
如果提示没有chmod命令,那么安装一个busybox到你的设备上,然后再用:
busybox
chmod
777
/data
然后,因为data是作为一个分区挂载到文件系统的,所以要看看挂载到文件系统的权限,输入以下命令查看:
mount
你可以找到data的挂载信息,里面如果出现一个ro的话表示已只读方式挂载,此时还不能写入文件
需要重新挂载
输入以下命令重新挂载(这个命令你会运行失败):
mount
-o
rw,remount
-t
yaffs2
/dev/block/mtdblock2
/system
这个地方需要你再提供一下信息,把mount后的输出贴给我,我再给你回复

㈤ ADB是什么 ADB常用命令介绍

adb是windows系统通过usb或者无线连接Android手机的一个接口

adb 常用命令大全
1. 显示系统中全部Android平台:
android list targets
2. 显示系统中全部AVD(模拟器):
android list avd
3. 创建AVD(模拟器):
android create avd --name 名称 --target 平台编号
4. 启动模拟器:
emulator -avd 名称 -sdcard ~/名称.img (-skin 1280x800)
5. 删除AVD(模拟器):
android delete avd --name 名称
6. 创建SDCard:
mksdcard 1024M ~/名称.img
7. AVD(模拟器)所在位置:
Linux(~/.android/avd) Windows(C:\Documents and Settings\Administrator\.android\avd)
8. 启动DDMS:
ddms
9. 显示当前运行的全部模拟器:
adb devices
10. 对某一模拟器执行命令:
abd -s 模拟器编号 命令
11. 安装应用程序:
adb install -r 应用程序.apk
12. 获取模拟器中的文件:
adb pull <remote> <local>
13. 向模拟器中写文件:
adb push <local> <remote>
14. 进入模拟器的shell模式:
adb shell
15. 启动SDK,文档,实例下载管理器:
android
16. 缷载apk包:
adb shell
cd data/app
rm apk包
exit
adb uninstall apk包的主包名
adb install -r apk包
17. 查看adb命令帮助信息:
adb help
18. 在命令行中查看LOG信息:
adb logcat -s 标签名
19. adb shell后面跟的命令主要来自:
源码\system\core\toolbox目录和源码\frameworks\base\cmds目录。
20. 删除系统应用:
adb remount (重新挂载系统分区,使系统分区重新可写)。
adb shell
cd system/app
rm *.apk
21. 获取管理员权限:
adb root
22. 启动Activity:
adb shell am start -n 包名/包名+类名(-n 类名,-a action,-d date,-m MIME-TYPE,-c category,-e 扩展数据,等)。
23、发布端口:
你可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如:
adb forward tcp:5555 tcp:8000
24、复制文件:
你可向一个设备或从一个设备中复制文件,
复制一个文件或目录到设备或模拟器上:
adb push
<source>
<destination></destination></source>
如:adb
push test.txt /tmp/test.txt
从设备或模拟器上复制一个文件或目录:
adb
pull <source>
<destination></destination></source>
如:adb
pull /addroid/lib/libwebcore.so .
25、搜索模拟器/设备的实例:
取得当前运行的模拟器/设备的实例的列表及每个实例的状态:
adb devices
26、查看bug报告:
adb bugreport
27、记录无线通讯日志:
一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:
adb shell
logcat -b radio
28、获取设备的ID和序列号:
adb get-proct
adb get-serialno
29、访问数据库SQLite3
adb shell
sqlite3
#cd system/sd/data //进入系统内指定文件夹
#ls //列表显示当前文件夹内容
#rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件
#rm xxx //删除文件xxx
#rmdir xxx //删除xxx的文件夹

㈥ 如何在adb shell下mount Android下的分区

方法一:
使用df命令查看

看到/system分区有295MB的大小。
接着查看/proc下的partitions

看出,分区mmcblk012的大小最接近295MB,判断挂载点/system就对应该它了。
(其实,可以在/proc/mounts下面看的更直接。。。)
于是,输入以下mount命令

㈦ adb怎么修改DATA文件夹的权限

你好,这个问题比较好处理,
首先用ls
-l
/data看看
data目录是否有读写权限,如果没有就用一下命令改一下:
chmod
777
/data
如果提示没有chmod命令,那么安装一个busybox到你的设备上,然后再用:
busybox
chmod
777
/data
然后,因为data是作为一个分区挂载到文件系统的,所以要看看挂载到文件系统的权限,输入以下命令查看:
mount
你可以找到data的挂载信息,里面如果出现一个ro的话表示已只读方式挂载,此时还不能写入文件
需要重新挂载
输入以下命令重新挂载(这个命令你会运行失败):
mount
-o
rw,remount
-t
yaffs2
/dev/block/mtdblock2
/system
这个地方需要你再提供一下信息,把mount后的输出贴给我,我再给你回复

㈧ 如何使用adb 修改分区

A20 adb shell命令实现硬盘分区

1'输入busybox fdisk /dev/block/sda ;

2'在Command (m for help):后输入m,查看帮助;

Command (m for help): m
m
Command Action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)

3'输入查看p,若如果之前用过就会有显示,

Command (m for help): p
p

Disk /dev/block/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

4'选择删除d,

Command (m for help): d
d
No partition is defined yet!

5'新建分区n,

Command (m for help): n
n
Command action
e extended
p primary partition (1-4)

6'选择p,

P
P
Partition number (1-4):

7'选择分区的数目,我选择1,

Partition number (1-4): 1
1
First cylinder (1-60801, default 1):

8‘ 直接回车(主分区的起始位置);默认为1,默认就好;

First cylinder (1-60801, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-60801, default 60801):

9’这个是定义分区大小的,+499000M 就是大小为+499000M ;当然您也可以根据p提示的单位cylinder的大小来算,然后来指定 End的数值。回头看看是怎么算的;还是用+499000M这个办法来添加,这样能直观一点。我硬盘是500G,所以就是499G,如果您想添加一个10G左右大小的分区,请输入 +10000M ;

Last cylinder or +size or +sizeM or +sizeK (1-60801, default 60801): +499000M
+499000M

10‘通过t来指定分区类型t;

Command (m for help): t
t
Selected partition 1
Hex code (type L to list codes):

11'在这里输入L,就可以查看分区类型的id了

Hex code (type L to list codes): L
L

0 Empty 1b Hidden Win95 FAT32 9f BSD/OS
1 FAT12 1c Hidden W95 FAT32 (LBA) a0 Thinkpad hibernation
4 FAT16 <32M 1e Hidden W95 FAT16 (LBA) a5 FreeBSD
5 Extended 3c Part.Magic recovery a6 OpenBSD
6 FAT16 41 PPC PReP Boot a8 Darwin UFS
7 HPFS/NTFS 42 SFS a9 NetBSD
a OS/2 Boot Manager 63 GNU HURD or SysV ab Darwin boot
b Win95 FAT32 80 Old Minix b7 BSDI fs
c Win95 FAT32 (LBA) 81 Minix / old Linux b8 BSDI swap
e Win95 FAT16 (LBA) 82 Linux swap be Solaris boot
f Win95 Ext'd (LBA) 83 Linux eb BeOS fs
11 Hidden FAT12 84 OS/2 hidden C: drive ee EFI GPT
12 Compaq diagnostics 85 Linux extended ef EFI (FAT-12/16/32)
14 Hidden FAT16 <32M 86 NTFS volume set f0 Linux/PA-RISC boot
16 Hidden FAT16 87 NTFS volume set f2 DOS secondary
17 Hidden HPFS/NTFS 8e Linux LVM fd Linux raid autodetect
Hex code (type L to list codes):

12'选择83,

Hex code (type L to list codes): 83
83

14’在看一下p

Command (m for help): p
p

Disk /dev/block/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/block/sda1 1 60668 487315678+ 83 Linux

确实出来啦!

15‘创建w

Command (m for help): w
w
The partition table has been altered!

Calling ioctl() to re-read partition table

16’对分区进行格式化,以及加载;

输入busybox mkfs.ext2 /dev/block/sda

root@android :/ # busybox mkfs.ext2 /dev/block/sda
busybox mkfs.ext2 /dev/block/sda
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
30531584 inodes, 122096646 blocks
6104832 blocks (5%) reserved for the super user
First data block=0
Maximum filesystem blocks=125829120
3727 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000

...........

(需要注意如果之前mount过,一定要Umount掉 --busybox unmount /dev/block/sda否则会出错

busybox mkfs.ext2 /dev/block/sda
mkfs.ext2: can't format mounted filesystem)

17‘挂载mount -t ext2 /dev/block/sda /mnt/sata

OK ,buysybox df -h一下 :

root@android :/ # busybox df -h
busybox df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 153.4M 32.0K 153.4M 0% /dev
tmpfs 153.4M 0 153.4M 0% /mnt/asec
tmpfs 153.4M 0 153.4M 0% /mnt/obb
/dev/block/system 504.4M 257.9M 246.5M 51% /system
/dev/block/data 504.4M 57.7M 446.7M 11% /data
/dev/block/cache 252.1M 4.3M 247.8M 2% /cache
/dev/block/vold/93:72
2.1G 48.0K 2.1G 0% /mnt/sdcard
/dev/block/vold/93:72
2.1G 48.0K 2.1G 0% /mnt/secure/asec
/dev/block/sda 458.5G 62.5M 435.2G 0% /mnt/sata

出来啦,激动吧!

㈨ adb怎么修改DATA文件夹的权限

你好,这个问题比较好处理,
首先用ls -l /data看看 data目录是否有读写权限,如果没有就用一下命令改一下:
chmod 777 /data
如果提示没有chmod命令,那么安装一个busybox到你的设备上,然后再用:
busybox chmod 777 /data
然后,因为data是作为一个分区挂载到文件系统的,所以要看看挂载到文件系统的权限,输入以下命令查看:
mount
你可以找到data的挂载信息,里面如果出现一个ro的话表示已只读方式挂载,此时还不能写入文件 需要重新挂载
输入以下命令重新挂载(这个命令你会运行失败):
mount -o rw,remount -t yaffs2 /dev/block/mtdblock2 /system
这个地方需要你再提供一下信息,把mount后的输出贴给我,我再给你回复

阅读全文

与adb挂载data分区命令相关的资料

热点内容
android灭屏流程 浏览:489
如何更改站点文件夹名字 浏览:894
如何看服务器几核 浏览:274
找酒吧设计公司用什么app 浏览:680
基本初等函数的导数公式及导数的运算法则 浏览:915
为什么小米app启动广告关不了 浏览:877
空调压缩机一直不停 浏览:511
养殖系统开发源码 浏览:82
pdf的目录 浏览:406
光遇安卓如何一个人拍视频 浏览:277
怨女pdf 浏览:708
扭曲服务器什么时候开 浏览:23
加密货币换平台 浏览:610
手机内存压缩软件 浏览:33
生成树是否与遍历算法有关 浏览:728
python强化学习迷宫 浏览:450
老包子解压视频 浏览:885
服务器注册是什么意思 浏览:419
程序员群体焦虑如何破局 浏览:585
程序员在广州上班 浏览:803