android 11 root problem miui 12.5 - Magisk

hi.I rooted the phone using magisk, it was installed and apparently rooted, but I have a problem with root file programs like root explorer or es file manager. The problem is that the rw mount does not work or I even have trouble installing busybox.
my phone : redmi note 10 pro
miui version : 12.5.8 and 12.5.9
android version : 11
magiak version : 23

I don't know deeply this case, but it was told that mounting r/w is not possible in recent Androids for system partitions.
However this is Magisk benefit that you put your files to it's tree and Magisk overmounts original files, I guess it does it using option "mount --bind".
You put file into /data/adb/modules/<module_name>/system/etc/<exemplary file> and after reboot you see it under /system/etc/.
At least the above path was checked personally by me by changing /system/etc/gps_psds.conf file to my own.

F308 said:
I don't know deeply this case, but it was told that mounting r/w is not possible in recent Androids for system partitions.
However this is Magisk benefit that you put your files to it's tree and Magisk overmounts original files, I guess it does it using option "mount --bind".
You put file into /data/adb/modules/<module_name>/system/etc/<exemplary file> and after reboot you see it under /system/etc/.
At least the above path was checked personally by me by changing /system/etc/gps_psds.conf file to my own.
Click to expand...
Click to collapse
I want to install a program as a system, but it is not possible without rw mount, do you know the solution?

I presume you have at least one Magisk module installed.
Put it into /data/adb/modules/<any_Magisk_module_name>/PATH_WHERE_YOU_WANT_TO_HAVE_IT/.
If wanted directories don't exist - create them.
Reboot.
Check.
Maybe tune permissions to make file executable.
Report result here.

F308 said:
I presume you have at least one Magisk module installed.
Put it into /data/adb/modules/<any_Magisk_module_name>/PATH_WHERE_YOU_WANT_TO_HAVE_IT/.
If wanted directories don't exist - create them.
Reboot.
Check.
Maybe tune permissions to make file executable.
Report result here.
Click to expand...
Click to collapse
I have no problem installing the module. My problem is accessing the system / app folder and making changes.

What changes do you want to perform?
Change one or more of files there, right?
If so - I repeat.
Put your modified file(s) under /data/adb/modules/<any_installed_Magisk_module_name>/system/app/ and reboot.

F308 said:
What changes do you want to perform?
Change one or more of files there, right?
If so - I repeat.
Put your modified file(s) under /data/adb/modules/<any_installed_Magisk_module_name>/system/app/ and reboot.
Click to expand...
Click to collapse
I do not want to install the module, I want to move an apk file to the system/app folder that is installed as a system and can not be deleted

I wasted my time.
Good luck.

I devoted a while to check that I was right suggesting what I suggested.

Related

[DIY] Manually installing Xposed framework on 4.3 release + leak

