安卓Android adb shell查看 分区、挂载 相关命令及关系

busybox toybox有编译好的arm二进制,但是它们的实现通常会少一些功能。或者在安卓上不太兼容。

df -h(toybox)

Filesystem Size Used Avail Use% Mounted on
/dev/root 4.7G 3.7G 916M 81% /
tmpfs 3.7G 1.1M 3.7G 1% /dev
tmpfs 3.7G 0 3.7G 0% /mnt
tmpfs 3.7G 0 3.7G 0% /apex
/dev/block/sde15 2.0G 1.2G 768M 63% /vendor
tmpfs 3.7G 3.8M 3.7G 1% /sbin
/dev/block/loop0 220M 49M 163M 24% /oppo_product
/dev/block/loop1 55M 188K 53M 1% /oppo_version
/dev/block/sda10 232M 3.4M 221M 2% /cache
/dev/block/sda13 108G 104G 3.5G 97% /data
tmpfs 3.7G 0 3.7G 0% /system/etc/permissions
tmpfs 3.7G 0 3.7G 0% /system/framework
tmpfs 3.7G 0 3.7G 0% /system/lib
tmpfs 3.7G 0 3.7G 0% /system/lib64
tmpfs 3.7G 0 3.7G 0% /system/priv-app
tmpfs 3.7G 0 3.7G 0% /system/xbin
/dev/block/loop2 220M 49M 163M 24% /data/vendor/euclid/product
overlay 220M 49M 163M 24% /vendor/etc
/data/media 107G 104G 3.3G 97% /storage/emulated

 

基本上要么是tmpfs(在内存中创建的临时文件系统),要么是/dev/block下的type ext4

df -ah输出更多 -a      Show all (including /proc and friends)

mount(toybox)

sdb、sdc、sdd的分区的都没有挂载,sda、sde、sdf的一部分分区挂载了

