yashsingh1/xdaforums huggingface dataset:
[Magisk] ArcherTanu:
2020.12.4 (202012040)

- Better logs

- Cryptsetup is no longer bundled, but it's still supported.

Download link and very simple installation instructions are provided.

- Enhanced wizard.

- fbind --move shows progress.

- Major fixes & optimizations

- Magisk is a strict requirement (standard module installer), at least for now.

- Simplified down to the core to minimize overheard, compatibility and ease maintenance.

- The order of default text editors is now vim|vi|nano.

- Updated documentation

- Posting on behalf of @VR25
[Magisk] ArcherTanu:
This hasn't been pushed to GitHub yet and it is not experimental.

It may not fully work on Android 11, due to its storage isolation feature.

I'm looking for feedback.

The new XDA is not fully ready.

I'm waiting for it.

- Report how it behaves.

- Posting on behalf of @VR25
[Magisk] jimbo77:
I tested on my S20 Ultra (G988N) with OneUI 3.0 (Android 11) and it didn't work. Unfortunately logs folder comes up empty as well :)

Did it work for you?
[Magisk] ArcherTanu:
technically no.partially fbind bind folders successfully with "/data/media/0" but not with "/storage/emulated/0" bcoz google new storage policy . with a10 this is not the issues at all.
[Magisk] alximiktik:
/system/xbin/fbind: /dev/fbind/tmpf[16]: syntax error: unexpected 'fi'

What is mean?

Installed magisk 20.0

Fbind 2019.1.23

Android 10(Lineageos 17.1)
[Magisk] pinfitos3:
Is there a video tutorial for noobs like me? I just can't make it works, and I don't understand well the step by step...

It will be perfect to have a video tutorial for the 2020 version with magisk 20.4. I want to use it for WhatsApp media
[Magisk] quetzalcoatl2435:
Fbind doesn't work with latest magisk (21.3). Worked before I updated magisk.

I'm getting this when trying to manually mount:

Bind-mounting...

</mnt/runtime/default/08F4-2724/.WhatsApp> </mnt/runtime/default/emulated/0/WhatsApp>

mount: '"/mnt/runtime/default/08F4-2724/.WhatsApp"'->'"/mnt/runtime/default/emulated/0/WhatsApp"': No such file or directory

</mnt/runtime/read/08F4-2724/.WhatsApp> </mnt/runtime/read/emulated/0/WhatsApp>

mount: '"/mnt/runtime/read/08F4-2724/.WhatsApp"'->'"/mnt/runtime/read/emulated/0/WhatsApp"': No such file or directory

</mnt/runtime/write/08F4-2724/.WhatsApp> </mnt/runtime/write/emulated/0/WhatsApp>

mount: '"/mnt/runtime/write/08F4-2724/.WhatsApp"'->'"/mnt/runtime/write/emulated/0/WhatsApp"': No such file or directory

- End

Edit: nvm, mounting works again with magisk 21.4. Still doesn't automount, though. I have to manually run fbind -m to mount with v2020.12.4.
[Magisk] DocMAX:
does it work on android 11?
[Magisk] samhhmobil:
You should ask (in that particular thread) if Magisk 20.1 and 20.3 will work with Android 11.

If the answer is "yes", fbind may work too.

