Android (Samsung) partitions list

Search This thread

hg42

Senior Member
Feb 1, 2011
648
551
123
I think this thread is obsolete now, please go to
[DEV][REF] El Grande Partition Table Reference
instead, which contains more facts


Hi,

I want to create a list of Android partitions, to collect information for different purposes.
My current cause of investigation is about repartitioning emmc bricked Samsung phones, but the guide could collect all kinds of information (in short form, eventually with links to deeper investigations).

I want to format this as a living post, with new information added where appropriate (I assume the wiki would fit better, but I don't see a section to put this, also I don't know if fitting to Samsung only or Android in general until enough information is collected).


So let's start:


So let's visit partitions one by one:

GANG
* has zero size in PIT, seems to be hidden in the following unused area
* no real partition, but included in PITs

BOOT
* has zero size in PIT, seems to be hidden in the following unused area

EFS
* mounted on /efs
* contains many personalized information
* IMEI
* bluetooth MAC etc.
* restoration only possible with JTAG
* should be backuped!!!

SBL1, SBL2
* BL = boot loader
* S = Secondary?
* why do we have SBL1 *and* SBL2?

PARAM
* currently I don't know anything about this

KERNEL
* contains kernel (obviously)
* also contains recovery on some/many Samsung Galaxy phones (e.g. N7000)
* read only

RECOVERY
* seems to be unused on Samsung Galaxy N7000, KERNEL comes with recovery integrated
* read only

CACHE
* mounted on /cache
* temporary data
* can be cleared without loosing any important data

MODEM
* modem software for cell phone
* can be flashed from stock file
* read only?

FACTORYFS, system
* mounted on /system
* main OS code
* system apps
* read only

DATAFS, data
* mounted on /data
* user apps
* read/write

UMS, userdata
* mounted on /sdcard, sometimes /emmc
* sometimes called internal sd

HIDDEN, PRELOAD
* mounted on /preload
* purpose?

FOTA
* F = Factory?
* OTA = Over The Air
* may be used for Updates by stock ROM


Here are also some general thoughts about repartitioning these partitions to be mixed into the list later if it fits (just as a reminder):
* if you have a brick in a partition you cannot create a backup to restore afterwards
* partitions which have stock contents (not personalized) will be easy
* EFS cannot be restored without having a backup,
it contains nearly all really personalized information, with the most important data being the IMEI, which is unique to your phone. You find it printed on a sticker on your phone, but currently no one seems to be able to patch it into a generic copy of the EFS.
* some partitions will be needed to boot into recovery and/or download mode
I would assume BOOT, SBL1 and/or SBL2 are involved.
Some may be needed to boot into both recovery *and* download mode.
Some may be needed only for one of them.
If a PIT would move these, you cannot enter download and/or recovery again, thus your phone is nearly dead and only recoverable by JTAG.
* what about PARAM?
 
Last edited:

k02a

Member
Jul 18, 2012
44
21
0
Norrköping
First of all, great initiative!

I have a SE Xperia Arc and the file structure differs a lot from your Samsung device.
Here is a list of the partitions, their current mount point(s) and filetype. I have put some useful references to the list. This will probably provide more accurate descriptions, rather than giving a brief explanation on each file system.

rootfs / rootfs [1]

tmpfs /dev tmpfs [2]
tmpfs /mnt/asec tmpfs
tmpfs /mnt/obb tmpfs
tmpfs /mnt/sdcard/.android_secure tmpfs

devpts /dev/pts devpts [3]
proc /proc proc [4]
sysfs /sys sysfs [5]

/dev/block/mtdblock0 /system yaffs2 [6][8]
/dev/block/mtdblock1 /cache yaffs2
/dev/block/mtdblock2 /system/vendor yaffs2
/dev/block/mtdblock3 /data yaffs2

/dev/block/vold/179:1 /mnt/sdcard vfat [7][9]
/dev/block/vold/179:1 /mnt/secure/asec vfat