I had trouble installing the Xposed framework on the 4.3 leak with the app, so I looked through the source code for it and installed it manually. This will be a guide to help anyone who wants to get the framework on 4.3 and the Xposed framework app will not install it.
This should work on any 4.3 device, such as our Nexus 4 or the GPE devices
EDIT: Still works on release 4.3 (JWR66V)
What you will need
1) The Xposed framework installer app (http://forum.xda-developers.com/showthread.php?t=1574401)
2) A root file explorer of your choice (Solid explorer was not working for me for some reason, so I used ES File Explorer)
3) Root (4.3 root by Chainfire floating around the forums)
4) BusyBox (If you have root, you probably already have it, if not https://play.google.com/store/apps/details?id=stericson.busybox)
*Optional* If your file explorer does not show you any numbers when setting permissions (ES does not), google "CHMOD calculator"
Steps
1) Download the Xposed installer on your phone and install it
2) Navigate to the directory you downloaded the Xposed installer to in your file explorer
3) Rename the installer from "XposedInstaller_x.x.x.apk" to "XposedInstaller_x.x.x.zip"
4) Open the file you renamed, and it should open like any other zip file. Navigate to /assets/armv7-a
5) Copy app_process_xposed_sdk17 to internal memory
6) Open the file again, navigate to /assets/
7) Copy XposedBridge.jar to internal memory
8) Close the .zip, rename .zip back to .apk, we are done pulling files from the app now
9) Go to your internal memory and rename "app_process_xposed_sdk17" to "app_process"
10) Mount /system as read/write if your file explorer does not automatically do so (ES does not do it automatically, Solid Explorer does)
11) Navigate to root, then /system/bin/
12) Rename "app_process" to "app_process.orig"
13) Copy app_process from your internal memory, and paste it in /system/bin/ (So that it replaces the file you just renamed)
14) Long press app_process, click on properties, and change the file permissions to 755 (This is where the CHMOD calculator comes in handy)
15) Change the file Owner and Group of app_process to "root" and "shell" respectively (Also in properties)
16) Go to /data/ and make a folder called xposed
17) Long press the folder, hit properties and set the permissions for the folder to 755
18) While in properties, set the Owner and Group of the folder to "root" and "shell" respectively
19) Go back to where you copied XposedBridge.jar in step 7 and copy it to /data/xposed/
20) Long press it, click on properties, then set the permissions to 644
21) Stay in properties and set Owner and Group to "root" and "shell" respectively
22) Open the installer app, then open Terminal Emulator
23) Type in
Code:
ps
I recommend holding the phone sideways for this
24) Look for de.robv.android.xposed.installer on the right side. Once you find it, write down the first 6 characters of that line (Should be something like u0_a[number][number]) If it doesn't look like that, check the line directly above.
We will call this "$6char"
25) Open the file explorer again, and go to /data/xposed/
26) Make 2 files, name one
Code:
modules.list
and the other
Code:
modules.whitelist
27) Long press on modules.list, hit properties, set the permissions to 644, and change Owner and Group to "$6char" and "shell" respectively
28) Long press on modules.whitelist, hit properties, set the permissions to 644, and change Owner and Group to "$6char" and "shell" respectively
29) Reboot
30) Open the Xposed installer and check if it sees the install. If so, it should be working. Done!
Subscribing to the topic because I want to find out when the original framework gets modified to install properly on 4.3
Sent from my Galaxy Nexus using Tapatalk 4 Beta
Installed? Yes. Working? I can't say. Well, I can say that it isn't working the a Hack Connectivity 1.2 thing I use for tethering my tablet to my laptop. It does show that the framework is installed, but there may be more to be done.
Great work but this is still the SDK17 (JB4.2.2) version of things. Tungstwenty posted updated compiles for SDK18 (JB4.3) last Thursday with a link to a simpler manual install procedure:
http://forum.xda-developers.com/showpost.php?p=43923460&postcount=2249
I then automated that in a flashable zip:
http://forum.xda-developers.com/showpost.php?p=44013064&postcount=2308
dsp4774 said:
Installed? Yes. Working? I can't say. Well, I can say that it isn't working the a Hack Connectivity 1.2 thing I use for tethering my tablet to my laptop. It does show that the framework is installed, but there may be more to be done.
Click to expand...
Click to collapse
Some modules don't play nice with SDK 18, most do in my experience.
osm0sis said:
Great work but this is still the SDK17 (JB4.2.2) version of things. Tungstwenty posted updated compiles for SDK18 (JB4.3) last Thursday with a link to a simpler manual install procedure:
http://forum.xda-developers.com/show...postcount=2249
I then automated that in a flashable zip:
http://forum.xda-developers.com/show...postcount=2308
Click to expand...
Click to collapse
Nice!
Working fine, although I didn't have to install it on the app, and if I tried, the same error would pop up, but it shows that app_process is 34 and XposedBridge.jar is 2.1.4, but no errors at all.
I've been a lurker on XDA for 3+ years now, but this post finally compelled me to register an account.
THANK YOU SO MUCH FOR THIS. I thought I was going to have to go back to 4.2.2 or use the default icons. You saved my phone from being an antique/hideous.
:laugh:
Hey guys,
i tried these steps but i get this tooltip: cannot write /data/xposed/modules.whitelist :/
Hope you guys can help me. I am on PA 3.99 Nexus4.
I'm getting the same error - n4 with latest cm12 nightly (23rd Aug build) :'(
Sent from my Oric-1 micro
Does not work on my HTC One S with odessey rom (jb 4.3). I tried several times, but it always stocks on boot screen. So if anyone - maybe with an HTC device - has got this working and has any suggestion, please let me know.
HTC_HDD said:
Hey guys,
i tried these steps but i get this tooltip: cannot write /data/xposed/modules.whitelist :/
Hope you guys can help me. I am on PA 3.99 Nexus4.
Click to expand...
Click to collapse
I see some things wrong:
You don't have the .jar installed
If it complains about the whitelist file, try running:
Touch /data/closed/modules.whitelist
Then change the permissions to match what the instructions said (755 and root:root )
Sent from my SAMSUNG-SGH-T989 using xda app-developers app
osm0sis said:
Great work but this is still the SDK17 (JB4.2.2) version of things. Tungstwenty posted updated compiles for SDK18 (JB4.3) last Thursday with a link to a simpler manual install procedure:
http://forum.xda-developers.com/showpost.php?p=43923460&postcount=2249
I then automated that in a flashable zip:
http://forum.xda-developers.com/showpost.php?p=44013064&postcount=2308
Click to expand...
Click to collapse
I installed the new app and update and installed it and works fine, i was able to activate the keepchat module also, however when I use snapchat it doesn't save snapchats opened??
Can you please help...
Thanks
I've done everything using adb on my Nexus 7 running CyanogenMod 4.2 nightly 20130824, and it worked like a charm! Finally I'm able to use the "Xposed App Settings" module again.
Thank you!
Erwin
EDIT:
Although I'm wondering what will happen if I update my nightly...
Installing another ROM will overwrite the app_process file. Also, if the xposed framework app won't install without doing the steps I wrote in the first post, try updating super su in recovery.
Sent from my Nexus 4
i fixed it like this
I just copied from another phone the files found in the
Data/xposed and it fixed the error (cannot write data/xposed /modules......)
i want framework for android 4.4
help
yes i have same problem now... my phone is tucked at the boot screen .. i think wipe
yes i have same problem now... my phone is tucked at the boot screen .. i think wipe data or factory rest may help .,. but i will lose my pictures and rest of media .. i donot have any backup:crying:
Is aviable and stable on lollipop?

Root/system folder

hi again
I have small problem that I find quite annoying
Xperia SP on android 4.3 (....1.207 rom)
device is rooted with towelroot + SuperSU,
no matter which file manager with root capability I use and go into SYSTEM folder
and either create new folder and delete it, or copy something from SD to system Audio folder
things get broken...
Folder cannot be deleted even if its newly created, and has nothing init
nothing cannot be copied in Audio folder, as everything gets erased by ... system ?
and my annoyance goes to, if its rooted OS, and I as user have "full access"
why are these things happening ?
is there something I need to learn of how android deals with stuff specially ?
As far as i can remember, i haven't faced this issue in my past (was ages since i last used stock ROM). But i can safely say it might be related to your actual file manager. Can you list me the file managers you used?
I would also recommend trying to use Solid Explorer Classic for the sake of testing, and also Fx File manager.
Basically, when you want to do a change in the system directory, the system partition must be remounted as read-write because the folder resides on a different partition. Android by default mounts system partition as read-only on boot. A file manager is responsible to remount the system partition to read-write before performing an operation on the system partition, and i believe this is where the problem occurs - if the files aren't being copied.
If you can copy the folders but unable to delete, this is most likely a permission issue, and the file manager was probably isn't properly using its root rights.
Please respond with your test with Fx or Solid Explorer classic. You may also try Solid Explorer 2.0 if you wish. NOTE: Please enable Full Logging in SuperSU settings. I'd like to see what is going on (you can too).
Also it is worth to know that although root gives you ultimate rights to modify or alter the OS, there are always technical problems which are caused by various reasons. Plus, there are even barriers of which root power can't even do. For an ultra simple comparison, you can't use root to somewhat modify an app's source code live. But of course, root gives much more freedom to do things compared to no root.
ah yes, you were right, it did depend on file manager after all
tho for unknown reasons 5 of 6 all needed supersu acceess and had root capability, but nothing to operate
I finally found (blue) root explorer, and this one can do it all, sorry for opening this thread
I jumped bit late with whole android thing

[MODULE] Boot Animation Installer

This is a simple module to replace your device's boot animation systemlessly.
Supports any device (probably)
Supports any boot animation (for your device)
Use with Magisk 20.3 or newer
Usage:
Place any boot animation.zip file on root of internal storage
( sdcard/ or storage/emulated/0/ )
Default install location is /system/media
(Most devices use this location)
If your device doesn't place boot animations there, you can create a txt file on the root of internal storage (This file is automatically generated after running the script once) to specify a different install location. It needs to be labeled
Code:
install-location.txt
Contents of it should be the location directory for your device
Example
Code:
/system/media
Or
Code:
/carrier/media
Thanks to @topjohnwu for Magisk
Thanks @Zackptg5 for MMT-Extended and debugging
Tested on OnePlus 7T - Android 10 - Magisk 20.3
Future plans are to add this module to the Magisk Official Repo, but for now downloads are attached here.
Also planned support for more than just bootanimation.zip such as Samsung phones
Script Error
During the installation, the script says "Install-location.txt not round!" In which folder should I place the install-location.txt file ?
LavaboSatanique said:
During the installation, the script says "Install-location.txt not round!" In which folder should I place the install-location.txt file ?
Click to expand...
Click to collapse
( sdcard/ or storage/emulated/0/ )
LavaboSatanique said:
During the installation, the script says "Install-location.txt not round!" In which folder should I place the install-location.txt file ?
Click to expand...
Click to collapse
After installing the first time, if it doesn't find it, it will make one that you can edit. Or you can place it in the root of your internal storage. Usually /sdcard
Thanks! Was going nuts trying to find something that worked for my Oneplus 7T Pro Mclaren.
Will it work with MSM Xtended ROM for oneplus 7T?
vikram. vikie said:
Will it work with MSM Xtended ROM for oneplus 7T?
Click to expand...
Click to collapse
Yes if you set the location to system/product/media
Cm4nXD said:
Yes if you set the location to system/product/media
Click to expand...
Click to collapse
Tried but no luck.
Working fine on Mi 9T. Thanks!
cant seem to get this to work on my pixel 3 running the last Dirty Unicorns.
Got this working. Thanks.
Neither working for me. Only longens the boot. My Device is an FP3 on Andoid 10 and location /system/product/media. Just to give you an short feedback.
I had to unzip the replacer zip file and edit the customize.sh file. Also put everything including your new bootanimation in root of internal storage.
You need to modify these lines:
# Construct your own list here
REPLACE="
$LOCATION/bootanimation.zip
to something like this :
# Construct your own list here
REPLACE="system/media/bootanimation.zip"
after REPLACE= this is the location of your original bootanimation.zip which us usually in system/media but may also be in locations like prism/media/carriers/single/ATT/media/
on newer Samsung phones. The ATT would be replaced with whatever network name your phone is on like VZ, TMOB etc or whatever you find in that folder if your aren't on ATT.
droidzer1 said:
I had to unzip the replacer zip file and edit the customize.sh file. Also put everything including your new bootanimation in root of internal storage.
You need to modify these lines:
# Construct your own list here
REPLACE="
$LOCATION/bootanimation.zip
to something like this :
# Construct your own list here
REPLACE="system/media/bootanimation.zip"
after REPLACE= this is the location of your original bootanimation.zip which us usually in system/media but may also be in locations like prism/media/carriers/single/ATT/media/
on newer Samsung phones. The ATT would be replaced with whatever network name your phone is on like VZ, TMOB etc or whatever you find in that folder if your aren't on ATT.
Click to expand...
Click to collapse
The $LOCATION variable is read from the install location txt file.
I have a rooted OP8T running DerpFest... I got this to work making the following 2 changes:
1. If you edit "customize.sh" file, there is no need for the "install-location.txt" file...
- here is what mine looks like (notice I left all lines in place)
Code:
# Construct your own list here
REPLACE="
system/product/media/bootanimation.zip
"
2. If you unzip the file, you'll see a "system" folder... I basically created the same folder structure from above and then added the "bootanimation.zip" file I want to use. For example, the files and folders within "system" should match ur phones directories. This idea came from a similar Mod I used on the same phone, but with the stock OS.
So once everything was in place, I zipped that along with the edited "customize.sh" file into a new "bootanimationreplacer" file.
If anyone has an OP8T, my modified version should work for you... I also created my own boot animation if you wanna check it out.

[Help] Creating Module for vendor partition changes

Hello Fellow Users,
Let me start with the fact that I have zero experience of making flash modules (TWRP/Magisk) and am just dabbling around.
Some background, I found a TWRP flash zip file which makes changes to vendor partition of Redmi Note 7 Pro (violet) running MIUI OS (Android Q) - this is a sound mod.
Now, with TWRP file the issue is that if it doesn't work or has any issues, we need to dirty flash ROM all times (or atleast dirty flash the vendor partition). There is no one-click remove option.
Hence I thought why can't the same be done via Magisk systemless and dabbled around a bit. Below is my experience of the last 2 days.
Now, coming to the original TWRP file - it copies/replaces three folders with included files to vendor partition. Path of folders is following
Code:
/vendor/etc
/vendor/lib/soundfx
/vendor/lib64/soundfx
These 3 folders and similarly named files within them already exist by default in the phone prior to flashing.
Now basis the Magisk guides I saw around and wiki from @Zackptg5 I did the following changes to the default template:
1) Edited customize.sh to define folders to be replaced
Code:
REPLACE="
/vendor/etc
/vendor/lib/soundfx
/vendor/lib64/soundfx"
2) Since Magisk will always look for the vendor under the system folder and so I moved the vendor folder under system folder
Basis same, created attached module and flashed and it installed.
But then three queries in my mind:
1) Are the new files actually replaced systemless and in-use? My concerns as don't see any intended change in sound
2) Is there a way to check if new files are being used o available to system?
3) Is this method of putting replace under customize.sh file the way out? While studying some similar modules making changes to vendor partition, I found that they have default (no change) customize.sh but rather make changes to common/post-fs-data.sh etc
So, looking forward to feedback from users experienced in making Magisk module. Thanks in advance for your time and efforts!
PS: attached is the WIP module which I wrote and also got installed in Magisk Manager
TLDR: How to make a Magisk Module using TWRP files to ensure systemless modification of folder/files in the vendor partition
1 - The REPLACE variable is used to replace the directories you specify with empty folders, not with what you want to add systemlessly. You might want to follow the advice written in the customize.sh file and read the documentation (@topjohnwu has everything explained there):
https://topjohnwu.github.io/Magisk/guides.html
Edit: If you do want to first "remove" (systemlessly, of course) everything in those folders, then keep them in the REPLACE variable. I just realised that it's a little unclear if that's what you want to do or not...
2 - That's the correct procedure. If all you want to do is to add or replace some files to your device, the only thing you need is to put those files in the /system directory of your module. That's it. The customize.sh file is used if you want to customise the installation logic of your module (not necessary if you're just adding files to your device) and post-fs-data.sh and service.sh are boot scripts to run code at boot (again not necessary if you're just adding files systemlessly to your device, see the linked docs for details).
Right now your module isn't adding anything, since the directories in the module's system folder are all empty. There's nothing to add. All it does is to replace those directories with empty ones (see #1 above). I'd say that using MMT is way overkill for such a simple module...
One you've installed a module Magisk will mount that modules files over your existing ones at boot. If the file under the real system path matches the one found in the module directory (under /data/adb/modules) everything is working as it should.
@Didgeridoohan Thanks for taking our time to give detailed reply and guidance
Finally was able to successfully install the module (named AudioEngine) and I do see files under /data/adb/modules but I have the following issue:
All these new files are under:
/data/adb/modules/AudioEngine/system/vendor folder and not under
/data/adb/modules/AudioEngine/vendor folder
Is that ok? If yes, why do we see /data/adb/modules/AudioEngine/vendor separately too?
Attached is final module as well as the screenshot of /data/adb/modules/AudioEngine/ as seen in file manager.
The /vendor folder is a symlink to /system/vendor, created by Magisk. That's just how Magisk works...
From your screenshot it looks like things are working as they should.
That uninstall script looks unnecessary though. The module isn't placing or altering anything outside the module folder, so when uninstalled there won't be any leftovers anyway.
im also try to do something similar with some audio libs in vendor partition for poco f2 with miui12 however if i add any libs to go into vendor/lib, for some strange reason, i lose wifi. theres no issues if vendor/lib/soundfx or vendor/lib64 is occupied with files just the lib directory only. the actual files that are going into lib are not replacing anything but are new files

Can Xposed hook Runtime.loadLibrary for a system call ?

The custom rom I am using on my device for some reason doesn't have logcat. After a bit of digging up in the root folder, I found out that it was missing logd file which should be present under /system/bin and is necessary for logcat to work. Already tried to copy it from the official rom of my device (I extracted it from system.img) but pasting it manually (tried both a root explorer and adb) in /system/bin won't do anything as any changes made to /system/bin get reverted back automtically after reboot.
So I thought of a method about hooking Runtime.loadLibrary with xposed and redirecting it to logd on my internal storage when it's requested. Isn't that possible ?
Otherwise, do you suggest any other solution?
Do you think I should move the file with twrp if this doesn't work ? (I am avoiding the use of it because it's still unstable for my device and bootlooped a few times.).
Or should I edit the custom rom's system.img and repack it (I'm afraid if it's size changes my device won't boot)
I will be very grateful if someone helps me out
if you copy a file you must set right permissions and ownership

Categories

Resources