How can I reformat internal storage on Android? I'd like some assistance with formatting the internal storage of my phone.
I've managed to unbrick it and to flash TWRP recovery but I can see that capacity of the internal storage is only 33 MB which is clearly wrong. Before I started doing all this it had GB of capacity not MB. So clearly I need to fix this. I tried to use Windows's disk manager
but the manager isn't detecting the phone or the storage.

Can I have some guidance here ? It's Meizu 5 pro. Any helpful input much appreciated.

cat /proc/partitions gives me:

major   minor  #blocks  name
   8       0   61071360  sda
   8       1   1024      sda1
   8       2   256       sda2
   8       3   256       sda3
 259       0   4096      sda21
 259       1   8192      sda22
 259       2   2048      sda23
 259       3   4096      sda24
 259       4   4096      sda25
 259       5   24576     sda26
 259       6   32768     sda27
 259       7   32768     sda28
 259       8   20480     sda29
 259       9   20480     sda30
 259      10   20480     sda31
 259      11   20480     sda32
 259      12   20480     sda33
 259      13   2621440   sda41
 259      14   524288    sda42
 259      15   57663468  sda43
 259      16   38912     sda44
   8      16   4096      sdb
   8      32   4096      sdc
 179      0    30253056  mmcblk0
 179      1    30252032  mmcblk0p1


ls -ld /dev/block/bootdevice/by-name/* gives me "No such file or directory"

Note:

The phone hasn't got any OS running at the moment.





I managed to use ADB and fdisk to get a list of locations (fdisk /dev/block/sda) in the phone. Then I pressed "p" for a print out.
I marked locations or partitions in question. Cache takes up all the storage whereas "userdata" gets only 38MB. In advanced mode where I get to make changes when I press "p" again I get different output. I don't understand this.

Update:

I modified the partition table to make it look like the way I need:



The problem I'm dealing with right now is that the phone doesn't want to mount the devices. Can't get it to mount system, cache, userdata.
I made sure "userdata" is still vfat and cache is ext4. Order number of partitions have changed though. Does that matter ?

latest update:



Looks like I was right for once. When I ran mount -a to mount all devices I got error because devices are assigned to different partition number.
check your file system type is ext4 or f2fs with mount  

in TWRP you can format from command line (beware this is factory reset /data and /sdcard is lost)  

adb shell
umount /sdcard /data
mount -r /system
mount -r /vendor
export PATH=/system/bin:/sbin
export LD_LIBRARY_PATH=/system/lib64:/system/vendor/lib64:/vendor/lib64:/system/lib:/system/vendor/lib:/vendor/lib
/system/bin/sh
mke2fs -t ext4 /dev/block/sda44 [fs-size]
or
mkfs.f2fs /dev/block/sda44 [fs-size]


Note: fs-size is optional. depending on encryption method you may reserve last -16384 bytes for encryption footer. in this case calculate sectors