Androidの内部パーティションテーブルを表示するにはどうすればよいですか?


28

デバイスをルート化し、リカバリモードにし、adb shellによってPCにリンクしました。

ストレージデバイスとパーティションのリストを表示するにはどうすればよいですか?

注: fdisk機能しません。


2
fdiskは好きですが、それに合格した場合、デバイスを動作しますfdisk -l /dev/block/mmcblk0
endolith

回答:


11

私はあなたがしたいと考えています:cat /proc/mtd

また便利です:mount


5
cat /proc/partitionsすべてのパーティションのリストも表示されます。とmount相関してcat /proc/mountsいると思います。ああ、良い「オール/proc
Ehteshチョードリー

私が得るのはdev: size erasesize name、suとして実行するかどうかだけです。 android.stackexchange.com/q/53225/693
エンドリス

6
/proc/mtdすべてのデバイスで利用できるわけではありませんが、利用可能です/proc/partitions
イジー

26

私は通常、次の4つのコマンドを組み合わせて使用し、それらを関連付けます。これらの各コマンドは、必要な情報の一部を提供するからです。

要約:

  1. を使用するdfと、以下に示すようにファイルシステムパスエイリアスとサイズ情報が一覧表示されます(合計サイズ、使用済み、空き、ブロックサイズ)。

    • 出力例:

      root@ks01lte:/sdcard # df
      df
      Filesystem                               Size     Used     Free   Blksize
      /dev                                   910.0M    92.0K   909.9M      4.0K
      /firmware                               64.0M     8.7M    55.2M     16.0K
      /firmware-modem                         64.0M    49.2M    14.8M     16.0K
      /system                                  2.2G     2.2G    62.7M      4.0K
      /data                                   11.9G     3.0G     8.9G      4.0K
      /cache                                  31.5M     4.1M    27.4M      4.0K
      /persist                                 7.9M     4.0M     3.8M      4.0K
      /efs                                    13.8M     4.4M     9.3M      4.0K
      /storage/emulated                      910.0M     0.0K   910.0M      4.0K
      /storage/emulated/0                     11.9G     3.0G     8.9G      4.0K
      /storage/emulated/0/Android/obb         11.9G     3.0G     8.9G      4.0K
      /storage/emulated/legacy                11.9G     3.0G     8.9G      4.0K
      /storage/emulated/legacy/Android/obb    11.9G     3.0G     8.9G      4.0K
      /mnt/media_rw/extSdCard                 29.7G   251.8M    29.5G     32.0K
      /storage/extSdCard                      29.7G   251.8M    29.5G     32.0K
      

      (...スペース上の理由でカット)

  2. を使用するとcat /proc/mounts、パーティションファイルパス、エイリアス、ファイルシステムタイプ、startnig iノード、ブロック数、読み取り/書き込みステータス(および、完全にはわからない個々のパーティションの他のパラメーター)が表示されます。

    • NB:の出力はcat /proc/mounts少し複雑になる可能性がありますが、1行ずつ(エントリごとに)注意深く読むと、情報が得られます。
    • 出力例:

      root@ks01lte:/sdcard # cat /proc/mounts
      cat /proc/mounts
      rootfs / rootfs ro,relatime 0 0
      tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,size=931840k,nr_inodes=124673,mode=755 0 0
      devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
      none /dev/cpuctl cgroup rw,relatime,cpu 0 0
      proc /proc proc rw,relatime 0 0
      sysfs /sys sysfs rw,seclabel,relatime 0 0
      selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
      debugfs /sys/kernel/debug debugfs rw,relatime 0 0
      none /sys/fs/cgroup tmpfs rw,seclabel,relatime,size=931840k,nr_inodes=124673,mode=750,gid=1000 0 0
      /dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
      /dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,discard,journal_checksum,journal_async_commit,noauto_da_alloc,data=ordered 0 0
      /dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,discard,journal_checksum,journal_async_commit,noauto_da_alloc,errors=panic,data=ordered 0 0
      /dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 rw,seclabel,nosuid,nodev,noatime,discard,journal_checksum,journal_async_commit,noauto_da_alloc,data=ordered 0 0
      /dev/block/platform/msm_sdcc.1/by-name/efs /efs ext4 rw,seclabel,nosuid,nodev,noatime,discard,journal_checksum,journal_async_commit,noauto_da_alloc,data=ordered 0 0
      

