I have a Runbo X5-King phone which is manufactured by a small Chinese company. I need to shrink /system and expand /data. All tutorials I can find online say to run fdisk in recovery, but the problem is that /system doesn't seem to mount, and "adb shell" results in an error message saying that it cannot find /system/bin/sh. However after booting into Android everything works perfectly, and /system is mounted successfully as well. I'm able to enter fastboot and let my computer interact with the phone, but fastboot doesn't have the ability to resize partitions or enter the shell. Since the phone is not famous, no custom recoveries could be found for it. So how can I resize partitions under this situation?
I would highly recommend against re-partitioning your phone! Most bootloaders are hard-coded to recognize specific partitions based on their start and end blocks. If you modify these via partitioning, you may end up bricking your device. You should only re-partition if this has been confirmed to work on your particular device.– ChahkNov 18, 2014 at 16:28
Here's my df result:– jack980517Nov 20, 2014 at 23:14
app_70@android:/ $ df Filesystem Size Used Free Blksize /dev 488M 52K 488M 4096 /mnt/asec 488M 0K 488M 4096 /mnt/obb 488M 0K 488M 4096 /system 602M 290M 311M 4096 /data 502M 399M 103M 4096 /cache 405M 6M 398M 4096 /mnt/sdcard 7G 5G 1G 32768 /mnt/secure/asec: Permission denied /mnt/sdcard2 1G 1G 5M 4096 1|app_70@android:/ $– jack980517Nov 20, 2014 at 23:14
The default partitioning greatly affects my use of the phone.– jack980517Nov 20, 2014 at 23:15
To use fdisk without recovery, i.e. while Android is running, you need to root your phone, install a terminal emulator, and install BusyBox (the fdisk command won't be available without BusyBox, which provides a bundle of common Linux tools that aren't included in Android). Note that to install BusyBox, it's not sufficient just to install the app. You need to launch the app and click the Install button in order to install the tools.
The process of rooting is device-dependent, and I don't know specifically how to do it on your device, but you could try Towelroot, which works on a wide variety of Android devices and is incredibly simple to use.
I have terminal emulator and busybox installed already. But as fdisk is a "partition manager", I don't think it can be used to modify the partitions that are being used on the phone. Nov 10, 2014 at 15:26