samhhmobil
[Magisk] DocMAX:
magisk 21.4 is running fine
[Magisk] salvo6262:
Hi to all. It not work on Android 11. Also the log folder is empty and not responde to terminal.:(
[Magisk] cantenna:
its not tge module, it magisk 13 (it is a beta after all)

happens to me occasionaly regardless of module used
[Magisk] Captain_Throwback:
You have magisk.log too? That'll tell us whether the sdcardfs prop is getting set properly.
[Magisk] VR25:
More info added to fbind command line tutorial.
[Magisk] VR25:
You're welcome. Adding to Captain_Throwback's words -- meanwhile, try changing your paths to internal storage and perhaps obb too. Someone else has had issues with the default settings. You'll find these options on fbind_list.txt.
[Magisk] iroshan:
Thanks for helping.

This is the magix log. Will try changing paths.
[Magisk] Captain_Throwback:
Resetprop seems to be working correctly, though I notice you're not using the latest Beta version of Magisk. The path is more likely your issue.
[Magisk] iroshan:
#internal_storage_path /storage/emulated/0

Didn't work.

#internal_storage_path /data/media/0

Didn't work.

#sdcard

Didn't work.

What else could I try?

Thanks.
[Magisk] VR25:
Play with "Mount Namespace Mode" in Magisk Manager settings, run "fbind -b" on terminal emulator and check the folders after each change.

If that doesn't work, delete /magisk/fbind/system.prop file, reboot.

Update: [MENTION=4413464]iroshan[/MENTION], there's one more thing you can try. If you didn't do the above, start by trying the following:

su
setprop persist.sys.sdcardfs force_off
fbind -b

Don't reboot. Check your folders after running the 3 commands.
[Magisk] cantenna:
I have to say, this is module is at the top of the list for must have magisk modules and it's very refreshing to see probably the first module that alone justifies using Magisk, been waiting to see that for some time now.
[Magisk] p50kombi:
Totally agree, best use of Magisk for me as I don't use android pay nor play poko f-ing mon
[Magisk] PokemonTotalWar:
What does everybody use this for? So far I've only found use for the target command, what does everybody use from_to for? Also, when using from_to, does it always have to use '.fbind/' as the destination, just like in the examples, or is that unnecessary?
[Magisk] VR25:
While "target" binds a given internal storage folder to a directory with the same name on the sdcard automatically, "from_to" allows binding that same folder to a custom one instead. Just like the source path, the destination is totally up to you.
[Magisk] Captain_Throwback:
The reason I don't personally use "target" is because you essentially end up seeing the same folder on Internal Storage and the SD Card when navigating in a file manager. Using "from_to" and a custom folder location under .fbind actually hides the target folders on the SD card, so it's more transparent and cleaner, imo when navigating to files on the device.
[Magisk] umeshbluezzz:
Hey bro plz help. I m just new in this modules stuff.

My internal storage is low and how can i store the games obb to external sd card and play. Please give some steps how do u mount yours $extsd/Android/obb

I m on crdroid 3.3 android 7.1.2 rom
[Magisk] VR25:
Open terminal emulator and run the following commands, one by one:

su
fbind -a obb
fbind -mb

The module installs for you a terminal emulator app named Termux.
[Magisk] umeshbluezzz:
Thanx alot bro.

Tried exactly same as u said but still nthg moved to the sdcard and when i manually moved the obb to sdcard and started the game then the game starts downloading the obb
[Magisk] mattiadj:
How can I bind entire external SD card? Will I have duplicates in gallery? Can I access to internal as always? Thanks

Inviato dal mio SM-G935F utilizzando Tapatalk
[Magisk] VR25:
Which device are you using? Try changing your obb_path in fbind_list.txt.
[Magisk] VR25:
Currently, there's no way I know of to achieve that while hiding duplicates and still having access to the internal storage content.

I have one thing in mind though. I can implement a function that allows you to bind the entire internal storage to a hidden folder in the sdcard. This way, there won't be duplicates in the gallery.

However, you still won't be able to access the "real" internal storage contents unless you break the bonds first by running "fbind -u" command. Then, if you want to rebind without rebooting, simply run "fbind -b." That's as straightforward as it gets.
[Magisk] mattiadj:
May be the correct way but now how can I bind entire external as external? And I will have duplicates?

If u need I can send you my latest mod externalsd2internalsd for note 4.

Inviato dal mio SM-G935F utilizzando Tapatalk
[Magisk] Cherifiali:
Try to use External Card access enabler in Magisk along with fbind, also add the path to your SD card on fbind config file.
[Magisk] salvo6262:
Thanks for reply. The service do not start on boot because the log folder is empty. The config file is not read on startup. On terminal tape fbind nothing happen
[Magisk] Cherifiali:
Tried this in Android 11 LineageOS and got this error
[Magisk] samhhmobil:
When installing, there is written:

WARNING: This module is NOT recommended for devices that running Android 8.0+ (Oreo).

As written (+), this affects even Android 11.

So have a look at "Developer Options" in Settings... External SD card access is possible to enable THERE (at least in LOS 18.1 and earlier) for all apps.

"Settings" ==> "System" ==> "Developer Options" ==> "Force allow apps on external".

samhhmobil
[Magisk] samhhmobil:
OK.

I tested with Android-11. My configuration is:

Xperia-XA2 H3113

LineageOS 18.1 unofficial

OpenGapps-nano (Test)

Magisk-22.0

fdisk 2021.3.4 (available on GitHub)

Mounting extSD-folders during boot works flawlessly to the folders in /data/media/0 but: /storage/emulated/0 is totally empty after that mounts.

Even setting of "intsd_path=/storage/emulated/0" (in config.txt) did not change this behaviour.

@VR25 Thanks for your work, it's great, but how is to fix that?

Thanks again,

samhhmobil

=======================================

Edit:

"intsd_path=/storage/emulated/0" (as in the old example config.txt for extsd_path) is WRONG syntax.

It must be:

"intsd_path /storage/emulated/0" with a blank instead of the equal-sign.

That works!

But next... now it's not possible to mount extSD-folders to /storage/emulated/0.

We'll see, what happens next.

(To be continued...)

=======================================

Edit2:

Yeah, it mounts (manually when the system is up and running) correctly now to /storage/emulated/0...

...but... Owner and Group of the mounted objects are in this case different. Standard in /storage/emulated/0/ is: "root:everybody", but the mounted folders are "root:media_rw", and so nearly nothing else can access it.

But nevertheless it cannot mount during boot...

(To be continued...)

=======================================

Edit3:

For today I give up.

It mounts correctly to /data/media/0 but with insufficient permissions, after that /storage/emulated/0 is not accessible (due to these wrong permissions?).

When setting intsd_path to /storage/emulated/0 (or to /sdcard instead) it doesn't mount while booting. It's possible to mount to that destination manually, but even with wrong permissions.

The switch in the Developer Options of LOS 18.1 ("Force allow apps on external") doesn't seem to do anything. Is that "a bug or a feature"?

(To be continued later... later.......)
[Magisk] samhhmobil:
OK. Let's see...

fbind is working with LOS-18.1/Magisk-22 flawlessly. It mounts cleanly to /data/media[/0].

But the mounted folder(s) is/are not accessible via /storage/emulated[/0].

Even "/storage/emulated" is not accessible by root.

And fbind cannot mount to /storage/emulated[/0] anymore.

I expect this is due to Android-11's new secure storage policy.

Does someone has an idea to trick that out???

samhhmobil
[Magisk] ArcherTanu:
Yes... new Shadow storage policy by google coz this mess..
[Magisk] xn0live:
Hi, does it work on pie?

My Whatsapp have with Video/Images ~8GB can i put it to sdcard and all videos that i recieved go to sd storage not internal storage does the module do that?
[Magisk] theredbaron1834:
Does this no longer work on 11? Just had a LineageOS update to 18, and I can't seem to get it to work.
[Magisk] samhhmobil:
This is due to Googles "scoped storage policy" (forced in Android11).

fbind mounts all folders cleanly to /data/media/0 as it should be, but... you (and all apps) cannot access it in /storage/emulated/0 anymore.

So... no way in Android11 to use it.

samhhmobil
[Magisk] ArcherTanu:
Guyz Any Further Development ??
[Magisk] samhhmobil:
Look there: https://github.com/VR-25/fbind

(Specially the "TODO.txt" there)

samhhmobil
[Magisk] GenTarkin:
Quick question, and forgive me I havent had time to read all 90 pages to this thread. Wanted to see if quick fix / known issue workaround to this:

When I try to use latest fbind from github, using something as simple as "target" results in my entire SD card being mounted in the internal specified folder. Same when I use from_to ... is there known cause / easy workaound for this?

If not, I can provide more details in a later reply. Here is an example of the result:

config.txt contains:

target somefolder/subfolder

Results in:

$internal/somefolder/subfolder -> $rootOfSDCardContents

Rather than:

$internal/somefolder/subfolder -> $rootOfSDCardContents/somefolder/subfolder
[Magisk] GenTarkin:
Update to this problem:

I tried using FUSE via fbind -f ... rebooted and the mountpoints point to correct locations now. Awesome! Problem solved.
[Magisk] iooxda:
I have been struggling to gt fbind working at all. If I try a simple bind config nothing happens. If I try to run the script from the terminal:

fbind -h

nothing, it just hangs until I Ctrl+C

No other options work either. I am using fbind v2021.3.4 with Magisk 20.4 on LineageOS 17.1. Does fbind work at all for this platform? I can't even get the script to run.
[Magisk] Old Jimbo:
The download link seems to be broken. Could someone upload a new link? I want to try the latest version of this app on my system.
[Magisk] DonSanches:
It is on Github: https://github.com/VR-25/fbind
[Magisk] the gladiator:
I'm using fbind 19-1-23 with Oreo and Magisk 17.1 since the beginning. Flawlessly. Now my Whatsapp is no longer able to download the Images (only images, no problem with videos and other media.

- if I delete some existing images it reverts working for sometime

- my fbind config file has Target "Whatsapp"

- I have plenty of room in my SD card (more than 30 Gb) and enough room in my internal memory (more than 5 Gb)

- my Whatsapp images folder has less than 4 Gb size with 21.844 images files

- my Whatsapp video folder is much bigger (23 Gb) but with much less video files (around 3.000)

I have two questions: is a fbind limit or a whatsapp limit ? Any suggestion/work around other than deleting some images ?
[Magisk] Old Jimbo:
Try XInternalSD, see if it suits you.
[Magisk] the gladiator:
I'm noticing now your kind suggestion and...yes, XInternalSD would have been my second choice.

Actually I've solved my issue (I'm sharing this info for everybody's benefit) formatting my SD card as exFat !
[Magisk] b927539:
Nice card :)
[Magisk] qounik:
Does This Still Works? I will Try tonight on My Pie Device
[Magisk] samhhmobil:
Yes, it works with P.
[Magisk] VR25:
Time to revisit this...
[Magisk] VR25:
v2021.11.11-beta (202111110)