RMX1901CN:/ $ mount
/dev/root on / type ext4 (ro,seclabel,nodev,relatime)
tmpfs on /dev type tmpfs (rw,seclabel,nosuid,relatime,size=3886564k,nr_inodes=971641,mode=755)
devpts on /dev/pts type devpts (rw,seclabel,relatime,mode=600,ptmxmode=000)
proc on /proc type proc (rw,relatime,gid=3009,hidepid=2)
sysfs on /sys type sysfs (rw,seclabel,relatime)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
tmpfs on /mnt type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,size=3886564k,nr_inodes=971641,mode=755,gid=1000)
tmpfs on /apex type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,size=3886564k,nr_inodes=971641,mode=755)
/dev/block/sde15 on /vendor type ext4 (ro,seclabel,relatime,async_discard)
tmpfs on /sbin type tmpfs (rw,seclabel,relatime,size=3886564k,nr_inodes=971641,mode=755)
/dev/block/loop0 on /oppo_product type ext4 (ro,seclabel,relatime,data=ordered)
/dev/block/loop1 on /oppo_version type ext4 (ro,seclabel,relatime,data=ordered)
none on /dev/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
none on /dev/cg2_bpf type cgroup2 (rw,nosuid,nodev,noexec,relatime)
none on /dev/cpuctl type cgroup (rw,nosuid,nodev,noexec,relatime,cpu)
none on /acct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct)
none on /dev/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset,noprefix,release_agent=/sbin/cpuset_release_agent)
none on /dev/stune type cgroup (rw,nosuid,nodev,noexec,relatime,schedtune)
/dev/root on /apex/com.android.runtime@1 type ext4 (ro,seclabel,relatime)
/dev/root on /apex/com.android.runtime type ext4 (ro,seclabel,relatime)
/dev/root on /apex/com.android.tzdata@290000000 type ext4 (ro,seclabel,relatime)
/dev/root on /apex/com.android.tzdata type ext4 (ro,seclabel,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,seclabel,relatime)
none on /config type configfs (rw,nosuid,nodev,noexec,relatime)
bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime)
tracefs on /sys/kernel/debug/tracing type tracefs (rw,seclabel,relatime)
/dev/block/sda10 on /cache type ext4 (rw,seclabel,nosuid,nodev,noatime,async_discard,data=ordered)
/dev/block/sde5 on /vendor/firmware_mnt type vfat (ro,context=u:object_r:firmware_file:s0,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=437,iocharset=iso8859-1,shortname=lower,errors=remount-ro)
/dev/block/sde8 on /vendor/dsp type ext4 (ro,seclabel,nosuid,nodev,relatime,async_discard,data=ordered)
/dev/block/sda2 on /mnt/vendor/persist type ext4 (rw,seclabel,nosuid,nodev,noatime,async_discard,data=ordered)
/dev/block/sde6 on /vendor/bt_firmware type vfat (ro,context=u:object_r:bt_firmware_file:s0,relatime,uid=1002,gid=3002,fmask=0337,dmask=0227,codepage=437,iocharset=iso8859-1,shortname=lower,errors=remount-ro)
/dev/block/sdf7 on /mnt/vendor/opporeserve type ext4 (rw,seclabel,nosuid,nodev,noatime,async_discard,data=ordered)
tmpfs on /storage type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,size=3886564k,nr_inodes=971641,mode=755,gid=1000)
/dev/block/sda13 on /data type ext4 (rw,lazytime,seclabel,nosuid,nodev,noatime,async_discard,noauto_da_alloc,resgid=1065,errors=panic,data=ordered)
/dev/root on /apex/com.android.conscrypt@290000000 type ext4 (ro,seclabel,nodev,relatime)
/dev/root on /apex/com.android.conscrypt type ext4 (ro,seclabel,nodev,relatime)
/dev/root on /apex/com.android.media@290000000 type ext4 (ro,seclabel,nodev,relatime)
/dev/root on /apex/com.android.media type ext4 (ro,seclabel,nodev,relatime)
/dev/root on /apex/com.android.media.swcodec@290000000 type ext4 (ro,seclabel,nodev,relatime)
/dev/root on /apex/com.android.media.swcodec type ext4 (ro,seclabel,nodev,relatime)
/dev/root on /apex/com.android.resolv@290000000 type ext4 (ro,seclabel,nodev,relatime)
/dev/root on /apex/com.android.resolv type ext4 (ro,seclabel,nodev,relatime)
/sbin/.magisk/block/vendor on /sbin/.magisk/mirror/vendor type ext4 (ro,seclabel,relatime,async_discard)
/sbin/.magisk/block/data on /sbin/.magisk/mirror/data type ext4 (rw,lazytime,seclabel,relatime,async_discard,noauto_da_alloc,resgid=1065,errors=panic,data=ordered)
/sbin/.magisk/block/system_root on /sbin/.magisk/mirror/system_root type ext4 (ro,seclabel,relatime)
/sbin/.magisk/block/data on /sbin/.magisk/modules type ext4 (rw,lazytime,seclabel,relatime,async_discard,noauto_da_alloc,resgid=1065,errors=panic,data=ordered)
/sbin/.magisk/block/data on /system/bin/app_process32 type ext4 (rw,lazytime,seclabel,relatime,async_discard,noauto_da_alloc,resgid=1065,errors=panic,data=ordered)
/sbin/.magisk/block/data on /system/bin/app_process64 type ext4 (rw,lazytime,seclabel,relatime,async_discard,noauto_da_alloc,resgid=1065,errors=panic,data=ordered)
tmpfs on /system/etc/permissions type tmpfs (rw,seclabel,relatime,size=3886564k,nr_inodes=971641)

/sbin/.magisk/block/system_root

/sbin/.magisk/block/system_root

/sbin/.magisk/block/system_root类似的一堆

...

/sbin/.magisk/block/data on /system/xbin/busybox type ext4 (rw,lazytime,seclabel,relatime,async_discard,noauto_da_alloc,resgid=1065,errors=panic,data=ordered)
/sbin/.magisk/block/system_root on /system/xbin/xkit_10 type ext4 (ro,seclabel,relatime)
none on /dev/freezer type cgroup (rw,relatime,freezer)
/dev/block/loop2 on /data/vendor/euclid/product type ext4 (ro,seclabel,relatime,data=ordered)
overlay on /vendor/etc type overlay (ro,seclabel,relatime,lowerdir=/oppo_product/vendor_overlay/29/etc:/vendor/etc,override_creds=off)
/dev/block/sdf7 on /data/oppo/log/opporeserve/media/log/hang_oppo type ext4 (rw,seclabel,nosuid,nodev,noatime,async_discard,data=ordered)
/dev/block/sdf7 on /data/oppo/log/stamp type ext4 (rw,seclabel,nosuid,nodev,noatime,async_discard,data=ordered)
adb on /dev/usb-ffs/adb type functionfs (rw,relatime)
/data/media on /mnt/runtime/default/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,multiuser,mask=6,derive_gid,default_normal,reserved=200MB)
/data/media on /storage/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,multiuser,mask=6,derive_gid,default_normal,reserved=200MB)
/data/media on /mnt/runtime/read/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=23,derive_gid,default_normal,reserved=200MB)
/data/media on /mnt/runtime/write/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=7,derive_gid,default_normal,reserved=200MB)
/data/media on /mnt/runtime/full/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=7,derive_gid,default_normal,reserved=200MB)

