First to clarify root and data:
Root directory / of Android devices is a read-only pseudo (temporary) filesystem (rootfs) that lives in RAM and is vanished when device is powered off. When device is powered on, it's again extracted from initramfs that lives in boot partition along with kernel.
On newer devices with system-as-root, system partition is ...
This was supposedly fixed several months ago, but people are still reporting problems. I can read items on the card, but do not have write permission. To fix it, I combined strategies from a few sources.
Partition card with MS-DOS partition table and ext4 filesystem. I used GParted on my (Linux) desktop computer.
Insert the card into your phone. (You will ...
Go to Magisk Settings and set Mount Namespace Mode to Global once for all. In SuperSU app, disable Mount Namespace Separation.
For one time solution, use this command instead:
~$ su -mm -c 'mount <device> <mountpoint>'
but after some time, the partition gets unmounted automatically and I have to mount it again.
I actually had my sdcard on ext4 and got it mounted permanent at boot time (I have root on my phone).
The biggest problem was that the apps don’t expect permission checking on /sdcard, but extX enforces this (no mount option around this). So if one app stores e.g. some audio there and calls another subcomponent to play it, it fails.
The same is true for ...
As for the "drawbacks" part, there are different things to consider:
Windows cannot read ext4
Mac/Linux/*nix should have no trouble with it
Using MTP, Windows won't have any trouble either
If your ROM supports ext4, there should be no local problem
You might want to switch to a different ROM one day -- that ROM might not support ...
A few points on four partitions:
Dedicated first partition exFAT or NTFS or FAT32 (whichever Android permits and gives optimum performance) to store apps, photos and media.
For apps consider Application Class but that's expensive. Others will exert performance penalty more or less. On filesystem selection, the biggest downside with FAT32 is its 4GB ...
Edit 2020-06-03: If you would like to see a way more detailed answer in how the mounting ecosystem works under Android, you may have a look at this answer: How to bind mount a folder inside /sdcard with correct permissions?
Try logging in as a root user with proper mounting permissions using
Make sure that a directory exists that receives ...
I cannot answer the Windows part – but the Ubuntu part I can answer for sure, as I'm using that as well and mount my devices from my computer, sometimes with full r/w access. What I use needs ADB tools to be installed on your computer. If you didn't already install them, see e.g. Is there a minimal installation of ADB?
Prepare your Droid
First a basic ...
External SD cards and USB OTG drives (since Android 6) are handled by vold which supports only FAT[N] (vfat) and exFAT (since Android 9 provided that OEM adds support to kernel) filesystems on stock Android. ext4 and f2fs are supported only for private volumes (Adoptable Storage). Public volume (secondary external storage) is not directly accessible to apps ...
Chmod will never be supported. That's on purpose according to comments in the source code.
Here's a reference to the FUSE implementation on Github pointing to a comment that says this.
And the original head on Googlesource (a bit harder to navigate than Github).
Even root cannot bypass it:
shell@android: # id
Two separate issues.
Does your current ROM force vfat or not? For example, I'm pretty sure CyanogenMod does not force vfat and will not forcibly reformat an ext4 when it finds it back to vfat. This is what will happen on some stock roms. If it does not force vfat, great.
Ext4 is almost certainly supported, if it's not forced instantly into vfat. I quote ...
ICS usually has Ext4 support. The Google Nexus S for example had that already with Gingerbread. It depends on your actual phone model however:
This gives you a list of supported file systems. Execute the above command using any terminal app, eg. "System Tuner pro" -> Terminal
You don't need any rooting to view what file system your ...
How can I find out which of the partitions in dev/block is my sd-card ?
By default, external memory card's partition is /dev/block/mmcblk1p1 in all devices.
(Unless if you have partitioned the memory card, then you should know which partition to use, for example, if you have partitioned 32GB memory card as first 16GB as FAT32 partition & second 16GB ...
There's a second way, which should work with multiple operating systems on the computer's end: Taking a look at my list of file Android server apps, you can find some Android file-server apps using WebDAV or Samba, and SSH Clients & Server has some for SSH. Check those with "root capabilities", as you want to access the entire file system read/write.
I don't think I understand your question fully. It's not clear what and how you have tried so far and faced what constraints or limitations in achieving what you want to. But precisely answering your questions:
Mount multi ext4 partitioned external card at boot time, as against manual mounting which I can do
Mounting external SD card is handled by vold. ...
You seem to be missing the point. Actually a few of them:
Emulated SD Card storage has nothing to do with the lack of physical SD card support by some devices.
It is a public storage area by design.
It is implemented via FUSE - it is not an actual block device and you can not simply reformat it to any filesystem you want.
Being able to share files via MTP ...
just partitioning and formatting from adb shell (needs to be umount)
(for doing this in recovery, delete all strings /data/local and su -c from command list)
adb push parted /data/local/tmp
adb shell chmod 0755 /data/local/tmp/parted
adb shell su -c "export PATH=$PATH:/data/local/tmp"
adb shell su -c "parted /dev/block/mmcblk1 mktable msdos"
adb shell su -...
ext4 can be explored without mounting, using debugfs tool. But natively there is no way to access raw filesystem without root access on Android devices. Partitions are enumerated as block devices by Linux kernel, and default permission set by Android's init on block devices is 0600 (can be overridden in uevent.rc) or 0660 in case of vold, owned by 0:0. Also ...
For this you need either access via adb (adb shell) or a terminal app. At the prompt, execute
mount | grep "/data"
The output will have something like
/emmc@usrdata /data ext4 rw,nosuid,nodev,noatime,discard,noauto_da_alloc,data=ordered 0 0
The third column tells you the file system used (in the example above: ext4).
Of course there are also several 3rd ...
Unfortunately, in this case you need buy a new SD Card.
Если у вас не записываются новые данные на карту, а старые после удаления появляются вновь, и форматирование не помогает — карта труп, и восстановить её не удастся!
Translate on English:
New data don't write to SD Card (4.3 item of my question)
Old data ...
UPDATE an better solution https://android.stackexchange.com/a/204616/119381
I could mount and use my pen usb with ext4 after install  but still bery tricky (need root) I need first do
mount -t ext4 /dev/block/sda1 /mnt/sdcard/usbStorage/sda1/
and after umount and mount sda1 with stickmount.
For some reason ...
@djsumdog and @Sopalajo de Arrierez Sorry for the delayed response.
Things got re-orgonized and stream lined. By unifying those that use the fstab files. Such as the init, vold, and recovery all under /fstab.<device> now. Some of which is managed by vold and just off the top of my head it sounds like a permissions issue because with root it's like an ...
Not sure if it is any help, but possibly the issue is that that you are trying to mount in the wrong place ? This is my working script that works on an S3 mini with CM11:
if ! [ -d "$REALMNT" ]; then
mkdir "$REALMNT" || exit 1
mount -t ext4 -o rw,noatime /dev/block/mmcblk1p1 "$REALMNT"
sdcard "$REALMNT" /...
Most secure way:
Backup all apps with their data with TitaniumBackup. Backup all data from sdcard.
Delete some apps to free space on device's memory.
Check if all transfer-checkboxes in s2e are available now. If not - free up some more space.
Transfer ALL apps, data etc back to device's memory in s2e.
Format sdcard again with setting sd-ext partition size ...
I tried LineageOS 14.1(android 7.1.2), it support sdcard(tf-card) formatted in ext4.
Though it format sdcard to vfat defaultly, if you don't make any patch.
The easiest way is to format the sdcard with ext4 using a external usb-sdcard-adapter, then insert the sdcard into phone with LineageOS installed.
Short answer: no.
Although on Android 5 cat /proc/filesystems shows that ext4 is supported it seems that only FAT32 and exFAT (FAT64) are supported on non-rooted devices. I've tried mounting 64GB micro SD card as exFAT without any success.
Using fdisk you can format your card to FAT32 (files over 4GB are not supported):
$ fdisk -H 224 -S 56 /dev/mmcblk0