- Experimental support for recent Android versions

- General fixes

- Major optimizations
[Magisk] AnonVendetta:
Does this update mean that it will hopefully work with Android 11 now? If so, I'll gladly test. I'd like to try it out on my Galaxy Tab S7+.
[Magisk] VR25:
It's not working on Android 11+ yet.

Tests suggest that it works on 10 and older.
[Magisk] AnonVendetta:
I honestly don't understand why it wouldn't work. A11+ uses scoped storage. But fbind uses root access to do its' thing. Isn't root powerful enough to override or at least mitigate SC restrictions? It's called the superuser acount in Unix-like OSes for a reason, in that it can do nearly anything. I know root can't override kernel restrictions or SELinux, since those run in kernel space, whereas root runs in userspace. And while Android isn't Linux, it does use its' kernel, filesystems, and some other concepts.
[Magisk] VR25:
Android 11 introduces breaking changes that honestly just add to the storage support mess that Google insists on pilling up instead of dumping once and for all.

Making fbind work on A11+ could just be a matter of changing internal and external storage paths and perhaps a couple of mount options.

I'm exploring the possibilities, but I don't have an Android 11+ device yet - thus, the process is slower.
[Magisk] VR25:
Release **v2021.11.13-beta (202111130)** · VR-25/fbind