References:
[1] rootfs
[2] tmpfs
[3] devpts
[4] proc
[5] sysfs
[6] yaffs2
[7] vfat Virtual FAT
[8] mtd
[9] vold

I also found two more links that could be useful in this thread.
Atrix HD Partition Research, How to use QUALCOMM eMMC MBR/EBR Partitioning plugin



FOTA
* F = Factory?
* OTA = Over The Air
* may be used for Updates by stock ROM

F = firmware, http://en.wikipedia.org/wiki/FOTA_%28technology%29
 

k02a

Member
Jul 18, 2012
44
21
0
Norrköping
Unfortunately, the parted partition command is not included among the Xperia Arc's stock binaries, nor in BusyBox 1.20.2 (but hopefully in the future).
Do you have a pre-compiled binary to share?

Here is what I can contribute to your collection for now:

Code:
[email protected]:/ # busybox fdisk -l
Linux localhost 2.6.32.9-perf #1 PREEMPT Wed Jul 4 12:32:24 2012 armv7l GNU/Linux
[email protected]:/ # busybox fdisk -l
Note: sector size is 4096 (not 512)

Disk [URL="http://shmilyxbq-compcache.googlecode.com/hg/README"]/dev/zram0[/URL]: 62 MB, 62914560 bytes
255 heads, 63 sectors/track, 0 cylinders
Units = cylinders of 16065 * 4096 = 65802240 bytes

Disk /dev/zram0 doesn't contain a valid partition table
 

hg42

Senior Member
Feb 1, 2011
648
551
123
Unfortunately, the parted partition command is not included among the Xperia Arc's stock binaries, nor in BusyBox 1.20.2 (but hopefully in the future).
Do you have a pre-compiled binary to share?

you can try the attachment to this post

but I'm not sure if an exynos processor (Samsung Galaxy Note N7000) has the same executable format than your phone, at least both have armv7l.
 

k02a

Member
Jul 18, 2012
44
21
0
Norrköping
but I'm not sure if an exynos processor (Samsung Galaxy Note N7000) has the same executable format than your phone, at least both have armv7l.

The parted binary worked fine, but the file system on the LT15i needs to be explored some day.

Code:
[email protected]:/ # parted
parted
GNU Parted 1.8.8.1.179-aef3
Using /dev/zram0
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
print
print
Error: /dev/zram0: unrecognised disk label
(parted)
 

k02a

Member
Jul 18, 2012
44
21
0
Norrköping
Sure.
Code:
[email protected]:/ $ ls -la /dev/block
ls -la /dev/block
brw------- root     root     254,   0 1980-01-06 02:02 dm-0
brw------- root     root     254,   8 1980-01-06 02:02 dm-8
brw------- root     root       7,   0 1980-01-06 02:01 loop0
brw------- root     root       7,   1 1980-01-06 02:01 loop1
brw-rw---- root     root       7,  10 1980-01-06 02:02 loop10
brw-rw---- root     root       7,  11 1980-01-06 02:02 loop11
brw-rw---- root     root       7,  12 1980-01-06 02:02 loop12
brw------- root     root       7,   2 1980-01-06 02:01 loop2
brw------- root     root       7,   3 1980-01-06 02:01 loop3
brw------- root     root       7,   4 1980-01-06 02:01 loop4
brw------- root     root       7,   5 1980-01-06 02:01 loop5
brw------- root     root       7,   6 1980-01-06 02:01 loop6
brw------- root     root       7,   7 1980-01-06 02:01 loop7
brw-rw---- root     root       7,   8 1980-01-06 02:02 loop8
brw-rw---- root     root       7,   9 1980-01-06 02:02 loop9
brw------- root     root     179,   0 1980-01-06 02:01 mmcblk0
brw------- root     root     179,   1 1980-01-06 02:01 mmcblk0p1
brw------- root     root      31,   0 1980-01-06 02:01 mtdblock0
brw------- root     root      31,   1 1980-01-06 02:01 mtdblock1
brw------- root     root      31,   2 1980-01-06 02:01 mtdblock2
brw------- root     root      31,   3 1980-01-06 02:01 mtdblock3
drwxr-xr-x root     root              1980-01-06 02:01 platform
brw------- root     root       1,   0 1980-01-06 02:01 ram0
brw------- root     root       1,   1 1980-01-06 02:01 ram1
brw------- root     root       1,   2 1980-01-06 02:01 ram2
brw------- root     root       1,   3 1980-01-06 02:01 ram3
brw------- root     root       1,   4 1980-01-06 02:01 ram4
brw------- root     root       1,   5 1980-01-06 02:01 ram5
brw------- root     root       1,   6 1980-01-06 02:01 ram6
brw------- root     root       1,   7 1980-01-06 02:01 ram7
drwxr-xr-x root     root              1980-01-06 02:01 vold
brw------- root     root     253,   0 1980-01-06 02:01 zram0

