Hi all,
has anyone been able to do this? Following the guide here, no longer works for Android N. The phone boots, but ignores all changes to system. How do I modify both build.prop and hosts? It seems that there are now possibly two system partitions?
Thanks!
Same issue on Nexus 5X
No answer on this? How is it that nobody else seems to be having this issue?
What I've done
It looks to me like everyone has moved to systemless and the /system partition cannot be adequately modified in this way anymore.
Maybe this will help others:
I was modifying the system directory for two reasons: 1. modify /system/etc/hosts to remove ads and modifying build.prop to increase lcd.density. I found that here are the alternatives for each:
Removing Ads
Using something similar to AdAway_systemless_hosts_v2.zip (google it for a copy) and modifying the hosts file in that zip file to be the one I use (and rezipping, deploying on the Android device). This basically mounts over /system/etc/hosts with a custom hosts file instead of actually modifying the system specific hosts file which is no longer writable.
The alternative is to use Netguard which routes non https network traffic through a private VPN where you can block ads according to a hosts file. This seems to work OK, but I have noticed that websites seem to take longer to load.
Modifying lcd.density
You can use the same trick as AdAway_systemless_hosts_v2.zip uses, but modify it to also mount a modified copy of build.prop. Alternatively just use the Android N Display settings that are small (what I did anyhow).
I have been able to edit build.prop and still maintain systemless root.
Sent from my Nexus 6P using XDA-Developers mobile app
I was able to modify my system partition; by installing busy box to /su/xbin and running "su busybox mount -o rw,remount system" (no quotes) in material terminal with root
ArminasAnarion said:
I was able to modify my system partition; by installing busy box to /su/xbin and running "su busybox mount -o rw,remount system" (no quotes) in material terminal with root
Click to expand...
Click to collapse
Have you been able to do this with simply fastboot boot <twrp-image>, mounting system in rw mode and modifying it? I did that as I didn't want to root the phone, and while it looks like it did the write, it does not affect the system partition that is used by the phone after boot. I think there are two system partitions, and twrp mounts only one in rw mode. It does seem like it may be possible to do what you say using adb though after the phone is fully booted up. I'll try that!
dontblinkwatchout said:
Have you been able to do this with simply fastboot boot <twrp-image>, mounting system in rw mode and modifying it? I did that as I didn't want to root the phone, and while it looks like it did the write, it does not affect the system partition that is used by the phone after boot. I think there are two system partitions, and twrp mounts only one in rw mode. It does seem like it may be possible to do what you say using adb though after the phone is fully booted up. I'll try that!
Click to expand...
Click to collapse
I had the same problem. I don't want to root but I do make a few changes to my /system partition through adb in recovery such as the hosts file and some font files (namely the Emoji font file). I had modified stock boot image to not enforce encryption. I would boot back up into the system and couldn't see any changes made. The only thing I found that worked was installing a custom kernel (I use ElementalX). After that, changes I made to /system in TWRP were reflected in the OS. I don't know enough about kernel development to understand why on (mostly) stock kernel my changes couldn't be seen but on a custom one they were.
I never had this "problem" prior to Nougat.
Same issue here. Something has changed with how this is handled in Nougat.
I don't want to root just to overwrite the hosts file...
I'll keep debugging but my capability in this is definitely limited!
I use a similar approach as described in the OP's linked guide except I use my own recovery image that I compiled as an engineering build from source, and I am also experiencing the same behavior. Modifying the hosts file seems to have no impact on the system though the changes persist. Comparing the host file I installed and the host file from the latest Nexus 5X image with 'ls -lZ' the SELinux info looks to be the same. The only information that appears to differ is the modified date and one additional line in the file itself for testing. I thought I was doing something wrong with my hosts file, even though I have been using this approach since Android 6.0. However, I agree, it appears that changes to system are being ignored. Further, changing the system partition no longer shows the red warning at boot about the system being corrupted.
---------- Post added at 09:58 PM ---------- Previous post was at 09:38 PM ----------
DanRyb;68654939 I would boot back up into the system and couldn't see any changes made.[/QUOTE said:
Oooh. You're right. Neither /etc/hosts or /system/etc/hosts is modified in the booted OS after I modify it from live image, but the change is retained when I reboot into live image and mount system. Hmm, so either:
1) Need to figure out where the the system files are being loaded from and modify them from live image if possible
2) Use a mechanism similar to what dontblinkwatchout described AdAway is using of having a custom mount setup (have to reverse engineer AdAway I guess to see what it's doing)
3) ?
Click to expand...
Click to collapse
There's absolutely no way to modify or mount system partition r+w unless you disable dm-verity
Enviado desde mi Nexus 6P mediante Tapatalk
alexiuss said:
There's absolutely no way to modify or mount system partition r+w unless you disable dm-verity
Enviado desde mi Nexus 6P mediante Tapatalk
Click to expand...
Click to collapse
dm-verity has been around since Android 4.4. Are you saying there is something new around this in Android 7.0?
You can modify the system partition by compiling an engineering build of Android and booting it, then mounting the system partition and modifying it. I've been doing this to update the hosts file since Android 6.0 for every OTA update (since more recently OTA updates bomb out unless you reflash the clean "uncorrupted" system.img first). Changing the system image before Android 7.0 did result in an extra screen with a red warning about a corrupted something or other (I'm sure because dm-verity checking failed). Regardless, you can still change the system partition, the information just no longer seems to be used, which is a bit perplexing to me atm.
crashenx said:
dm-verity has been around since Android 4.4. Are you saying there is something new around this in Android 7.0?
Click to expand...
Click to collapse
Android 7.0 introduced redundant bits for reed solomon forward error correction into the system and vendor partitions and code in the kernel to perform the error correction.
Your changes are being written to emmc but when you boot with 7.0 kernel with dm-verity enabled your changes are being treated as data corruption and on-the-fly error corrected back to original.
You can see your changes if you boot into twrp because it has dm-verity disabled. However if you boot into android with dm-verity enabled it will look like original image again even though your changes are technically still there.
It took me a day to figure out what was really going on because i initially had no idea they added this feature to Android N.
The simple way to disable dm-verity is to install SuperSU, but you can also accomplish the same patching your own kernel, installing pre-patched kernel, installing custom kernel, etc.
sfhub said:
Android 7.0 introduced redundant bits for reed solomon forward error correction into the system and vendor partitions and code in the kernel to perform the error correction.
Your changes are being written to emmc but when you boot with 7.0 kernel with dm-verity enabled your changes are being treated as data corruption and on-the-fly error corrected back to original.
You can see your changes if you boot into twrp because it has dm-verity disabled. However if you boot into android with dm-verity enabled it will look like original image again even though your changes are technically still there.
It took me a day to figure out what was really going on because i initially had no idea they added this feature to Android N.
The simple way to disable dm-verity is to install SuperSU, but you can also accomplish the same patching your own kernel, installing pre-patched kernel, installing custom kernel, etc.
Click to expand...
Click to collapse
That's good info and makes total sense. Thanks! Pretty neat actually, just a bummer for me.
Yeah so SuperSU path is not really one I want to pursue. I could learn how to update the dm-verity shas used for verification. That'd probably be the most secure, but it's gonna be a PITA I bet. I imagine I'd need to compile my own image similar to how I made my live image and update a few things. Might have to deal with encryption which is probably an even bigger headache. Also, I bet it would break OTA and have to reflash to update, though that's true now.
I'm really curious what AdAway is doing. Maybe I should pursue reverse engineering that.
I really appreciate you pointing us in the right direction.
I am glad found this thread..willing to assist here without permanent root..
Ericarthurc said:
I was able to modify my system partition; by installing busy box to /su/xbin and running "su busybox mount -o rw,remount system" (no quotes) in material terminal with root
Click to expand...
Click to collapse
I was trying to create a /system/xbin/post-boot but couldn't remount /system, and so I added busybox to the front of my command. I am not using adb so I cut that part off. Thanks a lot!
Welcome to a simple tutorial that will help OnePlus 2 (OP2) owners and possibly other device owners install custom ROMs in such a way that eliminates most, if not all possibility of system errors, resulting in the longest lasting and most stable custom ROM installations!
DISCLAIMER: Your Warranty was voided long before you were ever even ready to complete this tutorial.
Therefore, I am not responsible for a broken or bricked device, especially if your rage towards a bricked device caused you to throw your device into a wall. This tutorial is actually designed to reduce the amount of "Rage Quitting" on modifying your device.
This Tutorial assumes you have already completed OEM Unlock, Root, installed TWRP or other Custom Recovery, and are basically ready to install a custom ROM on your OP2.
Before beginning, backup any files you may need, I upload mine to my Google Drive then download after completing the ROM install. You can also use Nandroid to backup your current system (optional as there are methods to restore even the most bricked OP2 that doesnt even have a working recovery or OS, trust me I have done it at least 5 times because I constantly try new ROMs and mods). There are three necessary prerequisite steps required to complete before using this method to install your custom ROM. These prerequisites are listed below:
Prerequisite One: Ensure your OnePlus 2 has been FULLY updated on the stock Oxygen OS ROM before you install your TWRP or other Custom Recovery. If not, Return to factory ROM, Un-Root, and update until you cannot update any more, then return to this tutorial afterwards.
Prerequisite Two: Ensure your OnePlus 2 has the latest update of the TWRP or other Custom Recovery. The Latest TWRP for the OP2 can be found here: https://twrp.me/oneplus/oneplustwo.html
Prerequisite Three: Ensure your device can receive files via ADB PUSH while in custom recovery. To do this, reboot your phone into recovery, connect to PC, hold down the "Shift" key and while holding, right-click in a window containing a file you wish to transfer, and select "Open Windows PowerShell Here" or "Open Command Prompt Here". Use the command "adb push Lin15.zip /sdcard" (remove the quotes, "Lin15.zip" is an example file) to push the file onto your device. Then, if your custom recovery has a file explorer as TWRP does, use it to navigate to /sdcard and see if the file is there. Also, your windows should show a successful transfer and should say "Okay" underneath your command line. If unsuccessful, install OnePlus 2 Drivers along with Universal ADB drivers and then try again. If still unsuccessful, try TWRP 3.1.1-0 (Download Link Below 2 Paragraphs in Blue Text Section). If unsuccessful at this point, there is something wrong as Win 10 with OP2 Drivers, Universal ADB Drivers, and TWRP 3.1.1-0 is my exact setup.
There are many custom ROMs available for the OP2. The method for installing custom ROMs is generally the same, but can differ in certain ways. This method SHOULD work for your custom ROM, but is not guaranteed. If this method fails, then visit your custom ROM's development page, and follow their instructions instead.
In this Example, I will be installing the latest (at the time of writing) Lineage 15 Android Oreo 8.0 Third Alpha Build OS/ROM and will be including instructions for the proper installation of the A.R.I.S.E. Magnum Opus System Sound Mod (Based on Viper4Android). I will include links to downloads, but their main XDA page can be found here: https://forum.xda-developers.com/android/software/r-s-e-sound-systems-auditory-research-t3379709 This installation will use the latest (at the time of writing) TWRP 3.1.1-0 Custom Recovery.
INSTALL TIME:
Begin by rebooting into recovery. Under "Wipe" options, you will first want to format data, select the option and type "yes" when prompted to confirm the operation. Repeat this step once again to ensure a squeaky clean wipe.
Next, also under "Wipe" Options, select the "Advanced Wipe" Options. You will then select EVERY BOX (Yes, this includes Internal Storage and will wipe EVERY SINGLE FILE from your device, this is INTENTIONAL and is why you MUST have a device that can accept ADB PUSH files in recovery!). This will wipe every file from existence, completely. This is what allows such a stable, squeaky clean install, as not a single piece of evidence from any other ROM/OS will be left behind, leaving basically no chance for errors or conflicts during installation of new ROM. You will want to complete this step again to ensure a squeaky clean wipe.
Navigate to the TWRP Home/Start-Up Screen and connect your device to your PC (WARNING: DO NOT USE ADB SIDELOAD MODE!!! I HAVE NEVER, EVER HAD A SUCCESSFUL ROM INSTALL FROM SIDELOAD!!!). Simply leave the device at this screen, and do not touch it. At this point, if you do not have all the necessary files to install your custom ROM and mods, you will need to download them now. I ALWAYS recommend the "Pico" Gapps package if installed in a ROM (some ROMs include Gapps). The reason for this is because the Pico package includes the bare minimum to get Google Play Services and Google Play Store up and running. This eliminates unwanted Gapps and reduces the chance of installation conflicts. The golden rule is: The less you install in TWRP, the better. If you want more Gapps, then after setting up the phone at the end of the ROM install, just search for them in the Google Play Store, its how I get mine every time. In the case of Lineage 15, the list of downloads is below:
Lineage 15 OS/ROM: https://www.androidfilehost.com/?fid=961840155545594199 (Dev Page: https://forum.xda-developers.com/oneplus-2/development/rom-lineageos-15-0-t3668056)
Android Oreo 8.0 Pico Gapps Package: https://www.androidfilehost.com/?fid=817550096634796662
Super SU 2.82 Root Installer (Select the Flashable 2.82 ZIP file): http://www.supersu.com/download
BusyBox Flashable Zip Package (Large page with many tools, scroll down to find the BusyBox tool): https://forum.xda-developers.com/showthread.php?t=2239421
A.R.I.S.E. Magnum Opus System Sound Mod (Select the "ARISE+Deuteronomy+2.94+Modular+AROMA+Installer.zip" Option): https://www.androidfilehost.com/?w=files&flid=176171
Once all necessary files are downloaded, give them their own folder inside Windows and rename all of them to something simple as shown here:
View attachment 4273530
(Lin15.zip, Gap.zip, SU.zip, Busy.zip, Arise.zip)
Ensure your device is in custom recovery at the home/startup screen and is plugged firmly into your PC. DO NOT navigate ANYWHERE inside custom recovery or touch the device.
Now we will ADB PUSH these fresh install ZIP files over to your device. Inside the window containing your downloaded ROM files, hold down the "Shift" key and while holding, right-click and select "Open Windows PowerShell Here" or "Open Command Prompt Here". To ADB PUSH files, simply type "adb push FILE.zip /sdcard" where "FILE" is the target file and "/sdcard" is the target destination. Correct capitalization of letters is IMPORTANT! My window looked like this when finished:
View attachment 4273532
(adb push Lin15.zip /sdcard, adb push Gap.zip /sdcard, adb push SU.zip /sdcard, adb push Busy.zip /sdcard, adb push Arise.zip /sdcard)
Your ROM files should now appear on your device at your target destination. Disconnect your device and use the Custom Recovery File Explorer to navigate to the destination to confirm. "/sdcard" is the easiest to use destination.
Now we will install ALL of the ROM files, back-to-back with NO REBOOTS, NO WIPES, NO OPERATIONS WHATSOEVER INBETWEEN INSTALLS, THIS IS EXTREMELY IMPORTANT!!! Navigate to the Custom Recovery "Install" Section and navigate to your destination for your files. Flash the ZIP files in this order EXACTLY: Lin15, Gap, SU, Busy, Arise.
The A.R.I.S.E. Instillation is an AROMA style installer. It is a HUGE Sound Mod suite containing many options. Select the sound mods you like, but there is a module that is REQUIRED and 4 others that are highly recommended, listed below:
CORE Module is REQUIRED!!! Uninstall MusicFX, Remove Deep_Buffer, Set SELinux to Permissive, and SD Card Permissions fix are all highly recommended no matter what the ROM or mods, just in case. If these problems do not exist, selecting the options will not change anything, so do not worry.
My personal A.R.I.S.E. install included the following modules and delivers absolutely AMAZING sound quality while keeping installed modules to a minimum (otherwise known as a "Lightweight" install): Core Module, Viper4Arise 2.5.0.5, Viper4Arise Profiles, Uninstall MusicFX, Remove Deep_Buffer, Set SELinux to Permissive, and SD Card Permissions Fix. Its a highly recommended package
ONLY AFTER ALL FILES HAVE BEEN INSTALLED, navigate to Custom Recovery "Wipe" section, select "Advanced Wipe" and then check the "Dalvik Cache" and "Cache" options, DO NOT SELECT ANYTHING ELSE OR YOU WILL NEED TO START COMPLETELY OVER, WIPE PHONE AND RE-ADB PUSH FILES TO ENSURE A SQUEAKY CLEAN INSTALL!!! Perform this step again to ensure a squeaky clean wipe.
YOU ARE NOW FINISHED WITH A SQUEAKY CLEAN ROM INSTALL BUT THERE ARE A FEW MORE RECOMMENDED STEPS!
Recommended: DO NOT immediately reboot into system after install. Instead, navigate to Custom Recovery "Reboot" Section and select "Power Off" Instead. Once device is off, plug into A/C Outlet charger (DO NOT USE A PC, DETECTION OF PC WILL CAUSE DEVICE TO BOOT), and allow to fully charge, then cool off. This will ensure that Battery Calibration is set to 100% upon Initial Boot
Initial Boot: Boot Device, Initial boot will take around 5-10 minutes. DO NOT TOUCH THE DEVICE DURING THIS TIME. When you see the startup screen, STILL DO NOT TOUCH THE DEVICE! Instead, allow device to sit and idle, allowing the ROM to "Settle" for a MINUMUM of 5 minutes, 10 is recommended. Then, BEFORE setting up the device, reboot and allow another 5 minutes of "settling".
Run through the Device Initial Setup. You will want to select any desired options now, and avoid having to search settings later. Once at Device Home Screen, immediately open app drawer and select SuperSU app. Inside SuperSU, navigate to settings and apply the following options:
Disable Re-Authentication, Default Access: Grant, Enable SU During Boot, Trust System User
These SuperSU options will allow mods to function with complete stability and no interference, leading to a smoother experience. After, completing this step, Reboot your phone and ENJOY YOUR NEW, ROCK-SOLID, STABLE ROM INSTALL!!!
Nice job bro thanks working here!
Nopes. It did not work out for me. I flashed ROM, Gapps, and Magisk before and landed on your thread and flashed only the ARISE zip. But it did not flashed properly and I got an error 1 or something like that. What could be the reason?
Why are people recommending using adb push to get the files on the phone.
I always just drag and drop them on the phone in windows explorer, never had any problems.
Only time I ever need adb is for flashing recovery.
shailinder said:
Nopes. It did not work out for me. I flashed ROM, Gapps, and Magisk before and landed on your thread and flashed only the ARISE zip. But it did not flashed properly and I got an error 1 or something like that. What could be the reason?
Click to expand...
Click to collapse
Now I tried it again and this time flashed busy box as well but the same error.
Screen shot for your reference. Is there another way to install it?
shailinder said:
Nopes. It did not work out for me. I flashed ROM, Gapps, and Magisk before and landed on your thread and flashed only the ARISE zip. But it did not flashed properly and I got an error 1 or something like that. What could be the reason?
Click to expand...
Click to collapse
Error 1 is what occurs on the non-AROMA older A.R.I.S.E. package install if you have not set up any settings in the customizable .prop file that comes with the ZIP. Upon initial install, this "Error 1" will install a .prop file under /sdcard. If you open this .prop file with a text editor, you can then use examples such as "install.core=true" to install the core. However, the AROMA installer requires none of this. And as far as I experienced, NONE of the other packages work on Lineage 15. You will want to delete whatever A.R.I.S.E. zip you have now, and follow my download link for the AROMA version. Then, wipe everything and perform a "Squeaky Clean" ROM install as shown in this thread, and it should work and be rock-solid stable.
pops106 said:
Why are people recommending using adb push to get the files on the phone.
I always just drag and drop them on the phone in windows explorer, never had any problems.
Only time I ever need adb is for flashing recovery.
Click to expand...
Click to collapse
Well we all know performing this method of install is not a requirement for installing ROMs, but it is the most fool-proof method and ensures there are no file conflicts between old and new ROMs/OS's. I cannot even tell you how many times I have done quick, minimal work installs and end up with tons of errors, laggy or freezing screens at random times, force closing apps, busybox system link failures, the list goes on and on. After using the "Squeaky Clean" method, I can honestly say Lineage 15 is as stable as the Stock/Factory Oxygen OS.
wallacengineering said:
Error 1 is what occurs on the non-AROMA older A.R.I.S.E. package install if you have not set up any settings in the customizable .prop file that comes with the ZIP. Upon initial install, this "Error 1" will install a .prop file under /sdcard. If you open this .prop file with a text editor, you can then use examples such as "install.core=true" to install the core. However, the AROMA installer requires none of this. And as far as I experienced, NONE of the other packages work on Lineage 15. You will want to delete whatever A.R.I.S.E. zip you have now, and follow my download link for the AROMA version. Then, wipe everything and perform a "Squeaky Clean" ROM install as shown in this thread, and it should work and be rock-solid stable.
Click to expand...
Click to collapse
Thanks. I got it install using a different method and it is working wonderfully.
wallacengineering said:
Error 1 is what occurs on the non-AROMA older A.R.I.S.E. package install if you have not set up any settings in the customizable .prop file that comes with the ZIP. Upon initial install, this "Error 1" will install a .prop file under /sdcard. If you open this .prop file with a text editor, you can then use examples such as "install.core=true" to install the core. However, the AROMA installer requires none of this. And as far as I experienced, NONE of the other packages work on Lineage 15. You will want to delete whatever A.R.I.S.E. zip you have now, and follow my download link for the AROMA version. Then, wipe everything and perform a "Squeaky Clean" ROM install as shown in this thread, and it should work and be rock-solid stable.
Click to expand...
Click to collapse
Fair enough
And thanks to the opp for the thread
pops106 said:
Fair enough
And thanks to the opp for the thread
Click to expand...
Click to collapse
No problem, the thread was a random idea after accidentally stumbling across the fact that TWRP can accept ADB PUSH files. I honestly had no idea, and was stuck in a bootloop after a custom ROM failed to install correctly. I had no backup and was getting ready to just give up, enter Qualcomm Diagnostics Mode and perform the Oxygen OS Firmware/Software OEM install when I decided to reboot into Recovery and attempt SideLoad of a previous ROM that had worked.
This did not work, as sideload is apparently a dumb way of doing things. I never understood why sideload tries to install a file that is in the middle of transferring. Just seems like a flawed concept to me. Anyways the install was very slow, buggy and laggy, and when finished had installed such a corrupt system, due to installing a partially transferred file while it is being transfered and then sticking all the pieces together, was so unstable that more than a minute idling at the home screen or any attempt to open ANY app caused the phone to reboot.
Sideload is a worthless feature in my opinion and I will never use it for any operation ever again so long as I live. So all of a sudden I decide to plug the phone into my PC while in recovery and observe how Windows detects the phone when you turn Sideload mode on and off, as to try and troubleshoot my sideload to get an effective install (which by the way will never happen, to this day I have never had a sideload install work correctly), and noticed when I turned it off, the device still showed up as a recognized Android device under Windows Device Manager. Then, you may not believe me on this, but I did actually randomly decide that more than likely, it was interfaced on Universal ADB, and that it I typed "adb devices" into a windows command prompt, it should show, and it did. The rest is history.
I know the feature had been around for some time as I found out later on, but I had never seen any information about it anywhere on any thread, and even when I asked for ideas for troubleshooting, while XDA users helped for sure, I guess they just didnt have that idea, and gave me alternative routes as well such as the Qualcomm Diagnostics full OEM wipe method which I was already familiar with. This does show, however; that experimenting and troubleshooting on your own can be a great way to learn new things!
Hi, thank you for the post.
I am enjoying v4a bcoz of you only.
I got a query btw, can I install dolby & atmos along with v4Arise?
Please add a note for HaruhiOS
HaruhiOS checks if a clean flash is required before flashing and will abort to tell the user that a clean flash is necessary if ever. It is my design goal to avoid the need for clean flashing as much as possible
Due to this the user should avoid unnecessary clean flashing, which actually ruins performance and battery life and reduces device health when using my ROM
if already.....
hey,
if one would already go thus far to wipe internal storage as well, i'd say that it's making sense to format storage by changen from ext4 to ext2 and back to ext4. wiping is not always getting us rid of all residues while changing the file system and going back to the one we want/need does indeed reformat everything, this is a procedure that is useful once the storage card is corrupted.
magnamentis said:
hey,
if one would already go thus far to wipe internal storage as well, i'd say that it's making sense to format storage by changen from ext4 to ext2 and back to ext4. wiping is not always getting us rid of all residues while changing the file system and going back to the one we want/need does indeed reformat everything, this is a procedure that is useful once the storage card is corrupted.
Click to expand...
Click to collapse
Apparently e2fsck and fsck.f2fs is too hard
Once the storage card is corrupt no formatting will help you anyways
Just stop believing in dumb stuff. If you have to clean flash every other build a ROM developer releases they messed up big time and they should fix their code
Hey, I'm having an interesting issue that I haven't seen before on my previous phones. Normally, I'll occasionally flash magisk to root and update my hosts file with Adaway (and several lists that I've added to it which seem to block most/all ads), then unroot my phone. I noticed with the 6T that after I unroot (restore images, then uninstall through Magisk Manager) that the hosts file seems to be restored back to the stock file without any of my blocks. Am I doing something wrong? Thanks!
the00guy said:
Hey, I'm having an interesting issue that I haven't seen before on my previous phones. Normally, I'll occasionally flash magisk to root and update my hosts file with Adaway (and several lists that I've added to it which seem to block most/all ads), then unroot my phone. I noticed with the 6T that after I unroot (restore images, then uninstall through Magisk Manager) that the hosts file seems to be restored back to the stock file without any of my blocks. Am I doing something wrong? Thanks!
Click to expand...
Click to collapse
Without having some type of ramdisk patch in place, like Magisk or custom kernel, the system will default to the stored system image and effectively undo any changes to the /system partition. Any changes to the system partition that you have made will not be there until you install Magisk or a custom kernel again.
So basically with the stock boot image unmodified you cannot make persistent edits on the /system partition from my experience.
Wow, I was not aware that the system started keeping a clean system image like that. Historically I've always been able to modify /system with root and then unroot and the changes would remaim. Since TWRP is part of /boot now, perhaps that would be sufficient to prevent the stock boot from rewriting my /system changes...? Are there any other ways to prevent the system from being restored to stock after unrooting?
the00guy said:
Wow, I was not aware that the system started keeping a clean system image like that. Historically I've always been able to modify /system with root and then unroot and the changes would remaim. Since TWRP is part of /boot now, perhaps that would be sufficient to prevent the stock boot from rewriting my /system changes...? Are there any other ways to prevent the system from being restored to stock after unrooting?
Click to expand...
Click to collapse
As far as I know the phone wont boot with just TWRP installed, you need Magisk as well. So if you don't want to keep Magisk installed I suggest installing only a custom kernel. I personally love Smurf Kernel here (https://forum.xda-developers.com/oneplus-6t/development/kernel-smurfkernel-2-0-49-t3868360). Although I have not tested to see if /system modifications stick with only custom kernel but I feel like they should since it is modifying the ramdisk to allow the phone to boot modified. I know that Smurf Kernel will detect if you have Magisk or not and patch the boot image accordingly. So you will be able to run just a custom kernel without root if this is what you want.
Also if you are not aware you can disable all root access from the Magisk app without having to uninstall anything, maybe that could work for you as well.
Make sure to hit the thanks button if I was able to help you out here!
the00guy said:
Wow, I was not aware that the system started keeping a clean system image like that. Historically I've always been able to modify /system with root and then unroot and the changes would remaim. Since TWRP is part of /boot now, perhaps that would be sufficient to prevent the stock boot from rewriting my /system changes...? Are there any other ways to prevent the system from being restored to stock after unrooting?
Click to expand...
Click to collapse
You could always, edit the partition directly in TWRP and install an alternative host file.
tech_head said:
You could always, edit the partition directly in TWRP and install an alternative host file.
Click to expand...
Click to collapse
The issue is that Android will replace the /system partition with the stored stock system image if you do not have a modified ramdisk. So if you remove Magisk and don't use custom kernel you effectively cannot modify anything on /system as it will not persist.
yerger said:
The issue is that Android will replace the /system partition with the stored stock system image if you do not have a modified ramdisk. So if you remove Magisk and don't use custom kernel you effectively cannot modify anything on /system as it will not persist.
Click to expand...
Click to collapse
Hopefully the community can find a workaround eventually for this that won't replace the /system with a clean image, or find a way to patch the clean image when performing root operations. Some apps can still detect/are broken by magisk, as good as it is, and I hate running any of my phone without ad blocking. I tried going the DNS route, but have yet to find a good private dns provider that oxygen os plays nicely with that also doesn't log.
the00guy said:
Hopefully the community can find a workaround eventually for this that won't replace the /system with a clean image, or find a way to patch the clean image when performing root operations. Some apps can still detect/are broken by magisk, as good as it is, and I hate running any of my phone without ad blocking. I tried going the DNS route, but have yet to find a good private dns provider that oxygen os plays nicely with that also doesn't log.
Click to expand...
Click to collapse
Try using just a custom kernel. You can do that without root and it should prevent /system from being overwritten with the stored system image. The issue is that you need a patched ramdisk in order for the /system partition to boot modified. No way around that unfortunately.
I personally use Smurf Kernel (https://forum.xda-developers.com/one...-0-49-t3868360) and get much better battery life than the stock kernel. The phone is much smoother and snappier as well.
yerger said:
Try using just a custom kernel. You can do that without root and it should prevent /system from being overwritten with the stored system image. The issue is that you need a patched ramdisk in order for the /system partition to boot modified. No way around that unfortunately.
I personally use Smurf Kernel (https://forum.xda-developers.com/one...-0-49-t3868360) and get much better battery life than the stock kernel. The phone is much smoother and snappier as well.
Click to expand...
Click to collapse
Thank you all for the information. It seems I need to read up more on how android pie works behind the scenes particularly with the ramdisk and how the system position is managed.
https://blokada.org/
Non root adblocker, many lists available, DNS change
Or just use Adguard DNS. Works great.
I've looked all over and I'm unable to find a solution or even what's stopping me from modifying the /system folder in the root directory. I can remove files from that folder and all of it's subfolders but I'm unable to add any files into that directory. I am rooted on the T-mobile OnePlus 6t that has been converted to the international ROM. I know my root works cause I can perform other root functions. I also cannot modify the /system folder from TWRP either which is really strange to me. Also, when TWRP prompts me to install the app, it just reboots recovery since it's trying to install it as a system app which I can't do for this odd reason I have yet to find out. This issue all of a sudden showed up after an OTA update and re-rooting after. I have tried reinstalling TWRP, Magisk and Oxygen OS itself but the issue persists. I have also tried running "reboot disemmcwp" as root in a terminal window AND using adb but I guess that command no longer works. Any suggestions welcome as this is the last place I can find an answer to this issue.
Edit: found out I'm unable to uninstall system apps for some reason. So the issue isn't space related.
Toilet Clauger said:
I've looked all over and I'm unable to find a solution or even what's stopping me from modifying the /system folder in the root directory. I can remove files from that folder and all of it's subfolders but I'm unable to add any files into that directory. I am rooted on the T-mobile OnePlus 6t that has been converted to the international ROM. I know my root works cause I can perform other root functions. I also cannot modify the /system folder from TWRP either which is really strange to me. Also, when TWRP prompts me to install the app, it just reboots recovery since it's trying to install it as a system app which I can't do for this odd reason I have yet to find out. This issue all of a sudden showed up after an OTA update and re-rooting after. I have tried reinstalling TWRP, Magisk and Oxygen OS itself but the issue persists. I have also tried running "reboot disemmcwp" as root in a terminal window AND using adb but I guess that command no longer works. Any suggestions welcome as this is the last place I can find an answer to this issue.
Click to expand...
Click to collapse
Known issue that in the Newer OxygenOS versions there is no free space in /system. I'd download Solid Explorer and check the Free Space in the Root Directory.
Sent from my OnePlus6T using XDA Labs
Mannan Qamar said:
Known issue that in the Newer OxygenOS versions there is no free space in /system. I'd download Solid Explorer and check the Free Space in the Root Directory.
Click to expand...
Click to collapse
I've thought about that before. I use root explorer and can see there's more space than needed for the files I want to insert. Is there some buffer space needed in there and how much?
Toilet Clauger said:
I've thought about that before. I use root explorer and can see there's more space than needed for the files I want to insert. Is there some buffer space needed in there and how much?
Click to expand...
Click to collapse
Well, if you go to magisk and select core only mode then reboot you will be able to modify system
toolhas4degrees said:
Well, if you go to magisk and select core only mode then reboot you will be able to modify system
Click to expand...
Click to collapse
I was actually able to find the issue. Space was the issue. I guess there's a space buffer needed from what a file explorer says is left and what's actually left. I uninstalled a couple system apps I disable anyway and was able to insert files/apps into system again.
I made space easy I have the new OnePlus camera apk 125mb the old one is 67mb