A versatile Android mounting utility for folders, EXT4 images, LUKS/LUKS2 encrypted volumes, regular partitions and more. - Release **v2021.11.13-beta (202111130)** · VR-25/fbind

github.com

Android 11 users: there's a folder in the repo and zip, incorrectly named androi 11 test.

Refer to the README* in it and see if you can perform the tests described therein.

An army of testers is needed to get fbind working on Android 11+.

It's already working on previous Android versions, up to 10.

P.S., I don't have a phone running Android 11+ to speed up development.

Those who are on kernel 5.4+, please share your /proc/mounts.

SDcardfFS is deprecated and I need to know exactly what replaces it and how that replacement works.
[Magisk] AnonVendetta:
@VR25: As said, I'll gladly test. I'd really love to see fbind working on A11+.

I read that SDCardFS was replaced by the old FUSE implementation, to accommodate Scoped Storage. But I get SDCardFS references when I use the mount command alone.

Maybe you could try working with the underlying real mount points, instead of whatever is overlaid by SS. Like, /mnt/media_rw, instead of /storage/. I've found that I can fully access certain restricted directories this way, like /Android/data.

I'd like to post the results of my 'mount' and 'cat /proc/mounts'. But there are too many characters to fit into a post.

Edit: I'll see if I can copy the terminal output into text files, then attach those.
[Magisk] AnonVendetta:
For some reason I have kernel 4.19.xxx on Android 11 stock. But maybe this info will help anyway. I'll try the zip soon.
[Magisk] VR25:
**v2021.11.14-beta (202111140)**