The listing you were asking for is not as interesting as the following:
Code:
[email protected]:/ # ls -la /sys/devices/virtual/block/zram0
ls -la /sys/devices/virtual/block/zram0
-r--r--r-- root     root         4096 2012-09-06 00:18 alignment_offset
lrwxrwxrwx root     root              2012-09-06 00:18 bdi -> ../../bdi/253:0
-r--r--r-- root     root         4096 2012-09-06 00:18 capability
-r--r--r-- root     root         4096 2012-09-06 00:18 compr_data_size
-r--r--r-- root     root         4096 2012-09-06 00:18 dev
-rw-r--r-- root     root         4096 1980-01-06 02:01 disksize
-r--r--r-- root     root         4096 2012-09-06 00:18 ext_range
drwxr-xr-x root     root              2012-09-06 00:18 holders
-r--r--r-- root     root         4096 2012-09-06 00:18 inflight
-r--r--r-- root     root         4096 2012-09-06 00:18 initstate
-r--r--r-- root     root         4096 2012-09-06 00:18 invalid_io
-r--r--r-- root     root         4096 2012-09-06 00:18 mem_used_total
-r--r--r-- root     root         4096 2012-09-06 00:18 notify_free
-r--r--r-- root     root         4096 2012-09-06 00:18 num_reads
-r--r--r-- root     root         4096 2012-09-06 00:18 num_writes
-r--r--r-- root     root         4096 2012-09-06 00:18 orig_data_size
drwxr-xr-x root     root              2012-09-06 00:18 power
drwxr-xr-x root     root              2012-09-06 00:18 queue
-r--r--r-- root     root         4096 2012-09-06 00:18 range
-r--r--r-- root     root         4096 2012-09-06 00:18 removable
--w------- root     root         4096 2012-09-06 00:18 reset
-r--r--r-- root     root         4096 2012-09-06 00:18 ro
-r--r--r-- root     root         4096 2012-09-06 00:18 size
drwxr-xr-x root     root              2012-09-06 00:18 slaves
-r--r--r-- root     root         4096 2012-09-06 00:18 stat
lrwxrwxrwx root     root              2012-09-06 00:18 subsystem -> ../../../../
class/block
-rw-r--r-- root     root         4096 2012-09-06 00:18 uevent
-r--r--r-- root     root         4096 2012-09-06 00:18 zero_pages

Time to get some sleep.
 

hg42

Senior Member
Feb 1, 2011
648
551
123
Sure.
Code:
[email protected]:/ $ ls -la /dev/block
ls -la /dev/block
...
brw------- root     root     179,   0 1980-01-06 02:01 mmcblk0
brw------- root     root     179,   1 1980-01-06 02:01 mmcblk0p1
brw------- root     root      31,   0 1980-01-06 02:01 mtdblock0
brw------- root     root      31,   1 1980-01-06 02:01 mtdblock1
brw------- root     root      31,   2 1980-01-06 02:01 mtdblock2
brw------- root     root      31,   3 1980-01-06 02:01 mtdblock3
...