(...スペース上の理由でカット)

  1. を使用cat /proc/partitionsすると、実際のパーティション名識別子とパーティション内のブロック数が取得されます。

    • 出力例:

      root@ks01lte:/sdcard # cat /proc/partitions
      cat /proc/partitions
      major minor  #blocks  name
       253        0    1048576 vnswap0
       179        0   15388672 mmcblk0
       179        1      15360 mmcblk0p1
       179        2      58816 mmcblk0p2
       179        3        512 mmcblk0p3
       179        4         32 mmcblk0p4
       179        5         32 mmcblk0p5
       179        6       2048 mmcblk0p6
       179        7        512 mmcblk0p7
       179        8        512 mmcblk0p8
       179        9      10240 mmcblk0p9
       179       10      10240 mmcblk0p10
       179       11      14336 mmcblk0p11
       179       12       3072 mmcblk0p12
       179       13       3072 mmcblk0p13
       179       14      20480 mmcblk0p14
       179       15      20480 mmcblk0p15
       179       16      10240 mmcblk0p16
       179       17       7159 mmcblk0p17
       179       18       3072 mmcblk0p18 
      

      (...スペース上の理由でカット)

  2. を使用して ls -al /dev/block/platform/msm_sdcc.1/by-nameて、パーティションエイリアスと実際のパーティションファイルのパス間のマッピングを取得します(所有者、ユーザーグループなども取得します)

    • 出力例:

      root@ks01lte:/sdcard # ls -al /dev/block/platform/msm_sdcc.1/by-name
      ls -al /dev/block/platform/msm_sdcc.1/by-name
      lrwxrwxrwx root     root              2014-01-20 11:29 aboot -> /dev/block/mmcblk0p6
      lrwxrwxrwx root     root              2014-01-20 11:29 apnhlos -> /dev/block/mmcblk0p1
      lrwxrwxrwx root     root              2014-01-20 11:29 backup -> /dev/block/mmcblk0p17
      lrwxrwxrwx root     root              2014-01-20 11:29 boot -> /dev/block/mmcblk0p14
      lrwxrwxrwx root     root              2014-01-20 11:29 hidden -> /dev/block/mmcblk0p25
      lrwxrwxrwx root     root              2014-01-20 11:29 modem -> /dev/block/mmcblk0p2
      lrwxrwxrwx root     root              2014-01-20 11:29 persdata -> /dev/block/mmcblk0p22
      lrwxrwxrwx root     root              2014-01-20 11:29 persist -> /dev/block/mmcblk0p21
      lrwxrwxrwx root     root              2014-01-20 11:29 recovery -> /dev/block/mmcblk0p15
      lrwxrwxrwx root     root              2014-01-20 11:29 system -> /dev/block/mmcblk0p23
      lrwxrwxrwx root     root              2014-01-20 11:29 tz -> /dev/block/mmcblk0p8
      lrwxrwxrwx root     root              2014-01-20 11:29 userdata -> /dev/block/mmcblk0p26
      

      (...スペース上の理由でカット)


1
持っていない/dev/block/platform/xxx/by-name。持っていました/proc/emmc、これは似ていますが、ブートパーティションをリストしません。また、はありませんがcat /proc/mountsmount代わりに使用されます。
ジグガンジャー

6

さらに有用な情報はから取得できますparted。ブロックデバイスが/dev/block/mmcblk0次の場合の例:

~ # parted /dev/block/mmcblk0 print
Model: MMC SEM04G (sd/mmc)
Disk /dev/block/mmcblk0: 3959MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name       Flags
10      524kB   1573kB  1049kB               PIT
 6      1573kB  3146kB  1573kB               CSPSA FS
 7      4194kB  14.7MB  10.5MB  ext4         EFS
 2      14.7MB  31.5MB  16.8MB  ext4         Modem FS