- `bindfs` binaries (ARM, ARM64, X86 and X86_64) are included and prioritized over `mount -o bind`

- Fixed `umount` issues

- General enhancements

- Updated flashable zip generator

It seems bindfs works even better than the "sugary" mount -o bind appproch.

I look forward to getting feedback on this - especilly from Android 11 users.

The android 11 test kit is still included for those who are willing to help.

However, due to the introduction of bindfs, you guys may want to test vanilla fbind first (no Android 11 specific tweaks).

If you're out of luck, see if setenforce 0 works, just for the sake of testing.
[Magisk] VR25:
Update

It seems your system is using sdcardfs and fuse at the same time, the former for external and the latter for internal storage.

That's a bit weird. /data/media/0 does not play nice with the prefixed paths.

Try the following:

1. Unmount: fbind -u

2. Add intsd_path $prefix/emulated/0 to your config

3. Remount: fbind -m

Someone had that issue and the procedure helped.

Looks like they now have fbind working on Android 11.

Note that this is without any of the Android 11 workarounds from the "android 11 test" folder.
[Magisk] AnonVendetta:
Not sure what you mean by prefixed paths. And I'm assuming that $prefix shouldn't be interpreted literally, but is meant to be replaced by whatever prefix's value is.

Setenforce 0 wont work with Samsung stock kernels. It either will remain enforcing regardless, or in my case Android will hang and reboot.
[Magisk] VR25:
Set all of this aside for now.

Remove all android 11 related config tweaks, upgrade, reboot and test.
[Magisk] VR25:
**v2021.11.14.1-beta (202111141)**

- General fixes & optimizations

- More Android 11+ specific changes; already working at least on a handful of Android 11 devices

- [Wizard] Rename existing destination directories instead of removing them

**v2021.11.15-beta (202111150)**

- Additional Android 11+ fallback storage paths
[Magisk] VR25:
**v2021.11.15-beta (202111150)**

- Added several fallback paths for intsd and extsd for greater out of the box experience

- Enhanced unmount function

- Fixed: fbind hangs when sdcard is unavailable

- General fixes & optimizations

- More Android 11+ specific changes; already working at least on a handful of Android 11 devices

- [Wizard] Rename existing destination directories instead of removing them
[Magisk] stratonz:
Hello, tested latest version on an AICP 11 rom with scoped storage and it seems to work, with some path adjustement for app like WhatsApp, but the read/write on the sd card exfat formatted is very slow (faster than fat32, btw...). Could it depends from fuse?
[Magisk] VR25:
Could

This could be related to the kernel itself, fuse or the bindfs binary I'm using.

The latter is not on the latest version and I don't have the resources to compile it myself yet.
[Magisk] VR25:
**v2021.11.17-beta (202111170)**