The listing you were asking for is not as interesting as the following:
Code:
[email protected]:/ # ls -la /sys/devices/virtual/block/zram0
ls -la /sys/devices/virtual/block/zram0
...
[/QUOTE]

why? Do you mean mtdblock0-3 are really located on zram0?
Or what else?
mtdblock0-3 don't seem to be partitions of a block device, like mmcblk0p1 is a partition on mmcblk0
 

k02a

Member
Jul 18, 2012
44
21
0
Norrköping
why? Do you mean mtdblock0-3 are really located on zram0?
Or what else?
mtdblock0-3 don't seem to be partitions of a block device, like mmcblk0p1 is a partition on mmcblk0

Sorry for my ambiguousness...

After having a bad nights' sleep, I made some re-thinking.
I dd'ed the /dev/zram0 (62 914 560 bytes). This value also corresponds to the content found in /sys/block/zram0/disksize and I find it unlikely that the OS keeps the entire amount of mtdblocks within this memory constraint, even if they are compressed. I have not tried to mount the zram-image on a Linux system, so I cannot tell anything about its content. My belief is that this image carries some RAM contents and perhaps some cache information.

Did you find anything similar in your Samsung device?

The mmcblk:s seem to represent the MicroSD-card device and I assume the mmcblk0p1 is the (only) partition.
 

hg42

Senior Member
Feb 1, 2011
648
551
123
Sorry for my ambiguousness...

After having a bad nights' sleep, I made some re-thinking.
I dd'ed the /dev/zram0 (62 914 560 bytes). This value also corresponds to the content found in /sys/block/zram0/disksize and I find it unlikely that the OS keeps the entire amount of mtdblocks within this memory constraint, even if they are compressed. I have not tried to mount the zram-image on a Linux system, so I cannot tell anything about its content. My belief is that this image carries some RAM contents and perhaps some cache information.

Did you find anything similar in your Samsung device?

The mmcblk:s seem to represent the MicroSD-card device and I assume the mmcblk0p1 is the (only) partition.

we have these block devices:
Code:
[email protected]:/ $ ls -lF /dev/block/
brw-------    1 root     root        7,   0 Sep  6 08:28 loop0
brw-------    1 root     root        7,   1 Sep  6 08:28 loop1
brw-------    1 root     root        7,   2 Sep  6 08:28 loop2
brw-------    1 root     root        7,   3 Sep  6 08:28 loop3
brw-------    1 root     root        7,   4 Sep  6 08:28 loop4
brw-------    1 root     root        7,   5 Sep  6 08:28 loop5
brw-------    1 root     root        7,   6 Sep  6 08:28 loop6
brw-------    1 root     root        7,   7 Sep  6 08:28 loop7
brw-------    1 root     root      179,   0 Sep  6 08:28 mmcblk0
brw-------    1 root     root      179,   1 Sep  6 08:28 mmcblk0p1
brw-------    1 root     root      259,   2 Sep  6 08:28 mmcblk0p10
brw-------    1 root     root      259,   3 Sep  6 08:28 mmcblk0p11
brw-------    1 root     root      259,   4 Sep  6 08:28 mmcblk0p12
brw-------    1 root     root      179,   2 Sep  6 08:28 mmcblk0p2
brw-------    1 root     root      179,   3 Sep  6 08:28 mmcblk0p3
brw-------    1 root     root      179,   4 Sep  6 08:28 mmcblk0p4
brw-------    1 root     root      179,   5 Sep  6 08:28 mmcblk0p5
brw-------    1 root     root      179,   6 Sep  6 08:28 mmcblk0p6
brw-------    1 root     root      179,   7 Sep  6 08:28 mmcblk0p7
brw-rw----    1 system   radio     259,   0 Sep  6 08:28 mmcblk0p8
brw-------    1 root     root      259,   1 Sep  6 08:28 mmcblk0p9
brw-------    1 root     root      179,   8 Sep  6 08:28 mmcblk1
brw-------    1 root     root      179,   9 Sep  6 08:28 mmcblk1p1
drwxr-xr-x    4 root     root             0 Sep  6 08:28 platform/
brw-------    1 root     root        1,   0 Sep  6 08:28 ram0
brw-------    1 root     root        1,   1 Sep  6 08:28 ram1
brw-------    1 root     root        1,  10 Sep  6 08:28 ram10
brw-------    1 root     root        1,  11 Sep  6 08:28 ram11
brw-------    1 root     root        1,  12 Sep  6 08:28 ram12
brw-------    1 root     root        1,  13 Sep  6 08:28 ram13
brw-------    1 root     root        1,  14 Sep  6 08:28 ram14
brw-------    1 root     root        1,  15 Sep  6 08:28 ram15
brw-------    1 root     root        1,   2 Sep  6 08:28 ram2
brw-------    1 root     root        1,   3 Sep  6 08:28 ram3
brw-------    1 root     root        1,   4 Sep  6 08:28 ram4
brw-------    1 root     root        1,   5 Sep  6 08:28 ram5
brw-------    1 root     root        1,   6 Sep  6 08:28 ram6
brw-------    1 root     root        1,   7 Sep  6 08:28 ram7
brw-------    1 root     root        1,   8 Sep  6 08:28 ram8
brw-------    1 root     root        1,   9 Sep  6 08:28 ram9
drwxr-xr-x    2 root     root             0 Sep  6 08:28 vold/

