ROM Android: Melihat Partisi ROM
Android Partitions Explained: boot, system, recovery, data, cache & misc Here is a list of internal partitions in Android:
/boot /cache /data /misc /recovery /system
And here are the external partitions:
/sdcard + (sdcard2 is some cases) /sd-ext
So, there are total of 8 partitions, 6 of which are internal while 2 are external. Of all these 8, only 1 partition. sdcard, is found on all devices while others may be found on selected devices only. All of these are explained below:
Boot Partition (/boot)As its name suggests, boot partitions contains the files that facilitates the boot process of Android device. The ramdisk and the kernel are also found on this partition.
If you wipe boot partition, you will still be able to boot your device in Recovery mode. It’s recommended to not to do it unless you have a ROM with boot partition in it.
Cache Partition (/cache)Android Cache partition stores logs and frequently accessed app data. Downloads from Google Play Store are also stored in this partition.
Clearing / wiping this partition does not affect your Android device in any way. It just frees up some space.
Data Partition (/data)This is where user data is stored. This includes everything from user settings & customizations, apps that you have downloaded and installed, your messages (SMS / MMS) as well as contacts.
Wiping data partition will restore your phone to factory settings, removing all apps, messages and user settings from the device.
Misc Partition (/misc)This partition contains miscellaneous hardware settings for your device. These files are mandatory for your device to function properly.
If you wipe misc partition, your Android device will not function properly and may note boot at all.
Recovery Partition (/recovery)This partition lets you boot in recovery mode. While in recovery mode, you can perform plenty of functions like wiping your data / userdata partition to restore your device to factory settings and clearing cache partition.
System Partition (/system)As the name indicates, all the files pertaining to OS are stored in this partition. This also includes all the system apps that are part of Android. Clearing / Wiping System partition will remove Android from your device. However, you may still be able to boot into recovery or download mode and flash a new ROM.
SDCard Partition (/sdcard)The /sdcard partition on Android refers to the space that is available to users to store their files and data. Depending on your device, there may be several sdcard partitions. On devices with external SD card slot, the /sdcard partition represents the internal storage device. For external SD card, you can find a different partition /sdcard2 or a directory within sdcard partition like /sdcard/sd. You can safely wipe sdcard2 partition as there’s no system data stored on this partition. The sdcard partition may contain user data and app settings / data stored by different apps. Wiping /sdcard partition will just wipe some app settings and user data and in no way interrupts system’s boot process or functionality.
SD-Ext Partition (/sd-ext)This is an additional partition of the sdcard partition which is used mostly by custom ROMs and mods. This works as /data partition of the /sdcard, storing user data and settings that is typically stored on /data partition. This partition is helpful for devices with limited internal memory as the user data and settings are stored on SD card and not on internal storage. Wiping sd-ext partition, if you have data stored on it, is same as wiping /data partition. You will lose settings, contacts, messages and any other data stored on that partition.
Introduction
All Android devices use separate partitions for storing different parts of the entire system. The boot partition consists of the linux kernel, recovery partition contains the recovery binary, system partition contains the device's ROM, data partition contains all user data and cache partition contains some cache data including dalvik-cache. Partition layout files are used to determine where each specific partition, used for Android's internal tools and provide the data to tools like Online Nandroid. The linux kernel reveals this layout in different places at times, but not always. In some instances, if this layout is not revealed, Online Nandroid uses it's own manually created partition layout file at /system/partitionlayout4nandroid.
Contoh (/proc/partitions di Google Nexus 4):
major minor #blocks name 179 0 15388672 mmcblk0 179 1 65536 mmcblk0p1 179 2 512 mmcblk0p2 179 3 512 mmcblk0p3 179 4 2048 mmcblk0p4 179 5 512 mmcblk0p5 179 6 22528 mmcblk0p6 179 7 22528 mmcblk0p7 179 8 780 mmcblk0p8 179 9 780 mmcblk0p9 179 10 780 mmcblk0p10 179 11 512 mmcblk0p11 179 12 512 mmcblk0p12 179 13 512 mmcblk0p13 179 14 2048 mmcblk0p14 179 15 512 mmcblk0p15 179 16 512 mmcblk0p16 179 17 512 mmcblk0p17 179 18 512 mmcblk0p18 179 19 16384 mmcblk0p19 179 20 16384 mmcblk0p20 179 21 860160 mmcblk0p21 179 22 573440 mmcblk0p22 179 23 13798400 mmcblk0p23 179 24 512 mmcblk0p24 179 25 495 mmcblk0p25
Contoh (/proc/partitions di LG Optimus GPro dengan ROM Xiaomi)
major minor #blocks name 179 0 30535680 mmcblk0 179 1 65536 mmcblk0p1 179 2 512 mmcblk0p2 179 3 512 mmcblk0p3 179 4 2048 mmcblk0p4 179 5 512 mmcblk0p5 179 6 512 mmcblk0p6 179 7 24576 mmcblk0p7 179 8 512 mmcblk0p8 179 9 1 mmcblk0p9 179 10 3072 mmcblk0p10 179 11 3072 mmcblk0p11 179 12 780 mmcblk0p12 179 13 780 mmcblk0p13 179 14 780 mmcblk0p14 179 15 8192 mmcblk0p15 179 16 8192 mmcblk0p16 179 17 8 mmcblk0p17 179 18 16384 mmcblk0p18 179 19 16384 mmcblk0p19 179 20 8192 mmcblk0p20 179 21 512 mmcblk0p21 179 22 512 mmcblk0p22 179 23 2621440 mmcblk0p23 179 24 1048576 mmcblk0p24 179 25 24862720 mmcblk0p25 179 26 8192 mmcblk0p26 179 27 262144 mmcblk0p27 179 28 24576 mmcblk0p28 179 29 3072 mmcblk0p29 179 30 8 mmcblk0p30 179 31 32768 mmcblk0p31 259 0 32768 mmcblk0p32 259 1 512 mmcblk0p33 259 2 512 mmcblk0p34 259 3 16384 mmcblk0p35 259 4 8 mmcblk0p36 259 5 8 mmcblk0p37 259 6 16384 mmcblk0p38 259 7 1412063 mmcblk0p39 179 32 3929088 mmcblk1 179 33 3928064 mmcblk1p1
Menggunakan perintah
ls -l /dev/block/platform/msm_sdcc.1/by-name/
Kita dapat mengetahui fungsi dari masing-masing partisi, di LG Optimus GPro
lrwxrwxrwx root root 1970-01-01 20:27 DDR -> /dev/block/mmcblk0p30 lrwxrwxrwx root root 1970-01-01 20:27 aboot -> /dev/block/mmcblk0p5 lrwxrwxrwx root root 1970-01-01 20:27 bnr -> /dev/block/mmcblk0p20 lrwxrwxrwx root root 1970-01-01 20:27 boot -> /dev/block/mmcblk0p7 lrwxrwxrwx root root 1970-01-01 20:27 cache -> /dev/block/mmcblk0p24 lrwxrwxrwx root root 1970-01-01 20:27 drm -> /dev/block/mmcblk0p15 lrwxrwxrwx root root 1970-01-01 20:27 eksst -> /dev/block/mmcblk0p22 lrwxrwxrwx root root 1970-01-01 20:27 encrypt -> /dev/block/mmcblk0p21 lrwxrwxrwx root root 1970-01-01 20:27 factory -> /dev/block/mmcblk0p19 lrwxrwxrwx root root 1970-01-01 20:27 fota -> /dev/block/mmcblk0p31 lrwxrwxrwx root root 1970-01-01 20:27 fsg -> /dev/block/mmcblk0p29 lrwxrwxrwx root root 1970-01-01 20:27 grow -> /dev/block/mmcblk0p39 lrwxrwxrwx root root 1970-01-01 20:27 lcdlog -> /dev/block/mmcblk0p37 lrwxrwxrwx root root 1970-01-01 20:27 m9kefs1 -> /dev/block/mmcblk0p12 lrwxrwxrwx root root 1970-01-01 20:27 m9kefs2 -> /dev/block/mmcblk0p13 lrwxrwxrwx root root 1970-01-01 20:27 m9kefs3 -> /dev/block/mmcblk0p14 lrwxrwxrwx root root 1970-01-01 20:27 misc -> /dev/block/mmcblk0p18 lrwxrwxrwx root root 1970-01-01 20:27 modem -> /dev/block/mmcblk0p1 lrwxrwxrwx root root 1970-01-01 20:27 modemst1 -> /dev/block/mmcblk0p10 lrwxrwxrwx root root 1970-01-01 20:27 modemst2 -> /dev/block/mmcblk0p11 lrwxrwxrwx root root 1970-01-01 20:27 mpt -> /dev/block/mmcblk0p32 lrwxrwxrwx root root 1970-01-01 20:27 pad -> /dev/block/mmcblk0p9 lrwxrwxrwx root root 1970-01-01 20:27 persist -> /dev/block/mmcblk0p26 lrwxrwxrwx root root 1970-01-01 20:27 rct -> /dev/block/mmcblk0p36 lrwxrwxrwx root root 1970-01-01 20:27 recovery -> /dev/block/mmcblk0p28 lrwxrwxrwx root root 1970-01-01 20:27 reserved -> /dev/block/mmcblk0p38 lrwxrwxrwx root root 1970-01-01 20:27 rpm -> /dev/block/mmcblk0p6 lrwxrwxrwx root root 1970-01-01 20:27 rpmbak -> /dev/block/mmcblk0p34 lrwxrwxrwx root root 1970-01-01 20:27 sbl1 -> /dev/block/mmcblk0p2 lrwxrwxrwx root root 1970-01-01 20:27 sbl2 -> /dev/block/mmcblk0p3 lrwxrwxrwx root root 1970-01-01 20:27 sbl3 -> /dev/block/mmcblk0p4 lrwxrwxrwx root root 1970-01-01 20:27 sns -> /dev/block/mmcblk0p16 lrwxrwxrwx root root 1970-01-01 20:27 ssd -> /dev/block/mmcblk0p17 lrwxrwxrwx root root 1970-01-01 20:27 system -> /dev/block/mmcblk0p23 lrwxrwxrwx root root 1970-01-01 20:27 tombstones -> /dev/block/mmcblk0p27 lrwxrwxrwx root root 1970-01-01 20:27 tz -> /dev/block/mmcblk0p8 lrwxrwxrwx root root 1970-01-01 20:27 tzbak -> /dev/block/mmcblk0p33 lrwxrwxrwx root root 1970-01-01 20:27 userdata -> /dev/block/mmcblk0p25 lrwxrwxrwx root root 1970-01-01 20:27 ve -> /dev/block/mmcblk0p35
MTD Based Devices
MTD (Memory Technology Device) based devices have /proc/mtd populated with the partition layout, by the linux kernel. Thus, no specific partition layout file is required by Online Nandroid, on MTD based devices.
Example (/proc/mtd on a Sony Ericsson Xperia Pro):
dev: size erasesize name mtd0: 19000000 00020000 "system" mtd1: 00600000 00020000 "appslog" mtd2: 06580000 00020000 "cache" mtd3: 1a400000 00020000 "userdata" mtd4: 00c80000 00020000 "boot"
Note: Some buggy kernels may not populate /proc/mtd properly. In most such cases, the underlying MTD partitions would also not be revealed by the kernel, thus proving a workaround partition layout virtually useless.
EMMC Based Devices
Few EMMC (Embedded MultiMedia Card) based devices have /proc/emmc populated with the partition layout, by the linux kernel. In this case, no specific patch file is required by Online Nandroid. However, this practice is not followed in later devices. Thus, these require patch files. A partition layout file is very similar to /proc/mtd or /proc/emmc generated by linux kernel. It follows the same format and the same header.
Gathering information to produce a partition layout file is trivial. It is sometimes revealed somewhere under the /sys/devices by linux kernel. But this is not always the case. ROM and kernel developers, would, most of the time, figure this out and share this information in development threads on forums like XDA. Other times, it is easiest to obtain a copy of recovery.fstab used by stock, CWM, TWRP and other recoveries. This file is present in the recovery ramdisk and thus can be obtained from someone who has physical access to the device. Alternatively, this file is available at device repositories on Github and other places. A simple search on Google for android_device_oem_device, where oem is the name of device manufacturer such as samsung, sony, motorola, lge..., and device is the code name / technical name of the device such as mako for Google Nexus 4 and m0 for Samsung Galaxy S III. In addition a PIT file or a scatter file for the specific device can also be used for deducing the partition layout.
Example (Partition Layout file on an HTC Sensation XL):
dev: size erasesize name mmcblk0p1: 0001f4 000000 "unknown" mmcblk0p2: 000040 000000 "unknown" mmcblk0p3: 001194 000000 "unknown" mmcblk0p4: 000001 000000 "unknown" mmcblk0p5: 007530 000000 "unknown" mmcblk0p6: 0030d4 000000 "unknown" mmcblk0p7: 000800 000000 "unknown" mmcblk0p8: 000c00 000000 "unknown" mmcblk0p9: 000800 000000 "unknown" mmcblk0p10: 000400 000000 "unknown" mmcblk0p11: 000400 000000 "unknown" mmcblk0p12: 00222f 000000 "unknown" mmcblk0p13: 000c00 000000 "unknown" mmcblk0p14: 000c00 000000 "unknown" mmcblk0p15: 000400 000000 "unknown" mmcblk0p16: 0022fd 000000 "unknown" mmcblk0p17: 000100 000000 "unknown" mmcblk0p18: 000400 000000 "unknown" mmcblk0p19: 000800 000000 "unknown" mmcblk0p20: 000500 000000 "unknown" mmcblk0p21: 0021fd 000000 "recovery" mmcblk0p22: 001000 000000 "boot" mmcblk0p23: 000100 000000 "unknown" mmcblk0p24: 007bff 000000 "unknown" mmcblk0p25: 0fffff 000000 "unknown" mmcblk0p26: 000c00 000000 "unknown" mmcblk0p27: 000c00 000000 "unknown" mmcblk0p28: 0067fe 000000 "misc" mmcblk0p29: 407fff 000000 "userdata" mmcblk0p30: 08ffff 000000 "cache" mmcblk0p31: 007eff 000000 "unknown" mmcblk0p32: 000103 000000 "unknown" mmcblk0p33: 8e4ffc 000000 "emmc"
MTK Based Devices
On devices based on MTK (MediaTek) chipsets, a file at /proc/dumchar_info is populated with the partition layout, by the linux kernel. This file, however is not similar to /proc/mtd, /proc/emmc and partition layout files used by Online Nandroid. Since MTK devices use the uboot mechanism, partitions including boot and recovery, are not revealed as separate partitions, but rather accessed sequencially by size and start parameters. The dumchar_info file has this size and start parameters specified in it. This file has some other major differences in partition naming such as the boot partition is named bootimg instead of boot, data partition is named usrdata instead of userdata, system partition is named android instead of system and internal sd card is named fat instead emmc. Online Nandroid (since v8.0) has built-in support for MTK based devices, thus does not require separate partition layout files on MTK based devices.
Example (/proc/dumchar_info on a Star N9770 Dual Core - MT6577):
Part_Name Size StartAddr Type MapTo preloader 0x0000000000040000 0x0000000000000000 2 /dev/misc-sd dsp_bl 0x00000000005c0000 0x0000000000040000 2 /dev/misc-sd mbr 0x0000000000004000 0x0000000000000000 2 /dev/block/mmcblk0 ebr1 0x0000000000004000 0x0000000000004000 2 /dev/block/mmcblk0p1 pmt 0x0000000000400000 0x0000000000008000 2 /dev/block/mmcblk0 nvram 0x0000000000500000 0x0000000000408000 2 /dev/block/mmcblk0 seccfg 0x0000000000020000 0x0000000000908000 2 /dev/block/mmcblk0 uboot 0x0000000000060000 0x0000000000928000 2 /dev/block/mmcblk0 bootimg 0x0000000000600000 0x0000000000988000 2 /dev/block/mmcblk0 recovery 0x0000000000600000 0x0000000000f88000 2 /dev/block/mmcblk0 sec_ro 0x0000000000600000 0x0000000001588000 2 /dev/block/mmcblk0p2 misc 0x0000000000060000 0x0000000001b88000 2 /dev/block/mmcblk0 logo 0x0000000000300000 0x0000000001be8000 2 /dev/block/mmcblk0 expdb 0x0000000000200000 0x0000000001ee8000 2 /dev/block/mmcblk0 android 0x0000000020100000 0x00000000020e8000 2 /dev/block/mmcblk0p3 cache 0x0000000020100000 0x00000000221e8000 2 /dev/block/mmcblk0p4 usrdata 0x0000000020100000 0x00000000422e8000 2 /dev/block/mmcblk0p5 fat 0x00000000854f8000 0x00000000623e8000 2 /dev/block/mmcblk0p6 bmtpool 0x0000000001500000 0x00000000ff9f00a8 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
Contoh /proc/dumchar_info dari Evercross Y2 A80A
Part_Name Size StartAddr Type MapTo Region preloader 0x0000000000040000 0x0000000000000000 2 /dev/misc-sd BOOT_1 mbr 0x0000000000080000 0x0000000000000000 2 /dev/block/mmcblk0 USER ebr1 0x0000000000080000 0x0000000000080000 2 /dev/block/mmcblk0p1 USER pro_info 0x0000000000300000 0x0000000000100000 2 /dev/block/mmcblk0 USER nvram 0x0000000000500000 0x0000000000400000 2 /dev/block/mmcblk0 USER protect_f 0x0000000000a00000 0x0000000000900000 2 /dev/block/mmcblk0p2 USER protect_s 0x0000000000a00000 0x0000000001300000 2 /dev/block/mmcblk0p3 USER seccfg 0x0000000000040000 0x0000000001d00000 2 /dev/block/mmcblk0 USER uboot 0x0000000000060000 0x0000000001d40000 2 /dev/block/mmcblk0 USER bootimg 0x0000000000a00000 0x0000000001da0000 2 /dev/block/mmcblk0 USER recovery 0x0000000000a00000 0x00000000027a0000 2 /dev/block/mmcblk0 USER sec_ro 0x0000000000600000 0x00000000031a0000 2 /dev/block/mmcblk0p4 USER misc 0x0000000000080000 0x00000000037a0000 2 /dev/block/mmcblk0 USER logo 0x0000000000800000 0x0000000003820000 2 /dev/block/mmcblk0 USER ebr2 0x0000000000080000 0x0000000004020000 2 /dev/block/mmcblk0 USER expdb 0x0000000000f60000 0x00000000040a0000 2 /dev/block/mmcblk0 USER android 0x0000000032000000 0x0000000005000000 2 /dev/block/mmcblk0p5 USER cache 0x0000000008000000 0x0000000037000000 2 /dev/block/mmcblk0p6 USER usrdata 0x00000001c0000000 0x000000003f000000 2 /dev/block/mmcblk0p7 USER fat 0x00000001a3900000 0x00000001ff000000 2 /dev/block/mmcblk0p8 USER bmtpool 0x0000000001500000 0x00000000ffff00a8 2 /dev/block/mmcblk0 USER 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
Backup Partisi ke SDCARD
Di Evercoss A80A
Backup EBR1
dd if=/dev/block/mmcblk0p1 of=/sdcard/ebr1.img
Backup android (atau di kenal juga sebagai system)
dd if=/dev/block/mmcblk0p5 of=/sdcard/android.img
Backup cache
dd if=/dev/block/mmcblk0p6 of=/sdcard/cache.img