SMB/CIFS on tab S2? - Galaxy Tab S2 Q&A, Help & Troubleshooting

I bought a tab S2 about a month ago to replace my HP touchpad i've had/been using since the firesale about 4 yrs ago. At the time of purchase, I discovered really quickly that lack of custom roms on the S2 at that time was to much of an issue, and I returned it.
I am however seeing an alpha of CyanogenMod for the tab S2 that's looking pretty close to usable. Given that the tab is also on sale this week, i'm very much inclined to repurchase it, however, question: Does cifs/smb mounting remote filesystems work with the tab s2 rom that was posted?

You can do that on the stock S2 with many different apps in the Play Store. ie. ES File Explorer, Solid Explorer, AndSMB

nrage23 said:
You can do that on the stock S2 with many different apps in the Play Store. ie. ES File Explorer, Solid Explorer, AndSMB
Click to expand...
Click to collapse
Correct me please if i'm wrong, but those applications just allow me to browse remote filesystems from the application itself. They don't smb mount them. It's the cifs.ko file i'm missing (which i'm assuming is included with cm12?)

The cifs.ko file would have to be done via a kernel module based on what I seen from other devices. I do not know if it is included in CM kernels or not.

Did you or anyone get cifs working?
I understand it may be possible to compile a cifs.ko and insmod it.
I don't know how possible that is but whilst I'm googling how to compile I thought I'd see if anyone had done it.
Cheers, Guy

I got CIFS mount working on my 710 by installing Neked_Nook_MM-710-V1 and my fork of @engine95 mm kernel which has the cifs module enabled.

Hi thanks for the reply
I don't suppose you have any tips or suggested posts/ guides I could use to recreate your setup?
I guess I could figure out how to get neked nook flashed based on the guides but the fork of the engine95 Kernel that includes cifs..? I can see a post about the permissive kernel by engine95..
Is your device fully functional and stable now?
Thanks a lot,
Guy

Neked nook is very stable. My tab s2 has not crashed so far with that rom, and my custom kernel. I have attached my boot image. This is a fork of engine95 kernel with just cifs module added. This kernel only works on MM.
Extract boot.zip and flash boot.img via twrp(boot image) or fastboot.
You can use the attached cifs manager to mount your smb/cifs drives on android as a directory.
I am only able to mount it to /mnt/drive. I could not get it to mount to /sdcard.

Awesome thanks
I use cifsmanager on a Chuwi hi12 that i've rooted, it already has the cifs modules and permissive kernel so I am able to mount the shares almost wherever I like - and I use cifsmanager to poke 1TB of satellite images into the map folder of my mapping app on the SD card. But I don't know if cifs was in the kernel (chuwi is on lollipop) already or part of the rooting process, would love to recreate the setup on my samsung as its a far superior device.
I'll give it a go this weekend, really appreciate you taking the time to upload the files you used.
Cheers,
Guy

Hi Currowth,
I know life is too short to help each noob, but can I trouble you for another pointer?
I used the full image of Neked Nook MM v1, and the boot image you provided, and the tablet is working great, and if I cat /proc/filesystems I can now see cifs listed....but..
I can't mount any cifs shares - to anywhere, including /mnt/drive. I get the mount failed Mount: I/O error.
(I think my process was along the lines of: ODIN to cf-autoroot (i'd actually done this a while before starting this thread so including in case its relevant, as i dont know if there is an issue with a /system or systemless root?) then I ODIN'd TWRP on, took a full backup with TWRP and then wiped data,cache, system etc and flashed Neked Nook on, booted into NNook, then went back to twrp and put the boot image you provided on.
Any help greatly appreciated.
If it means anything I'm not trying to watch Batman in bed, I'm trying to put together a repeatable solution for me and my overland traveller friends so we can take huge amounts of map and satellite image tiles completely offline when we're driving our landrovers, toyotas etc across deserts where sat navs or road maps are useless.
thanks again,
Guy
*Edited to add i've been googling the crap out of the mount i/o error, tried a patched version of cifsmanager, tried copying the apk to the system/apps folder and changing its permissions before reinstalling.. no joy

Looks like it can be a root issue. This is what i flashed to get root. "BETA-SuperSU-v2.74-2-20160519174328"
try to install busybox also and try again.
If that does not work:
Can you try to run this in adb shell as root?
mount -t cifs -o username="username",password="password" //smbpath/dir mnt/cifs/dir
replace "username,"password", and smbpath/dir
Guy009 said:
Hi Currowth,
I know life is too short to help each noob, but can I trouble you for another pointer?
I used the full image of Neked Nook MM v1, and the boot image you provided, and the tablet is working great, and if I cat /proc/filesystems I can now see cifs listed....but..
I can't mount any cifs shares - to anywhere, including /mnt/drive. I get the mount failed Mount: I/O error.
(I think my process was along the lines of: ODIN to cf-autoroot (i'd actually done this a while before starting this thread so including in case its relevant, as i dont know if there is an issue with a /system or systemless root?) then I ODIN'd TWRP on, took a full backup with TWRP and then wiped data,cache, system etc and flashed Neked Nook on, booted into NNook, then went back to twrp and put the boot image you provided on.
Any help greatly appreciated.
If it means anything I'm not trying to watch Batman in bed, I'm trying to put together a repeatable solution for me and my overland traveller friends so we can take huge amounts of map and satellite image tiles completely offline when we're driving our landrovers, toyotas etc across deserts where sat navs or road maps are useless.
thanks again,
Guy
*Edited to add i've been googling the crap out of the mount i/o error, tried a patched version of cifsmanager, tried copying the apk to the system/apps folder and changing its permissions before reinstalling.. no joy
Click to expand...
Click to collapse

Thanks for coming back Currowth,
Ok my SuperSU from the original cf-autoroot was 2.46. I assumed I needed to remove that so I ran the unroot function and then used twrp to flash the version you linked to, after reboot SuperSu is at 2.74.
Unfortunately i have the same I/O error.
I also ran adb root from my win10 machine and tried the manual mount command as you suggested - it returns I/O error also. Initially it said 'no such file or directory' so I manually created the dir, with the name the same as the share dir, in /mnt/cifs.
command output
255|[email protected]:/ # mount -t cifs -o username=admin,password=admin //10.10.10.254/Public1 /mnt/cifs/Public1
mount: No such file or directory
255|[email protected]:/ # cd /mnt/cifs
[email protected]:/mnt/cifs # mkdir Public1
255|[email protected]:/ # mount -t cifs -o username=admin,password=admin //10.10.10.254/Public1 /mnt/cifs/Public1
mount: I/O error
One other thing, in the NNook image thread, i see it says make sure you 'ODIN M' first. I'm embarrassed to say i don't know what that means!
update in mean time: i started again, based on doing all the flashing whilst rooted with the older supersu. So i've unrooted, rooted with your beta_xx linked above, wiped system, cache, data and dalvik, flashed the Neked Nook full MM V1 ROM, booted into that, then back to twrp to flash the boot.img you linked above, installed busybox, the linked cifsmanager, tried to mount, then updated supersu as recommended in NNook thread, rebooted and tried mount again but no joy, always getting i/o error.
just for further info, the shared folder does work on my chuwi with cifsmanager, so hopefully that is not the issue. Before I re-did the ROM and the boot image, i installed paragon ntfs and was able to successfully mount an NTFS formatted SD card into the /mnt/cifs/public1 directory.
interestingly cifsmanager couldn't create the directories under /mnt, but i was able to create them manually and then get an IO error. I changed permissions on the /mnt/cifs folder and now it can create the directory when attempting to mount but still gets IO error.
i'm beyond my depth, guess it feels like cifsmanager is either not working or not got permission - or something i've done prior to the NN and kernel flashes has caused an issue.
Its starting to feel like a lost cause. You know better than me - if this is the end of the easy flash-type fixes to try, perhaps I should just throw in the towel.
Thanks again for your help Currowth, you're a gent

I just did a clean install to replicate you issue, but was not able to reproduce it. 'ODIN M' means that install a marshmallow rom first via ODIN. If you already came from a marshmallow ROM, you can ignore it.
The steps i took to ensure that i am was able to get cifs were the following:
First i installed "Neked_Nook_MM-710-V1.zip"
Next I installed "BETA-SuperSU-v2.74-2-20160519174328.zip"
Last i installed "boot.img"
I did this all through twrp.
Reboot, dont setup knox if it asks you to.
Try to do a wipe, then reinstall the following and try again.
Guy009 said:
Thanks for coming back Currowth,
Ok my SuperSU from the original cf-autoroot was 2.46. I assumed I needed to remove that so I ran the unroot function and then used twrp to flash the version you linked to, after reboot SuperSu is at 2.74.
Unfortunately i have the same I/O error.
I also ran adb root from my win10 machine and tried the manual mount command as you suggested - it returns I/O error also. Initially it said 'no such file or directory' so I manually created the dir, with the name the same as the share dir, in /mnt/cifs.
command output
255|[email protected]:/ # mount -t cifs -o username=admin,password=admin //10.10.10.254/Public1 /mnt/cifs/Public1
mount: No such file or directory
255|[email protected]:/ # cd /mnt/cifs
[email protected]:/mnt/cifs # mkdir Public1
255|[email protected]:/ # mount -t cifs -o username=admin,password=admin //10.10.10.254/Public1 /mnt/cifs/Public1
mount: I/O error
One other thing, in the NNook image thread, i see it says make sure you 'ODIN M' first. I'm embarrassed to say i don't know what that means!
update in mean time: i started again, based on doing all the flashing whilst rooted with the older supersu. So i've unrooted, rooted with your beta_xx linked above, wiped system, cache, data and dalvik, flashed the Neked Nook full MM V1 ROM, booted into that, then back to twrp to flash the boot.img you linked above, installed busybox, the linked cifsmanager, tried to mount, then updated supersu as recommended in NNook thread, rebooted and tried mount again but no joy, always getting i/o error.
just for further info, the shared folder does work on my chuwi with cifsmanager, so hopefully that is not the issue. Before I re-did the ROM and the boot image, i installed paragon ntfs and was able to successfully mount an NTFS formatted SD card into the /mnt/cifs/public1 directory.
interestingly cifsmanager couldn't create the directories under /mnt, but i was able to create them manually and then get an IO error. I changed permissions on the /mnt/cifs folder and now it can create the directory when attempting to mount but still gets IO error.
i'm beyond my depth, guess it feels like cifsmanager is either not working or not got permission - or something i've done prior to the NN and kernel flashes has caused an issue.
Its starting to feel like a lost cause. You know better than me - if this is the end of the easy flash-type fixes to try, perhaps I should just throw in the towel.
Thanks again for your help Currowth, you're a gent
Click to expand...
Click to collapse

Thanks Currowth I will try and give it a go tomorrow

Just a thought, are you booting into Android after each step, or doing all the flashing in one twrp session then doing first boot once all items are flashed?

I flashed them in one session without rebooting.

Hi Currowth, I've had a breakthrough!
I re did the NNook/root/boot image in the order you advised.
I have been using a patriot node WiFi disk enclosure, that works with cifs manager on my other tablet. Today I was working away from the WiFi disk so I made do with a windows pc to provide a shared folder. After setting cifs manager up I was able to mount the share under /mnt, but not to any other location. I got back to my WiFi disk, and that continued to give an io error!? So windows worked but the patriot didn't. Weird. I'd ruled the patriot out as it works on my 5.1 lollipop tab.
So I continued to mess around... I had stumbled across another app called mount manager by Ryan conrad (I don't have the link but I have the apk) which has more noob-friendly options and found if I used the ntlmv2 option I could mount the patriot into /mnt !
I did try to get it to mount to other locations and although it succeeded in the app, the mounted folder was empty.
As my app - Osmand+ has the option to manually specify it data folders I created a 777 permission folder for it under /mnt, and then mounted the patriot containing my satellite images into the appropriate empty tile folder.
Working solution!!! If a little messy.
Thanks so much for your help, the Samsung s2 is about 400% faster and more practical than the other tablet so really happy
I don't know why android devices are so limited by manufacturers when the OS is capable of so much, but that's a different conversation haha

A follow up on this in case it is useful to others...
Using /mnt was a bad idea. /mnt is mounted / built on a system partition as a mount point for other file systems or devices (how I have explained it to myself). So anything you add here as a folder gets destroyed when you reboot.
So, I installed my osmand app to /data/osmand and then used a root terminal to run "chmod -R 777 /data/osmand/" to set permissions to 777 on that folder and all subfolders.
After doing this I was able to get mount manager to mount my cifs share into an empty subfolder in the apps folder tree.
I initially tried changing permissions on /data in case it was needed for folders further down the tree, but it was not needed - which is just as well because again, /data is mounted at boot with 771 permissions, so changes 777 back to 771 after reboot. To change that would involve unpacking the boot image in order to edit the init.rc file and then repacking. I didn't bother it was not required.
If anyone wants mount manager, Google 'ryan conrad mount manager' and take your chance with the apk sites, can't remember whigh site I used!

Related

[HOWTO] Mount Windows Shares using Cifs

We now have a working cifs.ko and nls_utf.ko. I was able to mount my win7 shares using cifs_manager and stream a few movies using mvideoplayer from the mounted share.
My initial problem seemed to be that I used the android ndk toolchain and the nook kernel is compiled with the codeSourcery toolchain.
After I re-compiled using the codeSourcery toolchain everything works (at least for now)
For those who want to try this.
Download the cifs.ko and nls_utf8.ko modules.
http://dl.dropbox.com/u/16190398/Nook Color 1.0/cifs.ko
http://dl.dropbox.com/u/16190398/Nook Color 1.0/nls_utf8.ko
Mount /system as read write and create a directory under /system/lib called modules. Copy the cifs.ko and nls_utf8.ko modules under this directory.
Type the following from your windows or linux console
adb shell
#mount -o remount,rw /dev/block/mmcblk0p5 /system
#su
#cd /system/lib
#mkdir modules
#exit
#exit
Now you are back in your windows or linux command prompt
adb push cifs.ko /system/lib/modules
adb push nls_utf8.ko /system/lib/modules
adb shell
#su
#insmod /system/lib/modules/cifs.ko
#insmod /system/lib/modules/nls_utf8.ko
if everything went well you should see no errors.
#lsmod
(THis should give you a list of running modules)
You should see something like
nls_utf8 1856 0 - Live 0xbf153000
cifs 240060 0 - Live 0xbf113000
#exit
#exit
Download cifs_manager from the android market and follow the instructions from
http://forum.xda-developers.com/showthread.php?t=756158
If you have Astro file manager installed then tapping on the mounted share from cifs_manager will automatically launch Astro and list the folder/files under that share.
BTW, you can copy the modules anywhere you like even under /sdcard/modules but the default path used by cifs_manager is /system/lib/modules. You can edit the path from cifs manager to point to the location of your cifs.ko module.
---- 05/06/2011 Update ------------
New version of cifs.ko, slow-work.ko for the 1.2 update. This is for kernel version 2.6.32.9
Note, cifs.ko requires some symbols from slow-work.ko so you will need to load slow-work.ko first. If you use cifs-manager, under advanced settings
you can check load modules at startup via insmod and put the path to multiple modules for e.g /system/lib/modules/slow-work.ko:/system/lib/modules/cifs.ko.
Everything seems to be working fine for me. Let me know if you run into issues.
http://dl.dropbox.com/u/16190398/Nook Color 1.2/slow-work.ko
http://dl.dropbox.com/u/16190398/Nook Color 1.2/cifs.ko
http://dl.dropbox.com/u/16190398/Nook Color 1.2/nls_utf8.ko
Alright! This is fantastic! I can even play my SNES roms over wifi. Thanks for sharing.
The only issue I have noticed is that you need to run the insmod commands every time you reboot the device, and I reboot a lot. For now I'm just using gScript to run the 2 commands whenever I need, but it would be great to have them run when the program starts. I know you're just sharing and this has been mentioned in the app thread, just wanted to make my observations known.
Edit: Found a nifty toggle in the settings of cifs managaer that runs the insmod command at startup. I guess I should look before I complain...
any chance you can provide your build environment, so that the rest of us can work on hacking the kernel.
thetoady said:
any chance you can provide your build environment, so that the rest of us can work on hacking the kernel.
Click to expand...
Click to collapse
Setting up the environment is ridiculously easy esp if you have access to a linux box. There is a very well documented wiki page which outlines the process of building your own custom kernel for the nook color.
http://nookdevs.com/NookColor:_Build_the_Original_Kernel
I downloaded the codesourcery tool chain and did the minimum install as I did not care about the IDE and added the path to my environment. THat was about it. Everything else I followed the wiki page.
Here is my .config file if you like. When you run "make menuconfig" you can choose to load an alternate config file instead of the default. Just put this .config (after renaming it to .config_myconfig or something) under your distro/kernel directory.
Let me know if you need anything specific and I'll try to help. I had to add the .txt extension to the config file for xda upload but you can rename it to anything you want.
Hrm, couldn't get that working on my system.
I'm getting this error:
Mountingthe share has failed with an error.
mount: Invalid argument
Thoughts?
pezhore said:
Hrm, couldn't get that working on my system.
I'm getting this error:
Mountingthe share has failed with an error.
mount: Invalid argument
Thoughts?
Click to expand...
Click to collapse
Seems more like an error in configuring CIFS_Manager.
If the module doesnt load you get a different error from Cifs_Manager
"No such device".
Can you try using adb shell and use insmod to load the module manually.
CHeck with lsmod if the module is loaded.
Can you post you cifs_manager screen for the share that you are trying to mount.
pezhore said:
Hrm, couldn't get that working on my system.
I'm getting this error:
Mountingthe share has failed with an error.
mount: Invalid argument
Thoughts?
Click to expand...
Click to collapse
I'm sure you noticed that there's an error in dascud instructions... the 2nd insmod command has a filename typo..
its should read
HTML:
#insmod /system/lib/modules/nls_utf8.ko
dascud.. thanks a ton... as mentioned in my previous post can you please make the change in your post
madrascafe said:
dascud.. thanks a ton... as mentioned in my previous post can you please make the change in your post
Click to expand...
Click to collapse
Done. Were you able to mount the CIFS shares ?
dascud said:
Done. Were you able to mount the CIFS shares ?
Click to expand...
Click to collapse
Yes. No problem at all. I even opened files from root explored & played some music. Thank you for this
firstly thanks dascud's great work! Awesome!
I found a problem when mount with option iocharset=utf8, cifsmanager report below error message then failed to mount
Mounting the share has failed with an error.
mount: Can not access a needed share library
When I remove iocharset=utf8, mount success but I failed to access any folder including non-western characters.
ctos said:
firstly thanks dascud's great work! Awesome!
I found a problem when mount with option iocharset=utf8, cifsmanager report below error message then failed to mount
Mounting the share has failed with an error.
mount: Can not access a needed share library
When I remove iocharset=utf8, mount success but I failed to access any folder including non-western characters.
Click to expand...
Click to collapse
CIfs_manager only loads the cifs.ko modules. You will need to load nls_utf8.ko manually or using a script to display non-western character set. I think you can use something like gscript for the purpose.
I've followed the instructions, but trying to launch the cifsmanager I get
Application not installed on Device
from reading the FAQ on the cifsmanager page, it says its a problem with the launcher. is this because I've updated the NC to 1.01? thanks
dascud said:
CIfs_manager only loads the cifs.ko modules. You will need to load nls_utf8.ko manually or using a script to display non-western character set. I think you can use something like gscript for the purpose.
Click to expand...
Click to collapse
gscript works for me. thanks a lot!
Sent from my LogicPD Zoom2 using XDA App
pezhore said:
Hrm, couldn't get that working on my system.
I'm getting this error:
Mountingthe share has failed with an error.
mount: Invalid argument
Thoughts?
Click to expand...
Click to collapse
I got this when I put the computer name in the share path. I switched to using IP address instead and it worked.
Hi,
Thanks for the files. I didn't follow the steps in the instructions because there is an easier way. Like mention before, ClifsManager only need cifs.ko.
I basically just copy cifs.ko to my sd card. In the CM setting, just change path to
/sdcard/cifs.ko
Setting up shares is easy too, share path is your ip/<sharefolder>, mount point /sdcard/<foldername> and your user/pwd. This worked with Windows 7.
ClifsManager is definitely one of the must have on the NC.
Is there any chance of getting an tun.ko driver built so that this can be used in conjunction with OpenVPN?
Thanks!
smlong426 said:
Is there any chance of getting an tun.ko driver built so that this can be used in conjunction with OpenVPN?
Thanks!
Click to expand...
Click to collapse
Here you go.
http://forum.xda-developers.com/showthread.php?t=889736
Will this, or any software for that matter, allow me to openly share one or more folders on the NC device (SD card), so I can access that NC shared directory from a windows box and copy files back and forth?
KryptoNyte39 said:
Will this, or any software for that matter, allow me to openly share one or more folders on the NC device (SD card), so I can access that NC shared directory from a windows box and copy files back and forth?
Click to expand...
Click to collapse
What you need is a Samba server for Nook. Looks like this has already been accomplished. Maybe you can post a howto once you get this working.
http://forum.xda-developers.com/showpost.php?p=8239139&postcount=128

sd-card blues...

Hey guys I have a question for you all about sd-cards
I sbf'd
Installed ota 5.7.894 (because of no true .906 sbf I won't flash it)
Regained root
Installed busybox 1.20 (figured newer might be better)
Installed safestrap (tweaked of course 1.08f)
Now
My phone see's the internal/external sd-cards fine and mounts/formats/explores just fine
My laptop also see's internal/external sd-cards just fine
However
Rootbrowser cannot see the sd-card
Safestrap cannot find /sdcard
But
Root explorer can see the internal and external just fine
I have tried sbfing several times to see if it will fix it
I have tried not installing the ota,changing versions of busybox ect..
Why can my phone see and work with the sd-cards just fine but programs cannot?
Because safestrap cannot see the sd-card I cannot create backups..
Any help is greatly appreciated
I think Rick#2 acknowledged this in the safestrap 1.08f thread and had this advice for those experiencing the error:
(For the record, this change almost worked for me - safestrap would now access my external sdcard (/sdcard), but when I would select a zip to flash, it would just take me back to the menu. I dropped a reply with my results in that thread.)
Rick#2 said:
While you're in Safestrap, either go into the console or "adb shell" into your phone. (Remember that for adb to work properly in the recovery your phone has to boot up with the USB cable already connected).
If you type:
Code:
ls -l /dev/block | grep mmcblk0
what output does it provide? For me, it spits out "mmcblk0" but... I'm pretty sure that for those that aren't able to mount their external sdcards it will say mmcblk0p1. In which case, the fix is easy; I'll be sure to update my package, obviously, but for those of you who want to try a little DIY, copy the file /systemorig/etc/safestrap/recovery.zip onto your computer and unzip it. Inside, there's be a file called /etc/recovery.fstab; edit this and change the line corresponding to /sdcard (It ought to be on line 3, or the second line of actual text) to the following:
Code:
/sdcard vfat /dev/block/mmcblk0p1 /dev/block/mmcblk0
Click to expand...
Click to collapse
At this point, after copying the recovery.fstab back to my phone, I assumed I had to correct the permissions of the file, so I did. If I am wrong, someone please let me know!
continuing his reply...
Doesn't really matter how many spaces you have between; ideally you'll just need to hit tab each time.
Hopefully this is what the issue was. I remembered changing that line because I was getting random error messages about my external /sdcard and since I didn't see /dev/block/mmcblk0p1 in my /dev/block directory I assumed I must have made a typo and changed it... here's one tiny example of how easy it is to completely bork these things. Multiply it by a million and you have kernel development...
Click to expand...
Click to collapse
That might work if it was just safestrap having the issue..but its not
Even cwm cannot backup the apps on the sd-card as it cannot see it as well..
But root explorer and the stock file browser can see the internal/external sd-cards
And write on them just fine..and even mount/unmount and format...arrrggggg
This is killin me

mount error while trying to install Xposed Framework

Hi, I'm trying to install Xposed on my Acer A1-810 tablet but I'm getting mount error while doing it. It says that it can't mount /system as red-write and therefore can't create app_process.orig file.
The problem is that my device is rooted and even mounting /system as rw by hand doesn't fix this error.
I remember having the same problem when I tried to install xposed on my xperia phone couple months ago so it seems like it's not a rare issue but I can't find anything on it.
Thanks in advance.
If you use custom Recovery, try another installation method (flashing zip via Recovery)
Yeah, I know about different methods of installation but unfortunately there is no way to unlock bootloader on my tablet so It's classic way or nothing.
bump
bump
bump
czesu said:
Hi, I'm trying to install Xposed on my Acer A1-810 tablet but I'm getting mount error while doing it. It says that it can't mount /system as red-write and therefore can't create app_process.orig file.
The problem is that my device is rooted and even mounting /system as rw by hand doesn't fix this error.
I remember having the same problem when I tried to install xposed on my xperia phone couple months ago so it seems like it's not a rare issue but I can't find anything on it.
Thanks in advance.
Click to expand...
Click to collapse
What SU are you using? I had the same problem on my rooted Z3. As a workaround, I went into SuperSU settings, and disabled "Mount namespace separation". Then, after a reboot, I used Root Explorer to mount /system as r/w, then went back into Xposed installer to install the framework.
It looks like for some reason the Xposed installer can't mount the system partition r/w, but Root Explorer can in my case.
A1-81x does not have a mountable/writable system. The only way to root system is by dumping it to an img file, adding su, etc., to it and then restoring it again. This can be done through the MTK Logger. I have created similar instructions for Acer S1 that has a similar issue:
forum.xda-developers.com/android/development/root-acer-liquid-s1-s510-a10-kk-rom-t3004333
The Iconia toolkit is supposed to do this for you, but some devices and KK versions do not work anymore because it uses the Network Utility. Here's the toolkit:
http://forum.xda-developers.com/showthread.php?t=2240029
With regards to Xposed, I tried adding it to my phone by simply copying the app_process before transfering the img back to my phone:
Code:
sudo cp de.robv.android.xposed.installer_v33_36570c.apk /media/iconia/app/
sudo cp -a /media/iconia/bin/app_process /media/iconia/bin/app_process.orig
sudo cp de.robv.android.xposed.installer_v33_36570c/assets/arm/app_process_xposed_sdk16 /media/iconia/bin/app_process
sudo chmod 0755 /media/iconia/bin/app_process
That didn't work though! So... if anyone from these Xposed threads why just using the new app_process does not work, I'd appreciate the help.
(btw - I did already have the Xposed app installed and confirmed that the app_process is new and the apk is in the system folder)
Regards,
Nika.

Read-only file system - ONLY SOMETIMES - On Android 5.1.1 Flash Drive

I am really stumped here. I have an Android 5.1.1 TV computer, rooted, SuperSU, shared mount namespaces, and generally working as expected. I have Tasker run a shell script, using root, to perform a nightly backup of my /sdcard to a file on a flash drive attached to one of the computer's USB ports. Seems like this should not be a problem. Indeed, at one time this worked but for some reason it started failing a few weeks back and I am trying to ascertain why and how to fix it.
In normal operations, I can access the drive at /storage/udisk0 with a file manager app or with a terminal app. I can read/write without troubles. I don't even require su to be run first.
However, when the backup script runs (confirmed as root using the whoami command), any write access to the flash drive fails reporting a read-only file system. Again, if I try the file manager or terminal apps to write immediately after the backup routine has failed, I have no problems.
I have gone so far as to place mount -o rw,remount /storage/udisk0 in the backup script (again running as root) prior to trying to access the flash drive. Still it fails. I cannot even echo hello > /storage/udisk0/test.txt from inside the script. Of course, this works fine outside of the script.
So I am stuck. I have no idea why this is occurring or how to fix things. I have tried using Chainfire's StickMount app which mounts the flash drive under /sdcard/usbStorage/sda1 and there seems to be no problem in accessing the drive that way. But that was just a test and I would really rather not go that route since things previously worked just fine without.
Any tips/hints/suggestions are appreciated. Thanks!
Edit - please ignore this as I discovered that I was somehow shooting myself in the foot. Seems that somehow a Tasker task was unmounting the usb flash drive in certain circumstances. Why this reported as a "read only" I am not sure. Cheers!

[REQUEST] Systemless Filesystem Drivers for Kernel mode and FUSE support

Hey!
I found this thread with fully compile-able code for android on most hardware platforms, I see it uses system level modifications to do its business, and would love to see it rolled into a magisk module. I regularly use external hard drives on my Pixel 2 XL for a plethora of reasons and really need legit exFat and NTFS support as I use flash kernel and I cant merge the code myself (my only machine couldn't handle the compiling). Anyway, If possible, making a ZIP that is universal and has the binaries for arm, arm64, and all x86 variants would be pretty great!
GitHub: https://github.com/Lurker00/Android-fs
XDA: https://forum.xda-developers.com/android/development/exfat-ntfs-fuse-drivers-easy-build-t3126413
I am not magisk-ninja so anyone who can help make this happen OR educate me in the process of doing so (and who can compile the above Git files for arm64 and send them to me) would be very much appreciated! I am willing to learn to help the community!
Over and out
thomasamas said:
Hey!
I found this thread with fully compile-able code for android on most hardware platforms, I see it uses system level modifications to do its business, and would love to see it rolled into a magisk module. I regularly use external hard drives on my Pixel 2 XL for a plethora of reasons and really need legit exFat and NTFS support as I use flash kernel and I cant merge the code myself (my only machine couldn't handle the compiling). Anyway, If possible, making a ZIP that is universal and has the binaries for arm, arm64, and all x86 variants would be pretty great!
GitHub: https://github.com/Lurker00/Android-fs
XDA: https://forum.xda-developers.com/android/development/exfat-ntfs-fuse-drivers-easy-build-t3126413
I am not magisk-ninja so anyone who can help make this happen OR educate me in the process of doing so (and who can compile the above Git files for arm64 and send them to me) would be very much appreciated! I am willing to learn to help the community!
Over and out
Click to expand...
Click to collapse
Hi. I just started working on this yesterday.
It seems like the perfect method to install additional filesystem support.
I am currently able to manually mount exfat or ntfs sdcard images on my phone (LG Aristo 2, Android 7).
However, a great deal has changed in how filesystem support is added to an existing kernel. Lurker00's code is for Android 4.4.2.
If you want to work together on it, I would be more than happy to do so. I will try to get together what I have so far in a post later today.
FYI, this is a TWRP installable .zip that has Lurker00's compiled binaries for arm64-v8a, armeabi-v7a, x86 and x86_64.
It also installs init.d scripts that supposedly support auto mounting of exFat and NTFS partitions. That part is not working for me, as I think it is setup for Android 5 and before. However the mount binaries work for manually mounting exFat or NTFS partitions.
Just install the .zip from TWRP.
https://forum.xda-developers.com/attachment.php?attachmentid=4600419&stc=1&d=1537390717
Hey! I just saw this, I can try my best but I was assuming it wouldn't be an android thing but rather a Linux/android kernel thing. Is there a way we can Abstract the mounting from android, solely into the kernel, basically leaving Android unaware that the introduced file system is not "officially supported"? I'm assuming FUSE can do this.
Edit: spelling.
tecknight said:
Hi. I just started working on this yesterday.
It seems like the perfect method to install additional filesystem support.
I am currently able to manually mount exfat or ntfs sdcard images on my phone (LG Aristo 2, Android 7).
However, a great deal has changed in how filesystem support is added to an existing kernel. Lurker00's code is for Android 4.4.2.
If you want to work together on it, I would be more than happy to do so. I will try to get together what I have so far in a post later today.
FYI, this is a TWRP installable .zip that has Lurker00's compiled binaries for arm64-v8a, armeabi-v7a, x86 and x86_64.
It also installs init.d scripts that supposedly support auto mounting of exFat and NTFS partitions. That part is not working for me, as I think it is setup for Android 5 and before. However the mount binaries work for manually mounting exFat or NTFS partitions.
Just install the .zip from TWRP.
https://forum.xda-developers.com/attachment.php?attachmentid=4600419&stc=1&d=1537390717
Click to expand...
Click to collapse
How exactly do you manually mount them? (your method)
Edit: also! I was thinking maybe this could become a kernel patch that I could alert kernel devs to? (see my above comment)
And... Thanks for all the hard work to get this going. Tell me how I can help!
thomasamas said:
How exactly do you manually mount them? (your method)
Edit: also! I was thinking maybe this could become a kernel patch that I could alert kernel devs to? (see my above comment)
And... Thanks for all the hard work to get this going. Tell me how I can help!
Click to expand...
Click to collapse
I installed the .zip file that I posted earlier using TWRP.
This installs these binaries to /system/xbin:
mount.exfat
mkfs.exfat
fsck.exfat
dumpexfat
exfatfsck
exfatlabel
mkexfatfs
mount.exfat-fuse
ntfs-3g
ntfsfix
probe​
I then inserted an exFat formatted SDCard into my phone and Android told me the device was corrupt.
That is due to the fact that Android no longer uses probe to determine the filesystem of a device, it now uses a program called blkid.
I would like to figure out how to add a new supported filesystem type to blkid
In any event, I mounted my exFat sdcard by launching a shell from adb, running su to get root and then I created a folder named exfatsd in the /mnt folder. I then ran this command:
mount.exfat /dev/block/mmcblk1 /mnt/exfatsd
The mount succeeded and I was able to browse the sdcard from /mnt/exfatsd
When I typed mount to enumerate the mounts, this is the entry I saw for my sdcard:
/dev/block/mmcblk1 on /mnt/exfatsd type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096)
By the way, even as i was browsing the exfat sdcard, Android still had a notification up telling me that my sdcard was corrupt
Is there any legit documentation on blkid?
I haven't found any, but I haven't given up on this project either. I have been busy on a couple of other things lately, but I still would like to see this work.
Making progress on this on my LG cv1 ROMs
I just wanted to let you know that I now have exFAT and NTFS support working on my phone, even though the kernel does not have support for either filesystem..
I am mounting the Micro SD using a script that runs under Magisk from the:
post.fs.data.d folder
This folder contains scripts that are to run immediately after the /data filesystem is mounted.
My script is checking the Micro SD device using the blkid command.
The blkid command will indicate the type of filesystem residing on the device, even if the kernel won't mount it.
So I use the results from the blkid command to issue mount commands myself using the binaries created by lurker00.
Here is the script I am using, it is really quite short:
Code:
#!/system/bin/sh
#
# mount NTFS / exFAT
# 06/07/2019 by TecKnight
# This script checks the inserted Micro SD--
# If Micro SD is formatted exFAT or NTFS, it mounts it
sdcard_device=`blkid /dev/block/mmcblk1`
sdcard_part1=`blkid /dev/block/mmcblk1p1`
# Uncomment next 2 lines to troubleshoot
# echo $sdcard_device > /cache/sdcard_device.txt
# echo $sdcard_part1 > /cache/sdcard_part1.txt
# output from blkid command looks like this:
# /dev/block/mmcblk1p1: LABEL="e" UUID="CEDC-3F3A" TYPE="exfat"
# create mount point
mkdir /mnt/media_rw/extsd
# mount approriate filesystem if it resides on device directly
case "$sdcard_device" in
*exfat*) mount.exfat /dev/block/mmcblk1 /mnt/media_rw/extsd ;;
*ntfs*) ntfs-3g /dev/block/mmcblk1 /mnt/media_rw/extsd ;;
esac
# mount approriate filesystem if it resides on first partition of device
case "$sdcard_part1" in
*exfat*) mount.exfat /dev/block/mmcblk1p1 /mnt/media_rw/extsd ;;
*ntfs*) ntfs-3g /dev/block/mmcblk1p1 /mnt/media_rw/extsd ;;
esac
FYI: The reason I am checking /dev/block/mmcblk1 (the actual SD card itself) and dev/block/mmcblk1p1 (the first partition on the sdcard) is that depending on where the sdcard is formatted exFAT or NTFS, it could be on the disk itself or within a parrition. This way, I will catch it either way and mount it correctly.
I was thinking of creating a subroutine to cycle through the block devices to determine the sdcard device.
This would make it compatible with practically every device.
Then I could turn the whole thing into a Magisk module.
There are still 2 minor issues that I am having:
1. The phone still displays a notification about the sdcard being corrupt. You just have to clear the notification and it never reappears.
2. The mounted card is not identified as an external SD by android.
However, the exFAT or NTFS filesystem is mounted at /mnt/media_rw/extsd and is browseable and the filesystem is readable and writable.
Tell me what you think.
TWRP installable .zip to install NTFS/exFAT suport
OK, this is a installable .ZIP that will copy the binaries to /system/xbin and copy the mounting script to:
/data/adb/post-fs-data.d.
This should enable NTFS/exFAT support to most phones.
Requirements:
1. You must have Magisk installed
2. Your Micro SD''s device address must be:
/dev/block/mmcblk1. This is the case on most devices running Android 6 or higher.
If your Micro SD's device address is different, you can fix it by modifying:
/data/adb/post-fs-data.d/mount_ntfs_exfat.sh
replacing /dev/block/mmcblk1 with the device address of your external Micro SD.
Download the installer here:
https://forum.xda-developers.com/attachment.php?attachmentid=4773292&stc=1&d=1559992139​
tecknight said:
OK, this is a installable .ZIP that will copy the binaries to /system/xbin and copy the mounting script to:
/data/adb/post-fs-data.d.
This should enable NTFS/exFAT support to most phones.
Requirements:
1. You must have Magisk installed
2. Your Micro SD''s device address must be:
/dev/block/mmcblk1. This is the case on most devices running Android 6 or higher.
If your Micro SD's device address is different, you can fix it by modifying:
/data/adb/post-fs-data.d/mount_ntfs_exfat.sh
replacing /dev/block/mmcblk1 with the device address of your external Micro SD.
Download the installer here:
https://forum.xda-developers.com/attachment.php?attachmentid=4773292&stc=1&d=1559992139​
Click to expand...
Click to collapse
Hi,
I know this post isn't new, but I tried installing this zip file and it tells me that my bootloader in't unlocked even though I'm pretty sure it's unlocked,
any way around this?
rachelld said:
Hi,
I know this post isn't new, but I tried installing this zip file and it tells me that my bootloader in't unlocked even though I'm pretty sure it's unlocked,
any way around this?
Click to expand...
Click to collapse
Same here. Maybe the template is to old? Also could use this module.
aCIDsLAM said:
Same here. Maybe the template is to old? Also could use this module.
Click to expand...
Click to collapse
Try this one:
https://www.androidfilehost.com/?fid=4349826312261782012​I removed the check for
ro.boot.bl_unlock_complete = true
---------- Post added at 11:08 PM ---------- Previous post was at 11:06 PM ----------
rachelld said:
Hi,
I know this post isn't new, but I tried installing this zip file and it tells me that my bootloader in't unlocked even though I'm pretty sure it's unlocked,
any way around this?
Click to expand...
Click to collapse
Try this one:
https://www.androidfilehost.com/?fid...26312261782012​
I removed the check for
ro.boot.bl_unlock_complete = true
I could flash it, using TWRP. In Magisk itself, it told me me, its no magisk module. Anyway. Thanks!
@thomasamas
@tecknight
Is this thread dead ?
Has these drivers been tested on Android 11 ?
I have a custom ROM and would like to use my SDCard with NTFS/exFAT but the ROM only supports FAT32.
KineSight said:
@thomasamas
@tecknight
Is this thread dead ?
Has these drivers been tested on Android 11 ?
I have a custom ROM and would like to use my SDCard with NTFS/exFAT but the ROM only supports FAT32.
Click to expand...
Click to collapse
+1
tecknight said:
TWRP installable .zip to install NTFS/exFAT suport
OK, this is a installable .ZIP that will copy the binaries to /system/xbin and copy the mounting script to:
/data/adb/post-fs-data.d.
This should enable NTFS/exFAT support to most phones.
Requirements:
1. You must have Magisk installed
2. Your Micro SD''s device address must be:
/dev/block/mmcblk1. This is the case on most devices running Android 6 or higher.
If your Micro SD's device address is different, you can fix it by modifying:
/data/adb/post-fs-data.d/mount_ntfs_exfat.sh
replacing /dev/block/mmcblk1 with the device address of your external Micro SD.
Download the installer here:
https://forum.xda-developers.com/attachment.php?attachmentid=4773292&stc=1&d=1559992139​
Click to expand...
Click to collapse
Actually, this still works! Have tested this on A11 OctaviOS GSI. You still need to have Magisk installed, but you don't necessarily have to install this as a Magisk module.
Don't flash the .zip file from TWRP, it doesn't do anything (at least not for me). Just unzip everything in the .zip file into a folder. Then, take the files inside the xbin folder and put it into /system/xbin (as per instructions). Make sure those files have execute permissions. I just set the xbin folder with full execute permissions and apply to all child files in the folder, by using Root Explorer.
Next, do the same thing by taking the script and chuck that into /data/adb/post-fs-data.d. Again, give this script full execute permissions.
Reboot phone and voila, it should work! You should also see that the script is loaded and running in Magisk logs.
Oh and the reason why Magisk is required is because Magisk creates that "post-fs-data.d" folder after it is installed. If you put scripts into /data/adb/service.d or /data/adb/post-fs-data.d, they will automatically get executed by Magisk and run with superuser rights.
chaoscreater said:
Actually, this still works! Have tested this on A11 OctaviOS GSI. You still need to have Magisk installed, but you don't necessarily have to install this as a Magisk module.
Don't flash the .zip file from TWRP, it doesn't do anything (at least not for me). Just unzip everything in the .zip file into a folder. Then, take the files inside the xbin folder and put it into /system/xbin (as per instructions). Make sure those files have execute permissions. I just set the xbin folder with full execute permissions and apply to all child files in the folder, by using Root Explorer.
Next, do the same thing by taking the script and chuck that into /data/adb/post-fs-data.d. Again, give this script full execute permissions.
Reboot phone and voila, it should work! You should also see that the script is loaded and running in Magisk logs.
Oh and the reason why Magisk is required is because Magisk creates that "post-fs-data.d" folder after it is installed. If you put scripts into /data/adb/service.d or /data/adb/post-fs-data.d, they will automatically get executed by Magisk and run with superuser rights.
Click to expand...
Click to collapse
Hello, I did everything as you said and it worked normally, but now SELinux is turned off. This is normal?
i have same issue. But i cant find xbin folder
my device is Samsung M51 on custom os
I converted this twrp zip into a magisk module https://github.com/phhusson/treble_experimentations/files/8948418/ntfs-exfat-support.zip
Hi.
I'm using Ancient OS A13 and I can't access my SD Card.It asks for format and after formatting it still asks for format.
it still works on my pc and twrp recovery. Unfortunately, this fix isn't working. Also, there is not any xbin folder in system.
What should I Do?

Categories

Resources