mount的输出相比df -h要多很多,相比df -ah也要多一些

 

cat /proc/mounts

 

fdisk -l(busybox)

安卓里的fdisk -l(实际软连接/符号链接到我安的busybox上)必须要后跟设备路径,否则会什么都不输出

fdisk -l /dev/block/sda13

-l, --list

列出指定设备的分区表,然后退出。

如果没有给出设备,则使用/proc/partitions中提到的设备(如果这个文件存在)。设备总是按照命令行中指定的顺序列出,或者由内核在/proc/partitions中列出。

 

RMX1901CN:/ # fdisk -l /dev/block/sda
Note: sector size is 4096 (not 512)
Found valid GPT with protective MBR; using GPT

Disk /dev/block/sda: 241811456 sectors, 2496M
Logical sector size: 4096
Disk identifier (GUID): b827d0c7-c882-2761-fea0-87bcae41e22d
Partition table holds up to 32 entries
First usable sector is 6, last usable sector is 30226426

Number  Start (sector)    End (sector)  Size Name
     1               6               7  8192 ssd
     2               8            8199 32.0M persist
     3            8200            8455 1024K misc
     4            8456            8583  512K keystore
     5            8584            8711  512K frp
     6            8712            8967 1024K vm-kystore
     7            8968           11527 10.0M vm-data
     8           11528           44295  128M vm-system
     9           44296           52487 32.0M vm-linux
    10           52488          118023  256M cache
    11          118024         1390855 4972M system
    12         1390856         1456391  256M odm
    13         1456392        30226426  109G userdata

 

RMX1901CN:/ # fdisk -l /dev/block/sda13
Note: sector size is 4096 (not 512)
Disk /dev/block/sda13: 110 GB, 117842063360 bytes, 230160280 sectors
1790 cylinders, 255 heads, 63 sectors/track
Units: sectors of 1 * 4096 = 4096 bytes

Disk /dev/block/sda13 doesn't contain a valid partition table

 

 

cat /proc/partitions

要root权限

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
7 0 262144 loop0
7 8 65536 loop1
7 16 262144 loop2
254 0 2293760 zram0
8 0 120905728 sda
8 1 8 sda1
8 2 32768 sda2
8 3 1024 sda3
8 4 512 sda4
8 5 512 sda5
8 6 1024 sda6

现代 Linux 系统将/dev/sd*用于 scsi 和 sata 设备,也用于 sd 卡、USB 棒、(传统)ATA/IDE 设备和固态驱动器。

 

cat /proc/devices

major number对应于设备类型(或驱动程序),可以在/proc/devices中找到。在这种情况下3对应于ide和 8 到SD。主号码决定了该设备要使用的设备驱动程序。

minor number是该设备类型实例的唯一标识。devices.txt 内核树中的文件包含主编号和次编号的完整列表。

有2种设备,Character device和Block device,字符型设备和块设备,字符型设备可以按字符去读取,而块设备一次读取必须是一整块数据。

Character devices:
1 mem
256 msm_rng
4 /dev/vc/0
4 tty
5 /dev/tty
5 /dev/console
5 /dev/ptmx
7 vcs
10 misc
13 input
21 sg
29 fb
81 video4linux
86 ch
89 i2c
108 ppp
116 alsa
128 ptm
136 pts
153 spi
180 usb
189 usb_device
212 DVB
217 qcwlanstate
218 msm_usb_bridge
......
248 iio
249 ipa
250 media
251 rtc
252 dcc_sram
253 msm_sps
254 gpiochip

Block devices:
1 ramdisk
259 blkext
7 loop
8 sd
65 sd
66 sd
67 sd
68 sd
69 sd
70 sd
......
133 sd
134 sd
135 sd
179 mmc
253 device-mapper
254 zram

ls -l /dev/block/by-name