The ram* may be what is zram in your device.
The 'z' may indeed mean compression.

There are several tmpfs in our device (e.g. /tmp and /dev, perhaps they use these ram disks).
Also the root file system where everything is mounted runs in ram.
 
Last edited:

k02a

Member
Jul 18, 2012
44
21
0
Norrköping
The zram0 seems to act like some kind of swap RAM and was obviously added to the latest SE 2011 firmware version [1].

My guess is that Sony Ericsson decided to pick the compressed alternative, due to the smaller flash memory in their Xperia 2011 devices. This solution probably costs some clock cycles, but I assume it gains in overall internal storage capacity.

I found an interesting thread where sirkay showed how to initiate/alter the zram size.

[1] questions/problems with 4.1.B.0.587 firmware
 

kuisma

Senior Member
Jun 30, 2009
361
214
0
Sweden
whiteboard.ping.se
You guys are confusing. :)

The Xperia NAND disk device is translated to an MTD block device in the Linux world. The partition boundaries are hardcoded in the bootloader passed to the kernel via the ATAGs parameters. You can see those partitions via /proc/mtd

Code:
# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 19000000 00040000 "system"
mtd1: 00600000 00040000 "appslog"
mtd2: 06580000 00040000 "cache"
mtd3: 1a400000 00040000 "userdata"

Still those are only the partitions the bootlooader chooses to expose to the kernel. In reality, there are more, unknown to the kernel.
 
Last edited:

hg42

Senior Member
Feb 1, 2011
648
551
123
You guys are confusing. :)

The Xperia NAND disk device is translated to an MTD block device in the Linux world. The partition boundaries are hardcoded in the bootloader passed to the kernel via the ATAGs parameters. You can see those partitions via /proc/mtd

Code:
# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 19000000 00040000 "system"
mtd1: 00600000 00040000 "appslog"
mtd2: 06580000 00040000 "cache"
mtd3: 1a400000 00040000 "userdata"

Still those are only the partitions the bootlooader chooses to expose to the kernel. In reality, there are more, unknown to the kernel.

Thanks for clearing up, this fits my conclusions.
Never saw such fixed devices before.
 

k02a

Member
Jul 18, 2012
44
21
0
Norrköping
You guys are confusing. :)

The Xperia NAND disk device is translated to an MTD block device in the Linux world. The partition boundaries are hardcoded in the bootloader passed to the kernel via the ATAGs parameters. You can see those partitions via /proc/mtd

Code:
# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 19000000 00040000 "system"
mtd1: 00600000 00040000 "appslog"
mtd2: 06580000 00040000 "cache"
mtd3: 1a400000 00040000 "userdata"