14      32.5MB  34.6MB  2097kB               SBL
16      34.6MB  36.7MB  2097kB               SBL_2
 1      36.7MB  53.5MB  16.8MB               PARAM
12      53.5MB  55.6MB  2097kB               IPL Modem
13      55.6MB  72.4MB  16.8MB               Modem
15      72.4MB  89.1MB  16.8MB               Kernel
17      89.1MB  106MB   16.8MB               Kernel2
 3      106MB   748MB   642MB   ext4         SYSTEM
 5      748MB   2056MB  1309MB  ext4         DATAFS
 4      2056MB  2377MB  321MB   ext4         CACHEFS
 9      2377MB  2713MB  336MB   ext4         HIDDEN
11      2713MB  2765MB  52.4MB               Fota
 8      2765MB  3949MB  1184MB               UMS

~ #

4
デバイスにpartedがインストールされていないため、おそらくデフォルトでは使用できません。
スティーブクローン

2
どのようにpartedをインストールしますか?
エンドリス

4

ドロイドのbusybox経由でfdiskを使用できます。したがって、romにbusyboxバイナリがあり、それがパスにあると仮定すると、コマンドは次のようになります。

busybox fdisk [the various fdisk options...]

busybox fdisk -l /dev/block/sda

3

次のコマンドを使用するだけで、マウントされているすべてのパーティションのサイズと使用状況の統計を表示できます。

df

df -h出力は既にメガバイト単位であるため、ここでは典型的なものは機能せず、必要ありません。コマンドadb shellはAndroidターミナルエミュレーター内で機能しますが、その時点では何もマウントされていないため、リカバリモードターミナルでは機能しません。


3

古いスレッドですが、他の誰も言及していない何かを見つけました...誰かがそれを便利だと思った場合に備えて。

ls -la /dev/block/bootdevice/by-name ディレクトリには、すべてのパーティトンへの名前付きシンボリックリンクが含まれています。


0

内部ストレージの場合のみ、DiskInfoをインストールできます。ただし、SDカードのファイルシステムは表示されません。


0

mmcblk0パーティションをリストする場合:

猫/ proc / dumchar_info

Part_Name   Size    StartAddr   Type    MapTo
preloader    0x0000000000600000   0x0000000000000000   2   /dev/misc-sd
mbr          0x0000000000080000   0x0000000000000000   2   /dev/block/mmcblk0
ebr1         0x0000000000080000   0x0000000000080000   2   /dev/block/mmcblk0p1
pro_info     0x0000000000300000   0x0000000000100000   2   /dev/block/mmcblk0
nvram        0x0000000000500000   0x0000000000400000   2   /dev/block/mmcblk0
protect_f    0x0000000000a00000   0x0000000000900000   2   /dev/block/mmcblk0p2
protect_s    0x0000000000a00000   0x0000000001300000   2   /dev/block/mmcblk0p3
seccfg       0x0000000000020000   0x0000000001d00000   2   /dev/block/mmcblk0
uboot        0x0000000000060000   0x0000000001d20000   2   /dev/block/mmcblk0
bootimg      0x0000000000600000   0x0000000001d80000   2   /dev/block/mmcblk0
recovery     0x0000000000600000   0x0000000002380000   2   /dev/block/mmcblk0
sec_ro       0x0000000000600000   0x0000000002980000   2   /dev/block/mmcblk0p4
misc         0x0000000000080000   0x0000000002f80000   2   /dev/block/mmcblk0
logo         0x0000000000300000   0x0000000003000000   2   /dev/block/mmcblk0
expdb        0x0000000000080000   0x0000000003300000   2   /dev/block/mmcblk0
android      0x0000000000a00000   0x0000000003380000   2   /dev/block/mmcblk0p5
cache        0x000000002bc00000   0x0000000003d80000   2   /dev/block/mmcblk0p6
usrdata      0x00000000b6ca0000   0x000000002f980000   2   /dev/block/mmcblk0p7
bmtpool      0x0000000000000000   0x0000000037780000   2   /dev/block/mmcblk0
Part_Name:Partition name you should open;
Size:size of partition
StartAddr:Start Address of partition;
Type:Type of partition(MTD=1,EMMC=2)
MapTo:actual device you operate
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.