- Enhanced storage paths fallbacks logic

- `fbind -v|--version` prints version code (integer)

- Fixed auto-mount

- Full Android 11 support (XDA Recognized Contributor, @jimbo77 tirelessly tested fbind on Android 11, kernel 5.4. Worship this man and get him drunk!)

- General fixes & optimizations

- Increased loop timeout to 5 minutes to accommodate long boot times

- Updated documentation
[Magisk] VR25:
Those who are still facing folder access permissions issues on Android 11 may want to try the attached script.

It must be executed WITHOUT root and the terminal must have storage permissions granted.

The script tests emulated storage prefixes or views (e.g., /mnt/runtime/write) and sets the first that provides read and write access.

sh /sdcard/Download/prefix-test.sh; su -c fbind --remount

/mnt/runtime/write and /mnt/pass_through/0 are what fbind uses (first found, first used).

To get the full list of possible candidates, run:

mount | grep '/emulated type' awk '{print $3}' | sed 's/\/emulated.*//' | grep -Ev '/mnt/androidwritable/0|/mnt/runtime/default'

Edit: the script is supposed to run only for a few seconds.

If it seems stuck, stop the process, add prefix=/mnt/user/0 to your config, reboot and see if the issues persist.
[Magisk] VR25:
**v2021.11.22-beta (202111220)**

- `-t|--test-prefixes`: test internal storage prefixes (views) and automatically update the config.

- Changed the priorities of emulated storage views to better accommodate Android 11+.

- General optimizations

Those who have prefix=/mnt/user/0 in config no longer need it.

Fbind now prioritizes that prefix.
[Magisk] VR25:
v2021.12.2 (202112020)

- Enhanced flashable zip generator;

- Implemented `losetup` wrapper for greater compatibility;

- Improved partition and image file mount logics;

- Preliminary work on the _appdata_ binding wizard;

- Reordered emulated storage prefix fallbacks to cover another Android 11+ quirk.
[Magisk] VR25:
v2021.12.2.1 (202112021)

- Auto-mount hotfix
[Magisk] VR25:
v2021.12.6 (202112060)

- Added TOC to readme;

- General optimizations;

- Improved Android 11+ support.
[Magisk] VR25:
v2021.12.7 (202112070)

- Added prefix troubleshooting info to the readme;

- Bind-mounts will force media store updates;

- Reverted automatic prefix workaround (it breaks bind-mounts on some systems).
[Magisk] stratonz:
Very good job! You'll make android 11 an usable OS. This is the version that works better for my configuration. I need to use prefix=/mnt/runtime/write and (I don't know if it's related to fbind...) sometimes all apps with file permission stop working... is there a periodical remount or some similar?
[Magisk] VR25:
Could you elaborate on the "stop working" part? This has to do with Android itself. It may be breaking fbind bind-mounts. Do you think fbind should auto-remount periodically?
[Magisk] stratonz:
Honestly, I don't know... Neither what logs could be useful to send to you. I thought about remounts cause everything works well and suddenly a lot of apps remains "paralized" after starting.
[Magisk] K0rgar:
The same for me.

I have Xiaomi MI10T lite with the latest xiaomi.eu 12.5 rom, fbind with int_extf config.

Android/data (external data) is not mounted nor media and obb.

After some time phone seems to be stuck or paralyzed like stratonz said.

Reverted back to good old Android 10 and everything is working like charm.
[Magisk] AnonVendetta:
@VR25: For some reason Magisk isn't showing an update for fbind, I'm still on the November version. It's also not showing updates for acc/djs either, but strangely enough it found updates for riru/LSPosed/others. I found them on your GitHub though. Did you stop syncing with the module repo?

I haven't had much time to screw around on Android, due to a massive influx of customers for my online business after over a year of running in the red.
[Magisk] VR25:
Have you tested with prefix=/mnt/runtime/write in config?

If this does not help, try the fbind -t (--test-prefixes) command.

Fbind does not run in the background. Thus, anything that happens after the bind-mounts is caused by something else.