Good day

re: Huawei U8836D (G500 Pro) ICS

It is an old phone now I realise, however until I [ignorantly] ruined it yesterday mine was going strong.

As I understand, it has ~1GB of RAM and a ~4GB in-built SD card....I think. There is the external SD card slot, where I have had an 8GB card in.

The internal card ,as I call it, used to show up in the storage details screen until I stupidly repartitioned it following link2sd article(s), in the hope I could 'expand' the available space.

The internal card does not now show up in the storage details and appears not to be mounted (is that the correct term).

I am not confident on android, but can get around ADB, linux etc reasonably ok. Rather than start to dump extra info right now, please let me know what I need to provide as I/we go along.

Therefore, I would really appreciate if some knowledgeable kind soul will spare some time and guide me through getting each storage area back and working as it should please ? - if that all makes sense.

Thank you.

continue after the reply post (my apologies if this is not the correct way to add more details):

Thank you for the reply. I am a bit puzzled.

I have removed the external card - as for one i was getting a 'low space' message which has ceased now it is out and for another reason, to remove its affects on the output to the system tools just leaving the phone and its internal storage however that is.

Now, when I connect phone with USB to linux, I was able to fdisk the device listed in /dev, but the print showed its size at a little over 2Gb. I was then able to format the one primary partition to vfat and reboot successfully.

Yet when using adb shell and running mount and df, there is no info reported on the existence of that 2Gb vfat partition. Under /dev/block on the phone, there is only the mmcblk0 entry and its associated parts 1 to 6 (im not familiar with this structure so sorry for being vague). If I fdisk that mmcblk0 the print displays a size of just under 4GB. I'm not sure what that all means yet (need to try find some articles on how android uses storage).

My question now, is with the phone connected in adb shell, can I safely repartition that mmcblk0 (removing the I presume the boot time setup partitions of type id's 5 and 83) into 2 partitions of types 83 and 0b, reboot and the machine will sort itself out accordingly using those?

If not, how do I get the 2Gb of that 4Gb showing up to use, as 'storage menu option' from the android ics menu doesn't show it, file manager app doesnt show it etc (even link2sd cant see it) ?

I am making progress even if I seem to be wafting about in the air :-)

  • 1
    On Linux, GParted can allow you to view the partitions. You probably formatted it to some ext, which is not supported by the file manager, but is supported by Link2SD. That is normal, the internal storage isn't supposed to show up if it has been repartitioned for Link2SD. In case you want to revert, use GParted or whatever to reformat the internal SD to fat32 and you're good to go. Nov 28 '15 at 18:54
  • If this is an okay answer, please let me know, I'll make it one. Nov 28 '15 at 18:54
  • I am not very familiar with Linux, but you should try going through the block device codes to get a clue as to the correct partition, and then manually mount it as I suggested. Nov 29 '15 at 14:47

Since you are okay with Linux and ADB, let me first clarify 2 things:

  1. Repartitioning the internal SD for Link2SD specifically as per the guide will partition it with a filesystem like ext2/ext3/ext4, which will cause partition to be recognized as system and not show up in most file managers. Some file managers, like ES File Explorer, may allow you to access it through the /mnt namespace, if it was mounted, or as some block device in /dev if not. Link2SD on first startup detects this partition by running some variant of the mount command and adding a mount-at-boot for this partition to init.rc and/or vold.fstab, and makes its permissions so that it isn't easily accessible even by the system.

  2. This not showing up is intended behaviour, but you will find the partition under Link2SD's partition options as "SD card Partition 2" or some such.

Now, if you want to go back to using that internal storage for something, you would have to repartition the internal SD again, using GParted or some such software or Linux which recognizes an ext filesystem.

You will have to:

  1. Find the correct partition for Link2SD.
  2. Format it to FAT32, and set it as active and primary.
  3. On device, mount the partition's block device (mmcblk0p6 in your case) as /mnt/sdcard0 and add this in init.rcand/or vold.fstab (Follow this and this answer).

For you the command to enter in vold.fstab will be

dev_mount sdcard /mnt/sdcard auto SDCARD=/dev/mmcblk0p6

And reboot. It should work. Format this position to FAT32, not VFAT, to avoid useless errors about "read only filesystem".

I'm not providing the commands here as you are familiar with Linux, and in this case on Android it's similar (a root shell through ADB).

  • thank you, i have added to my original question following your reply. Sorry if this is not the correct way - i am not familiar with the format of this question/answer setup.
    – badbetty
    Nov 29 '15 at 14:26
  • It's all right, you are allowed to edit your question as it does not invalidate any existing answer. Nov 29 '15 at 14:43
  • well...I'm glad I did not do a repartition on the mmcblk0; that looks like it could be fatal :-). Any way, I think the vfat partition is /dev/block/mmcblk0p6 (using fdisk on that device). I need to create a mount point under /mnt (e.g. /mnt/sdextra), but I keep getting 'read only file system' and I cannot find a way to resolve this. Please will you advise how to best edit the init.rc to insert the dev_mount line ?
    – badbetty
    Nov 29 '15 at 20:12
  • You'll actually have to edit vold.fstab . also, I said to format to fat32, not vfat Nov 30 '15 at 0:38
  • fat32, yes you did! My view was vfat formating (as in mkfs.vfat) on linux was F32 sized. I will check it again. I realise it will have to go in vold.fstab, but I wanted to ensure a mount point was available - at the moment there appears to be sdcard and sdcard2 set up by the init process. I'll have a go for one of those to see if it works first. Thank you.
    – badbetty
    Nov 30 '15 at 10:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.