Still those are only the partitions the bootlooader chooses to expose to the kernel. In reality, there are more, unknown to the kernel.

Thanks for this. :good:

I am still curious about the possibility to gain boot or root partition access in Xperia?
Many other devices come with this feature, e.g. HTC Incredible S, HTC Vision, Acer Liquid Metal and on the widely spread article HOWTO: Unpack, Edit, and Re-Pack Boot Images).

Oh, by the way...
I found a collection with recovery images on OnlineNandroid.
 

kuisma

Senior Member
Jun 30, 2009
361
214
0
Sweden
whiteboard.ping.se
Thanks for this. :good:

I am still curious about the possibility to gain boot or root partition access in Xperia?
Many other devices come with this feature, e.g. HTC Incredible S, HTC Vision, Acer Liquid Metal and on the widely spread article HOWTO: Unpack, Edit, and Re-Pack Boot Images).

In Xperia, the boot partition is not visible to the Linux kernel, so you can't simply dd it to an image file. The easiest way is running Sony Update Service reflashing your phone with the current firmware, and then copy the temporary files it downloaded, recreating the FTF file using Flashtool. Unzip the FTF and you've got the boot.img. Now split it, do whatever you want to change and flash it using fastboot. There's a YouTube video showing this in detail. Search for it. Or download the firmware FTF directly from a trusted source.

I looked in fota0.sin and found a few more partition names on the Xperia (Active):

Code:
amss
amss_fs
fota0
fota1
dsp1
boot
system
userdata
cache
image_backup
amss_log
vendor
ramdump
 
  • Like
Reactions: k02a

Hammerfest

Senior Member
Apr 3, 2008
1,659
279
83
San Antonio, TX
I know I wont find the help I need to do what I want here, but ill provide the stuff from my Galaxy Note tomorrow (partition layout/vold)...


My Galaxy Note is nice, but 2GB is a joke for apps, and damnit I want my sdcard to actually be mounted as /sdcard! (PITA for apps that utilize /sdcard for game data and backups, not to mention having a 32GB or 64GB makes the joke 10GB internal... a JOKE!) :D
 

basha.ram

Member
Jul 30, 2010
47
6
0
we have these block devices:
Code:
[email protected]:/ $ ls -lF /dev/block/
brw-------    1 root     root        7,   0 Sep  6 08:28 loop0
brw-------    1 root     root        7,   1 Sep  6 08:28 loop1
brw-------    1 root     root        7,   2 Sep  6 08:28 loop2
brw-------    1 root     root        7,   3 Sep  6 08:28 loop3
brw-------    1 root     root        7,   4 Sep  6 08:28 loop4
brw-------    1 root     root        7,   5 Sep  6 08:28 loop5
brw-------    1 root     root        7,   6 Sep  6 08:28 loop6
brw-------    1 root     root        7,   7 Sep  6 08:28 loop7
brw-------    1 root     root      179,   0 Sep  6 08:28 mmcblk0
brw-------    1 root     root      179,   1 Sep  6 08:28 mmcblk0p1
brw-------    1 root     root      259,   2 Sep  6 08:28 mmcblk0p10
brw-------    1 root     root      259,   3 Sep  6 08:28 mmcblk0p11
brw-------    1 root     root      259,   4 Sep  6 08:28 mmcblk0p12
brw-------    1 root     root      179,   2 Sep  6 08:28 mmcblk0p2
brw-------    1 root     root      179,   3 Sep  6 08:28 mmcblk0p3
brw-------    1 root     root      179,   4 Sep  6 08:28 mmcblk0p4
brw-------    1 root     root      179,   5 Sep  6 08:28 mmcblk0p5
brw-------    1 root     root      179,   6 Sep  6 08:28 mmcblk0p6
brw-------    1 root     root      179,   7 Sep  6 08:28 mmcblk0p7
brw-rw----    1 system   radio     259,   0 Sep  6 08:28 mmcblk0p8
brw-------    1 root     root      259,   1 Sep  6 08:28 mmcblk0p9
brw-------    1 root     root      179,   8 Sep  6 08:28 mmcblk1
brw-------    1 root     root      179,   9 Sep  6 08:28 mmcblk1p1
drwxr-xr-x    4 root     root             0 Sep  6 08:28 platform/
brw-------    1 root     root        1,   0 Sep  6 08:28 ram0
brw-------    1 root     root        1,   1 Sep  6 08:28 ram1
brw-------    1 root     root        1,  10 Sep  6 08:28 ram10
brw-------    1 root     root        1,  11 Sep  6 08:28 ram11
brw-------    1 root     root        1,  12 Sep  6 08:28 ram12
brw-------    1 root     root        1,  13 Sep  6 08:28 ram13
brw-------    1 root     root        1,  14 Sep  6 08:28 ram14
brw-------    1 root     root        1,  15 Sep  6 08:28 ram15
brw-------    1 root     root        1,   2 Sep  6 08:28 ram2
brw-------    1 root     root        1,   3 Sep  6 08:28 ram3
brw-------    1 root     root        1,   4 Sep  6 08:28 ram4
brw-------    1 root     root        1,   5 Sep  6 08:28 ram5
brw-------    1 root     root        1,   6 Sep  6 08:28 ram6
brw-------    1 root     root        1,   7 Sep  6 08:28 ram7
brw-------    1 root     root        1,   8 Sep  6 08:28 ram8
brw-------    1 root     root        1,   9 Sep  6 08:28 ram9
drwxr-xr-x    2 root     root             0 Sep  6 08:28 vold/


