Zrootowałem urządzenie, przełączyłem je w tryb odzyskiwania i połączyłem z komputerem za pomocą powłoki adb .
Jak mogę wyświetlić listę urządzeń pamięci masowej i partycji?
Uwaga: fdisk
nie działa.
Zrootowałem urządzenie, przełączyłem je w tryb odzyskiwania i połączyłem z komputerem za pomocą powłoki adb .
Jak mogę wyświetlić listę urządzeń pamięci masowej i partycji?
Uwaga: fdisk
nie działa.
Odpowiedzi:
Wierzę, że chcesz: cat /proc/mtd
.
Również przydatne: mount
.
cat /proc/partitions
pokazuje również listę wszystkich partycji. Myślę, że mount
koreluje z cat /proc/mounts
. Ach, dobrze/proc
dev: size erasesize name
czy działam jako su, czy nie. android.stackexchange.com/q/53225/693
/proc/mtd
nie jest dostępny na wszystkich urządzeniach, a /proc/partitions
powinien być.
Zwykle używam kombinacji następujących 4 poleceń i koreluję je, ponieważ każde z tych poleceń dostarcza informacji, które mogą być potrzebne.
Podsumowując:
Użycie df
list alias ścieżki systemu plików i informacje o rozmiarze, jak pokazano poniżej (całkowity rozmiar, używany, wolny i rozmiar bloku)
Przykładowe dane wyjściowe:
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
(... przycięte z powodu miejsca)
Użycie cat /proc/mounts
pokazuje ścieżkę pliku partycji, alias, typ systemu plików, i-węzeł startowy, liczbę bloków, status odczytu / zapisu (i inne parametry poszczególnych partycji, których nie jestem całkowicie pewien)
cat /proc/mounts
mogą być nieco niechlujne, ale jeśli przeczytasz je wiersz po wierszu (wpis po wpisie), otrzymasz informacje Przykładowe dane wyjściowe:
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
(... przycięte z powodu miejsca)
Za pomocą cat /proc/partitions
otrzymasz rzeczywisty identyfikator nazwy partycji i liczbę bloków w partycji.
Przykładowe dane wyjściowe:
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
(... przycięte z powodu miejsca)
Za pomocą ls -al /dev/block/platform/msm_sdcc.1/by-name
otrzymujesz mapowanie między aliasem partycji a ścieżką rzeczywistego pliku partycji (otrzymujesz również właściciela, ich grupę użytkowników itp.)
Przykładowe dane wyjściowe:
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
(... przycięte z powodu miejsca)
/dev/block/platform/xxx/by-name
. Did have /proc/emmc
, który jest podobny, ale nie zawiera list partycji rozruchowych. Też nie mam cat /proc/mounts
, ale użyłem mount
zamiast tego.
Jeszcze bardziej przydatne informacje można uzyskać od parted
. Przykład, gdy urządzeniem blokowym jest /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
~ #
Możesz zobaczyć rozmiary i statystyki użytkowania wszystkich zamontowanych partycji, po prostu używając tego polecenia:
df
Uwaga: typowe df -h
tutaj nie działa i nie jest potrzebne, ponieważ dane wyjściowe są już w megabajtach. Polecenie działa w adb shell
emulatorze terminali systemu Android, ale nie w terminalu trybu odzyskiwania, ponieważ w tym momencie nic nie jest montowane.
Stary wątek, ale znalazł coś, o czym nikt inny nie wspomniał ... na wypadek, gdyby ktoś uznał to za przydatne.
ls -la /dev/block/bootdevice/by-name
Katalog zawiera nazwane dowiązania symboliczne do wszystkich stron.
Aby wyświetlić listę partycji mmcblk0:
cat / 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
fdisk -l /dev/block/mmcblk0