AOSP ~ 查看设备上的分区信息

可以通过下面的命令来查看目前系统中到底有多少分区:

cat /proc/partitions

这条命令会显示系统中的所有分区,以及每个分区的大小是多少个block,还有主设备号和次设备号等信息。
major下的数字代表这个分区所在设备的主设备号,同样minor下的数字代表次设备号。而#blocks下的数字代表这个分区占用了多少块。name下的字符串代表了这个分区的名字。

rk3568_ehome_ba200_a1:/ # cat /proc/partitions                                                                                                                                                                    
major minor  #blocks  name

   1        0       8192 ram0
   1        1       8192 ram1
   1        2       8192 ram2
   1        3       8192 ram3
   1        4       8192 ram4
   1        5       8192 ram5
   1        6       8192 ram6
   1        7       8192 ram7
   1        8       8192 ram8
   1        9       8192 ram9
   1       10       8192 ram10
   1       11       8192 ram11
   1       12       8192 ram12
   1       13       8192 ram13
   1       14       8192 ram14
   1       15       8192 ram15
 254        0    1003144 zram0
 179        0   15267840 mmcblk2
 179        1       4096 mmcblk2p1
 179        2       4096 mmcblk2p2
 179        3       4096 mmcblk2p3
 179        4       4096 mmcblk2p4
 179        5       4096 mmcblk2p5
 179        6       1024 mmcblk2p6
 179        7      51200 mmcblk2p7
 179        8      98304 mmcblk2p8
 179        9     393216 mmcblk2p9
 179       10     393216 mmcblk2p10
 179       11      16384 mmcblk2p11
 179       12      16384 mmcblk2p12
 179       13       1024 mmcblk2p13
 179       14    3186688 mmcblk2p14
 179       15   11085792 mmcblk2p15
 253        0     937084 dm-0
 253        1     112072 dm-1
 253        2     222680 dm-2
 253        3     145724 dm-3
 253        4       2492 dm-4
 253        5     882808 dm-5
 253        6   11085792 dm-6

如果想知道每个挂载到文件系统上的分区大小和使用情况的信息,可以像普通Linux一样使用df命令:

rk3568_ehome_ba200_a1:/ # df -h                                                                                                                                                                                   
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                 977M  820K  976M   1% /dev
tmpfs                 977M     0  977M   0% /mnt
/dev/block/mmcblk2p11  11M  144K   11M   2% /metadata
/dev/block/dm-0       914M  911M  2.7M 100% /
/dev/block/dm-5       722M   96K  722M   1% /mnt/scratch
overlay               722M   96K  722M   1% /system
overlay               722M   96K  722M   1% /vendor
overlay               722M   96K  722M   1% /odm
overlay               722M   96K  722M   1% /product
overlay               722M   96K  722M   1% /system_ext
tmpfs                 977M     0  977M   0% /apex
tmpfs                 977M  264K  976M   1% /linkerconfig
/dev/block/mmcblk2p10 356M  688K  355M   1% /cache
/dev/block/mmcblk2p12  11M   28K   11M   1% /mnt/ehomeprofile
/dev/block/dm-6        10G   17M   10G   1% /data
tmpfs                 977M     0  977M   0% /data_mirror
/dev/fuse              10G   17M   10G   1% /mnt/user/0/emulated

不过df命令只显示了在文件系统上的挂载点,并没有显示对应的块设备是哪个,这点可以通过使用mount命令来弥补:

df和mount命令的结果相结合,可以得到更加完整的信息,比如对于/system来说,其块设备是/dev/block/platform/msm_sdcc.1/by-name/system,文件系统使用的是ext4,大小是1.9G,当前已使用了1.6G,等等。

如果想看某些分区的别名信息,可以通过下面的命令:

rk3568_ehome_ba200_a1:/ # ls -al /dev/block/by-name/                                                                                                             
total 0
drwxr-xr-x 2 root root  400 2022-08-23 11:05 .
drwxr-xr-x 6 root root 1280 2022-08-23 11:05 ..
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 backup -> /dev/block/mmcblk2p9
lrwxrwxrwx 1 root root   21 2022-08-23 11:05 baseparameter -> /dev/block/mmcblk2p13
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 boot -> /dev/block/mmcblk2p7
lrwxrwxrwx 1 root root   21 2022-08-23 11:05 cache -> /dev/block/mmcblk2p10
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 dtbo -> /dev/block/mmcblk2p5
lrwxrwxrwx 1 root root   21 2022-08-23 11:05 ehomeprofile -> /dev/block/mmcblk2p12
lrwxrwxrwx 1 root root   21 2022-08-23 11:05 metadata -> /dev/block/mmcblk2p11
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 misc -> /dev/block/mmcblk2p4
lrwxrwxrwx 1 root root   18 2022-08-23 11:05 mmcblk2 -> /dev/block/mmcblk2
lrwxrwxrwx 1 root root   23 2022-08-23 11:05 mmcblk2boot0 -> /dev/block/mmcblk2boot0
lrwxrwxrwx 1 root root   23 2022-08-23 11:05 mmcblk2boot1 -> /dev/block/mmcblk2boot1
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 recovery -> /dev/block/mmcblk2p8
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 security -> /dev/block/mmcblk2p1
lrwxrwxrwx 1 root root   21 2022-08-23 11:05 super -> /dev/block/mmcblk2p14
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 trust -> /dev/block/mmcblk2p3
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 uboot -> /dev/block/mmcblk2p2
lrwxrwxrwx 1 root root   21 2022-08-23 11:05 userdata -> /dev/block/mmcblk2p15
lrwxrwxrwx 1 root root   20 2022-08-23 11:05 vbmeta -> /dev/block/mmcblk2p6

有了这些信息,就可以使用dd命令,将感兴趣的分区全部倒出来进行分析。比如,如果想将TrustZone相关的tz分区倒出到sdcard上,可以使用下面的命令:
dd if=/dev/block/platform/msm_sdcc.1/by-name of=/sdcard/tz.img

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值