From the above list is it possible to know the boot paritions.
on S2_lte_I9210 /proc/partitions list the system partition as /dev/block/mmcblk0p24 /system but not the boot partition.

I'm eagerly waiting to do boot.img backup using via dd command

---------- Post added at 04:20 PM ---------- Previous post was at 04:16 PM ----------

# cat /proc/partitions
major minor #blocks name

179 0 15387648 mmcblk0
179 1 102400 mmcblk0p1
179 2 500 mmcblk0p2
179 3 1500 mmcblk0p3
179 4 1 mmcblk0p4
179 5 500 mmcblk0p5
179 6 2048 mmcblk0p6
179 7 2500 mmcblk0p7
179 8 10240 mmcblk0p8
179 9 500 mmcblk0p9
179 10 500 mmcblk0p10
179 11 500 mmcblk0p11
179 12 10240 mmcblk0p12
179 13 100352 mmcblk0p13
179 14 3072 mmcblk0p14
179 15 3072 mmcblk0p15
179 16 3072 mmcblk0p16
179 17 100352 mmcblk0p17
179 18 3072 mmcblk0p18
179 19 3072 mmcblk0p19
179 20 3072 mmcblk0p20
179 21 10240 mmcblk0p21
179 22 10240 mmcblk0p22
179 23 10240 mmcblk0p23
179 24 677888 mmcblk0p24
179 25 2099200 mmcblk0p25
179 26 309248 mmcblk0p26
179 27 132096 mmcblk0p27
179 28 11738112 mmcblk0p28
179 32 15558144 mmcblk1
179 33 15557120 mmcblk1p1

partition list on samsung galaxy S2_lte I9210
 