total 0
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 ALIGN_TO_128K_1 -> /dev/block/sdd1
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 ALIGN_TO_128K_2 -> /dev/block/sdf1
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 DRIVER -> /dev/block/sdf10
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 abl -> /dev/block/sde7
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 aop -> /dev/block/sde1
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 apdp -> /dev/block/sde24
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 bluetooth -> /dev/block/sde6
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 boot -> /dev/block/sde10
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 cache -> /dev/block/sda10
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 carrier -> /dev/block/sdf9
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 cdt -> /dev/block/sdd2
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 cmnlib -> /dev/block/sde11
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 cmnlib64 -> /dev/block/sde12
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 ddr -> /dev/block/sdd3
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 devcfg -> /dev/block/sde13
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 devinfo -> /dev/block/sde22
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 dip -> /dev/block/sde23
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 dpo -> /dev/block/sde27
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 dsp -> /dev/block/sde8
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 dtbo -> /dev/block/sde18
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 frp -> /dev/block/sda5
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 fsc -> /dev/block/sdf12
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 fsg -> /dev/block/sdf11
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 hyp -> /dev/block/sde3
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 hypbak -> /dev/block/sde4
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 keymaster -> /dev/block/sde9
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 keystore -> /dev/block/sda4
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 limits -> /dev/block/sde29
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 logdump -> /dev/block/sde34
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 logfs -> /dev/block/sde31
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 misc -> /dev/block/sda3
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 modem -> /dev/block/sde5
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 modemst1 -> /dev/block/sdf4
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 modemst2 -> /dev/block/sdf5
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 msadp -> /dev/block/sde25
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 odm -> /dev/block/sda12
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 oppo_sec -> /dev/block/sde20
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 oppodycnvbk -> /dev/block/sdf2
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 opporeserve1 -> /dev/block/sdf6
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 opporeserve2 -> /dev/block/sdf7
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 opporeserve3 -> /dev/block/sdf8
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 oppostanvbk -> /dev/block/sdf3
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 persist -> /dev/block/sda2
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 qupfw -> /dev/block/sde14
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 rawdump -> /dev/block/sde33
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 recovery -> /dev/block/sde17
lrwxrwxrwx 1 root root 14 1970-04-22 14:29 sda -> /dev/block/sda
lrwxrwxrwx 1 root root 14 1970-04-22 14:29 sdb -> /dev/block/sdb
lrwxrwxrwx 1 root root 14 1970-04-22 14:29 sdc -> /dev/block/sdc
lrwxrwxrwx 1 root root 14 1970-04-22 14:29 sdd -> /dev/block/sdd
lrwxrwxrwx 1 root root 14 1970-04-22 14:29 sde -> /dev/block/sde
lrwxrwxrwx 1 root root 14 1970-04-22 14:29 sdf -> /dev/block/sdf
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 sec -> /dev/block/sde21
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 splash -> /dev/block/sde28
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 spunvm -> /dev/block/sde26
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 ssd -> /dev/block/sda1
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 sti -> /dev/block/sde32
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 storsec -> /dev/block/sde19
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 system -> /dev/block/sda11
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 toolsfv -> /dev/block/sde30
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 tz -> /dev/block/sde2
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 userdata -> /dev/block/sda13
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 vbmeta -> /dev/block/sde16
lrwxrwxrwx 1 root root 16 1970-04-22 14:29 vendor -> /dev/block/sde15
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 vm-data -> /dev/block/sda7
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 vm-kystore -> /dev/block/sda6
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 vm-linux -> /dev/block/sda9
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 vm-system -> /dev/block/sda8
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 xbl -> /dev/block/sdb1
lrwxrwxrwx 1 root root 15 1970-04-22 14:29 xbl_config -> /dev/block/sdb2

 

`/dev/block/by-name` 是一个特殊的目录,通常出现在 Android 系统或其他 Linux 发行版中,用于提供对设备上的分区的符号链接。这些符号链接的名称通常对应设备的分区名称。

在 Android 设备中,分区通常用于存储不同的系统数据,如 `boot` 分区用于引导操作系统,`system` 分区用于存储操作系统的核心文件,`userdata` 分区用于用户数据等。这些分区通常由分区表进行管理,并使用分区名称来标识。

`/dev/block/by-name` 目录中的符号链接可以让开发人员和系统管理员更容易地引用设备上的特定分区,而不必记住分区名称或设备路径。例如,可以使用 `/dev/block/by-name/system` 符号链接来引用系统分区,而不必知道实际的设备路径或名称。

这种符号链接的使用提供了更灵活的方式来操作设备的分区,而不依赖于特定的设备路径或名称,这对于处理不同设备型号或 Android 版本的兼容性问题非常有帮助。但是,要小心使用这些符号链接,以避免不必要的分区操作,因为错误的操作可能导致数据丢失或设备不正常工作。

 

lsblk 安卓的shell toybox和busybox都没有,不能用

 

附:powershell输出的历史记录最大行数可以通过 属性-布局-高度 设置调大,防止mount输出太多导致前边的命令输出被覆盖了。。。

 

posted @ 2023-10-04 22:49  hrdom  阅读(2624)  评论(0编辑  收藏  举报