Top Liked Posts

  • There are no posts matching your filters.
  • 7
    I think this thread is obsolete now, please go to
    [DEV][REF] El Grande Partition Table Reference
    instead, which contains more facts


    Hi,

    I want to create a list of Android partitions, to collect information for different purposes.
    My current cause of investigation is about repartitioning emmc bricked Samsung phones, but the guide could collect all kinds of information (in short form, eventually with links to deeper investigations).

    I want to format this as a living post, with new information added where appropriate (I assume the wiki would fit better, but I don't see a section to put this, also I don't know if fitting to Samsung only or Android in general until enough information is collected).


    So let's start:


    So let's visit partitions one by one:

    GANG
    * has zero size in PIT, seems to be hidden in the following unused area
    * no real partition, but included in PITs

    BOOT
    * has zero size in PIT, seems to be hidden in the following unused area

    EFS
    * mounted on /efs
    * contains many personalized information
    * IMEI
    * bluetooth MAC etc.
    * restoration only possible with JTAG
    * should be backuped!!!

    SBL1, SBL2
    * BL = boot loader
    * S = Secondary?
    * why do we have SBL1 *and* SBL2?

    PARAM
    * currently I don't know anything about this

    KERNEL
    * contains kernel (obviously)
    * also contains recovery on some/many Samsung Galaxy phones (e.g. N7000)
    * read only

    RECOVERY
    * seems to be unused on Samsung Galaxy N7000, KERNEL comes with recovery integrated
    * read only

    CACHE
    * mounted on /cache
    * temporary data
    * can be cleared without loosing any important data

    MODEM
    * modem software for cell phone
    * can be flashed from stock file
    * read only?

    FACTORYFS, system
    * mounted on /system
    * main OS code
    * system apps
    * read only

    DATAFS, data
    * mounted on /data
    * user apps
    * read/write

    UMS, userdata
    * mounted on /sdcard, sometimes /emmc
    * sometimes called internal sd

    HIDDEN, PRELOAD
    * mounted on /preload
    * purpose?

    FOTA
    * F = Factory?
    * OTA = Over The Air
    * may be used for Updates by stock ROM


    Here are also some general thoughts about repartitioning these partitions to be mixed into the list later if it fits (just as a reminder):
    * if you have a brick in a partition you cannot create a backup to restore afterwards
    * partitions which have stock contents (not personalized) will be easy
    * EFS cannot be restored without having a backup,
    it contains nearly all really personalized information, with the most important data being the IMEI, which is unique to your phone. You find it printed on a sticker on your phone, but currently no one seems to be able to patch it into a generic copy of the EFS.
    * some partitions will be needed to boot into recovery and/or download mode
    I would assume BOOT, SBL1 and/or SBL2 are involved.
    Some may be needed to boot into both recovery *and* download mode.
    Some may be needed only for one of them.
    If a PIT would move these, you cannot enter download and/or recovery again, thus your phone is nearly dead and only recoverable by JTAG.
    * what about PARAM?
    1
    Thanks for clearing up, this fits my conclusions.
    Never saw such fixed devices before.

    I'd say this is the way it's most commonly done in Android devices, using a raw NAND device with the MTD translation layer. It's far more uncommon using block devices, such as MMC devices as the primary internal memory.
    1
    Thanks for this. :good:

    I am still curious about the possibility to gain boot or root partition access in Xperia?
    Many other devices come with this feature, e.g. HTC Incredible S, HTC Vision, Acer Liquid Metal and on the widely spread article HOWTO: Unpack, Edit, and Re-Pack Boot Images).

    In Xperia, the boot partition is not visible to the Linux kernel, so you can't simply dd it to an image file. The easiest way is running Sony Update Service reflashing your phone with the current firmware, and then copy the temporary files it downloaded, recreating the FTF file using Flashtool. Unzip the FTF and you've got the boot.img. Now split it, do whatever you want to change and flash it using fastboot. There's a YouTube video showing this in detail. Search for it. Or download the firmware FTF directly from a trusted source.

    I looked in fota0.sin and found a few more partition names on the Xperia (Active):

    Code:
    amss
    amss_fs
    fota0
    fota1
    dsp1
    boot
    system
    userdata
    cache
    image_backup
    amss_log
    vendor
    ramdump
    1
    Hi! I just found this thread after having searched for my own!
    Seem like we have had the same idea about the same time.

    I just started my own thread in this same spirit, but I have posted in the hardware forum, as it is certainly more hardware connected, than software...

    "[DEV][REF] El Grande Partition Table Reference"

    There you will also find many answers to your questions and uncertainties in OP.

    Nice, your thread contains more facts, so I will redirect readers by adding a link to your thread in my thread starter (I hope this evening).
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone