[HOW TO][GUIDE][ROOT] Prevent OTAs With Immutable Dummy Update.zip - Upgrading, Modifying and Unlocking

PLEASE NOTE: This should work on any and every rooted device, but as always, there is a risk when modifying your devices.
First, I must explain what this guide will do and what you will need.
What we're doing.
1. We will delete the update.zip (if one already exists).
2. We will make a dummy update.zip that will not be replaceable or modifiable, even by the root user (unless the changes are reversed). This fake update file will prevent a legitimate update from downloading and installing.
3. [OPTIONAL] We will remove the annoying update notification.
What we're going to need.
1. Root. [duh...]
2. File explorer with root privileges a.k.a. a "root explorer". (If you need one, I personally recommend the free yet feature packed ES File Explorer.)
3. A proper BusyBox installation.
4. A terminal emulator.
5. A few minutes of your time.
***AS ALWAYS, I, XDA, XDA MODERATORS, XDA MEMBERS, AND EVERYONE ELSE ARE NOT RESPONSIBLE FOR THE CONSEQUENCES OF FOLLOWING THIS GUIDE. THE DEVICE YOU HOLD IS YOURS AND ANYTHING THAT HAPPENS TO IT IS YOUR FAULT. YOU HAVE BEEN WARNED!***
The procedure.
-Part 1. (Only required if an update is already present. If an update is not already present, go to part 2.)
1. Open your root explorer and make sure that it has root privileges.
2. Navigate to /cache (a.k.a. the "cache" partition)
3. Delete the update.zip file.
-Part 2.
4. Make a new .zip file with nothing in it and save it as update.zip (make sure it is saved to "/cache" and nowhere else, not even in a folder inside "/cache"!)
5. From here move on to your terminal emulator.
6. Once inside the terminal emulator, type the following commands.
Code:
su
cd /cache
ls
chattr +i update.zip
From here I recommend that you check that it worked by typing in
Code:
lsattr update.zip
If the command works you will see a lowercase 'i' amongst a string of letters and/or dashes.
-Part 3. [Optional]
The annoying update notifications are actually Google Play Services fault. All you have to do is go to "Settings > Apps" and find Google play services and disable the apps ability to show you notifications.
That's pretty much it. Now I must tell you that you will still receive notifications saying an update was downloaded, verified, and is ready to install, assuming that you did not go through with part 3. All you have to do is click the install button, and let it restart to install the bogus update. The update process will error and all you have to do now is restart the phone. Nothing will have changed as the update file we created is empty and therefore will not change anything on your device. I have been doing this myself for a while now and have not had a single issue.
I hope that you find this useful and happy modding! :victory::highfive:
Message to Moderators: If this is in the wrong area, I apologize. Please feel free to relocate it to the appropriate area of XDA.

If you wish to undo this process, go into the terminal emulator and enter
Code:
su
cd /cache
chattr -i update.zip
From here you can check that it worked by entering
Code:
lsattr update.zip
At this point you can easily delete the file and allow your device to download your OTA.

Thanks, this will work until you wipe /cache so I created a more permanent solution HERE

Related

Droid 2 Global ROOT, UNROOT, CUSTOM RECOVERY & SIM UNLOCK Tutorial

Today i read from droidforum.net and i see this one, and try to bring it here
source from droidforum and credit by SGMD1
All tutorials below are working as of February 2011. You will only need one file to root, which is included at the bottom of this post.
ROOT/UNROOT TUTORIAL (Courtesy of RyanZA on xdadevelopers)
1. Download and extract the z4root.zip file and copy the .apk directly to /sdcard.
2. Go to Settings -> Applications and make sure "Unknown sources - Allow installation of non-Market applications" is checked. Then click "Development" on the same page and make sure "USB debugging" is checked.
3. Open the "Files" app, navigate to the z4root location and install.
4. Launch z4root and select the Permanent Root option. Give it a minute to do its thing and reboot. If it spends more than two minutes on the message "'Running exploit in order to obtain root access" then you'll want to restart the app; this happens sometimes. Just exit the app by pressing the Home key, kill the app via a task killer (or Settings -> Applications -> Manage Applications -> z4root -> Force stop) and run z4root again. Voila, you're rooted! (You can also use z4root to unroot.)
5. Wireless Tether is a good first app to download if you're rooted. Download the most recent version of Wireless Tether (v2.0.6 as of 1/09/11) to test if you're rooted properly here
MANUAL UNROOT TUTORIAL (Use only if you previously rooted using the terminal emulator method, NOT z4root)
1. Download and install "Android Terminal Emulator" by Jack Palevich from the Market.
2. At the "$" symbol, type the following lines of code (press Enter after each line):
su (you should now see the "#" symbol)
mount -o rw,remount -t ext3 /dev/block/mmcblk1p21 /system
rm /system/app/Superuser.apk
rm /system/bin/su
rm /system/bin/busybox
mount -o ro,remount -t ext3 /dev/block/mmcblk1p21 /system
3. Exit the terminal emulator and reboot your phone. You will no longer have root.
CUSTOM RECOVERY TUTORIAL (Courtesy of Koushik Dutta aka Koush)
1. Download the Droid2Bootstrap.zip file at the bottom of this post, extract the .apk file and place it on /sdcard.
2. Go to the "Files" app, locate the Droid2Bootstrap.apk on /sdcard, install it, and open it. (Select "allow" when asked whether to grant the app superuser permissions)
3. Click "Bootstrap Recovery" and wait for the "success" notification. Then click "Reboot Recovery" and you're done! This will boot you into recovery where you can make nandroid backups, install from .zips, etc (do a search on the forums for more about custom recovery if you aren't familiar with it)
4. DO NOT delete the Droid 2 Bootstrap app once you have completed step 2, as this is the only surefire way to access the custom recovery. Holding "X" + "Power" will take you into the normal recovery.
SIM UNLOCK TUTORIAL
1. Make sure your phone line has been active and had no late payment history for at least six months. If it hasn't, VZW will not unlock your SIM.
2. Call VZW Global Support at 1-800-711-8300 and ask the representative for your phone's SIM unlock code.
3. To test it, you will need a non-VZW SIM. Once you insert it and power your D2 Global back on, it will ask for the unlock code.
NOTE: It appears that Verizon has put a carrier lock on the device for US GSM carriers. Therefore until someone figures out a workaround, you will not be able to use this device on AT&T or T-Mobile in its current state, even if SIM unlocked. The good news is that devs on various boards seem to be close to a workaround so as soon as one becomes available I will add it here.
Not the same phone.
That was very confusing for a second... lol
Sent from my ADR6350 using XDA App
Diferent exploit on droid2 than for incredible 2. Wish it could be that easy though.
Sent from my SCH-I500 using XDA Premium App
Thread closed since you are in the wrong forum.

[Q]

This is a follow-up of the thread " [Q] can't locate /mnt/sdcard/ ". That thread is now locked.
I was able to get ES File Explorer to display /mnt/ in the path to /sdcard/. But now, while in /mnt/sdcard/, I do not see /system/bin/. The routines that root the A100 require access to /system/xbin/.
I looked in ES File Explorer - Settings - File Settings - for an obvious solution but found none. "Show Hidden Files" is already checked.
I suspect that maybe the lines entered via the command prompt (like /system/bin/cmdclient ec_micswitch '`mount -o remount,rw /system`' or /system/bin/cmdclient ec_micswitch '`cat /mnt/sdcard/su >/system/xbin/su`') will somehow unlock or allow access to /system/xbin/ but I'm not sure. I guess I could just plow ahead and see what happens but I much prefer to anticipate and prevent problems beforehand rather than try to fix things after I've screwed it up.
So 3 questions:
1. Will the command line entries automatically be able to write to /system/xbin/?
2. If yes, will I then be able to read and write to /system/xbin/ using ES File Explorer?
3. If not, how do I gain access to /system/xbin/?
I think your trying to make things more complicated for yourself than what they really are, of course it helps to know a little Linux when doing things like this.
1. Will the command line entries automatically be able to write to /system/xbin/?
Yes, that's what the mount -o remount,rw /system does in the command you run.
2. If yes, will I then be able to read and write to /system/xbin/ using ES File Explorer?
No, this is not needed as the commands handle this for you.
3. If not, how do I gain access to /system/xbin/?
You don't... just run the commands for rooting via the terminal and everything is done for you.
The ONLY thing you need to do with ES is to extract the downloaded su file and put the su file itself in /mnt/sdcard. Once you've done that, open the terminal emulator and run those 3 commands.
I do tend to over think things! haha But as I said, I much rather spend extra (possibly useless) time anticipating problems while my piece of equipment works than scratching my head with a brick in my hand.
Thanks for the tutoring, I shall plow ahead with confidence! ... right after I fix my water heater. Now there's a non-working piece of equipment one really can't do without!
ricknau said:
This is a follow-up of the thread " [Q] can't locate /mnt/sdcard/ ". That thread is now locked.
I was able to get ES File Explorer to display /mnt/ in the path to /sdcard/. But now, while in /mnt/sdcard/, I do not see /system/bin/. The routines that root the A100 require access to /system/xbin/.
I looked in ES File Explorer - Settings - File Settings - for an obvious solution but found none. "Show Hidden Files" is already checked.
Click to expand...
Click to collapse
Just a quick note for future reference: the /system/xbin directory isn't located under /mnt/sdcard.... its located under root.
Sent from my A100 using Tapatalk
Crap! Didn't work for me
I did all the steps ...
Extracted the su file (using Winzip on my PC), copied it to /mnt/sdcard/, then entered the commands lines with a terminal emulator. But the program Root Checker says I am not rooted. The Busybox installer program says the same.
I figured out how to display /system/xbin/ (in root ). And I can see the su file in /system/xbin/. It is 25.71 KB. So I figure my command lines ran OK. What could be wrong?
I've tried the process several times. I used a signed su (whatever that means). After each attempt the "modified" date and time stamp of the su file in /xbin/ matches the date and time of the attempt.
Busybox error screen said if I think I am rooted to "go into Superuser app and click on Busybox installer and then click "Forget" and restart this app". I guess I could try that even thought Root Checker agrees with the "not rooted" condition. Is it OK to attempt to install Superuser if you aren't rooted?
The good news is that so far the tablet is still working fine.
Any ideas anybody?
Im having this exact same problem, and havnt found a fix yet for it.
I finally got it!
Oh man I got it! I'm such a dumbass! I wasn't reading carefully enough. The Superuser app from the market is the key. Superuser must be installed first and opened before Busybox can even be installed. Now I have Busybox installed and Root Checker says I have root!
Thanks to all the smart and helpful people who provide the great info here and in the other forums to help us less learned ones make full use of these great tools!

What a way to delete the core programs

Hello every one
First of all. I have a problem I can not delete the basic device software note I have root authority
II. Was installed busyBox but I can not install it and when the installation device works Risterat What problem
read about write system protection.
tutos are available on this forum (wp_mod.ko file to push in system/lib/modules, and run a command on the phone with a terminal app)
#su
insmod system/lib/modules/wp_mod.ko
if im speaking chinese, dont try
but as you tried to change partitions before having write protection removed, you wont be able to do it without a restart until you reflash your rom (clean install)
fabulous69 said:
read about write system protection.
tutos are available on this forum (wp_mod.ko file to push in system/lib/modules, and run a command on the phone with a terminal app)
#su
insmod system/lib/modules/wp_mod.ko
if im speaking chinese, dont try
but as you tried to change partitions before having write protection removed, you wont be able to do it without a restart until you reflash your rom (clean install)
Click to expand...
Click to collapse
Excuse me, I hope if they do not understand you, and my heartfelt thanks for the quick feedback if possible, a simple explanation for the action steps
i think you shouldn't try to do it...
a bad understanding of a Tutorial, and you could make your phone bug.
Follow These Steps....
muhamadalani said:
Excuse me, I hope if they do not understand you, and my heartfelt thanks for the quick feedback if possible, a simple explanation for the action steps
Click to expand...
Click to collapse
Quoted from Step 2 Here,
http://forum.xda-developers.com/desire-816/general/guide-vm-htc-desire-816-root-how-to-t2862470 ,
2. Hopefully you were able to successfully install custom recovery and root.
Now this part is a bit tricky. Even with root HTC is stopping us from writing to system. For this we need to apply the wp_mod.ko module.
Download it here: http://forum.xda-developers.com/show....php?t=2707378
Copy this file to the root of your internal storage.
Now download Terminal Emulator from play store, run it and enter the following commands (you only need to do this once):
su
insmod /sdcard/wp_mod.ko
Once you do this go into a root explorer app and mount /system as R/W. Copy the wp_mod.ko file to /system/lib/modules
Now go to /system/etc and find install-recovery.sh. Open it with a text editor and add a new line at the end with the following:
insmod /system/lib/modules/wp_mod.ko
Reboot! If all went well the wp_mod module will run at boot every time so you won't have to do it manually each time!
Congratulations, you now have a fully rooted Desire 816!
jayblaze406 said:
Quoted from Step 2 Here,
http://forum.xda-developers.com/desire-816/general/guide-vm-htc-desire-816-root-how-to-t2862470 ,
2. Hopefully you were able to successfully install custom recovery and root.
Now this part is a bit tricky. Even with root HTC is stopping us from writing to system. For this we need to apply the wp_mod.ko module.
Download it here: http://forum.xda-developers.com/show....php?t=2707378
Copy this file to the root of your internal storage.
Now download Terminal Emulator from play store, run it and enter the following commands (you only need to do this once):
su
insmod /sdcard/wp_mod.ko
Once you do this go into a root explorer app and mount /system as R/W. Copy the wp_mod.ko file to /system/lib/modules
Now go to /system/etc and find install-recovery.sh. Open it with a text editor and add a new line at the end with the following:
insmod /system/lib/modules/wp_mod.ko
Reboot! If all went well the wp_mod module will run at boot every time so you won't have to do it manually each time!
Congratulations, you now have a fully rooted Desire 816!
Click to expand...
Click to collapse
Thank you
Unfortunately, I could not do a thing did not work the way and I do not know why:crying::crying::crying:

[Guide] AdAway for systemless hosts file

About the only reason I root my phone is to install AdAway. I'd prefer to not modify the system partition to help make OTA's easier to get and to allow Android Pay to work. AdAway has a flashable .zip file that preps the hosts file to use the systemless root structure that comes along with SuperSU. Unfortunately, that script depends on being able to access the /data partition inside of TWRP which isn't going to happen any time soon on the HTC 10. Fortunately, it is easy for us to manually replicate what the flashable .zip is trying to do.
This isn't a detailed how-to, but more of a set of guidelines. Don't blame me if your phone explodes.
Root the phone with the latest SuperSU.
Download the AdAway_systemless_hosts_v2.zip file from the Unofficial AdAway thread.
Extract the files from inside the zip. We are only interested in two files in the support folder.
Connect the phone to your PC and turn on file transfer mode.
Copy "hosts" and "0000adaway.script" that you just extracted to the internal storage of your phone.
Use a program file Root Explorer to move "hosts" into /su/etc and move "0000adaway.script" into /su/su.d (this probably could have been done with ADB push, but I got permission errors when I tried it that way and I'm impatient and lazy).
Chmod 0755 /su/su.d/0000adaway.script (I used a root shell on the phone via ADB)
Install AdAway (I used the link in the Unofficial AdAway thread.)
Reboot the phone.
Run AdAway like normal. By default it should use /system/etc/hosts which is what you want.
If something doesn't work, figure out why and fix it. I'm happy to answer questions to the best of my ability.
AdAway works without problems here, with simple press activate button.
starbase64 said:
AdAway works without problems here, with simple press activate button.
Click to expand...
Click to collapse
Yup
Sent from my HTC 10 using Tapatalk
starbase64 said:
AdAway works without problems here, with simple press activate button.
Click to expand...
Click to collapse
Yes, but it modifies the /system partition unless you do the trick in OP. If I'm correct, you will have problems with OTA updates and Google Pay if you let AdAway directly modify the hosts file on /system.
Now that TWRP can access /data, can we just flash the zip?
goodtimes50 said:
Now that TWRP can access /data, can we just flash the zip?
Click to expand...
Click to collapse
Yes, you can. I downloaded that zip and apk from the Unofficial AdAway thread linked above. Booted into TWRP, flashed the newest betaSuperSU2.74-2-forceencrypt (not related to this, just so I'd be on the latest version), then the AdAway_systemless_hosts_v2.zip, rebooted and installed the apk and let it run. Rebooted. Showing hosts location as /system32/etc/hosts as the OP says is a good thing, and both files mentioned are in their correct places per Root Browser. [emoji106]
Sent from my HTC 10 using XDA-Developers mobile app
Sorry that it doesn't completely match the thread here but I think my question could fit in here anyway.
Do I suggest correctly that with systemless root, systemless AdAway and the stock recovery OTAs should be fully usable? Since there's no other modification to /system then.
bmwbasti said:
Sorry that it doesn't completely match the thread here but I think my question could fit in here anyway.
Do I suggest correctly that with systemless root, systemless AdAway and the stock recovery OTAs should be fully usable? Since there's no other modification to /system then.
Click to expand...
Click to collapse
I believe that is correct. There hasn't been a new OTA for my phone yet so I can't verify. However, when I do the check for new software it tells me no new updates (as opposed to the message about the files system being corrupt). I believe Android Pay should also work. I have it installed and added a new card, but I haven't tested making a purchase yet.
Thanks for the guide.
My device is rooted, but I didn't found su folder in anywhere when I use Root Explorer with root access, does anyone tell me how to get su folder and make AdAway work?
Fix for AdAway.
matif525 said:
Thanks for the guide.
My device is rooted, but I didn't found su folder in anywhere when I use Root Explorer with root access, does anyone tell me how to get su folder and make AdAway work?
Click to expand...
Click to collapse
Your device may use su, & still not have an su folder (at all) that is used for hosts file (ie systemless root). Just do this..
Download... Terminal emulator.
https://play.google.com/store/apps/details?id=jackpal.androidterm
Open terminal
Then enter these commands.. "Quote"
su
mount -orw,remount /system
rm /system/etc/hosts
ln -s /data/data/hosts /system/etc/hosts
mount -orw,remount /system
Now open AdAway go to preferences and select option to " Target hosts file"
Select /data/data/hosts
Enjoy..
If you still have ads in apps do this!!!
githyanki said:
Open the 3 dot menu in adaway, chose log DNS request. Enable TCP dump.
Open the app with ads, when ad loads, go back to adaway, and open log.
Long press any entries and chose black list.
Profit
Click to expand...
Click to collapse
All credit where credit is due. I just shared what I read else where.
Read here for more details..
https://github.com/AdAway/AdAway/issues/770
&
http://forum.xda-developers.com/showthread.php?t=2190753&page=143#post68988079
There is a known issue in HTC devices involves S-off. If the above doesn't solve this for you message here I'll follow. Or pm me. I work wierd hours be patient.
Rom Maximus 3.0.0 ( Android 7 ).Any instruction don't works,adaway no blocked ads.
regarding su folder to move files to
FreydNot said:
About the only reason I root my phone is to install AdAway. I'd prefer to not modify the system partition to help make OTA's easier to get and to allow Android Pay to work. AdAway has a flashable .zip file that preps the hosts file to use the systemless root structure that comes along with SuperSU. Unfortunately, that script depends on being able to access the /data partition inside of TWRP which isn't going to happen any time soon on the HTC 10. Fortunately, it is easy for us to manually replicate what the flashable .zip is trying to do.
This isn't a detailed how-to, but more of a set of guidelines. Don't blame me if your phone explodes.
Root the phone with the latest SuperSU.
Download the AdAway_systemless_hosts_v2.zip file from the Unofficial AdAway thread.
Extract the files from inside the zip. We are only interested in two files in the support folder.
Connect the phone to your PC and turn on file transfer mode.
Copy "hosts" and "0000adaway.script" that you just extracted to the internal storage of your phone.
Use a program file Root Explorer to move "hosts" into /su/etc and move "0000adaway.script" into /su/su.d (this probably could have been done with ADB push, but I got permission errors when I tried it that way and I'm impatient and lazy).
Chmod 0755 /su/su.d/0000adaway.script (I used a root shell on the phone via ADB)
Install AdAway (I used the link in the Unofficial AdAway thread.)
Reboot the phone.
Run AdAway like normal. By default it should use /system/etc/hosts which is what you want.
If something doesn't work, figure out why and fix it. I'm happy to answer questions to the best of my ability.
Click to expand...
Click to collapse
Hi there, ive got a mate 8, not sure if this adblocker will work on it but i want to try it out anyway. Ive unzipped the file but which folder in su do i move the files to? screenshot of the folders i have in su

[Supplemental Guide] XT1768 Pure Motorola Bootloader Unlock+Root+Hotspot Unlock

[Qualcomm]
Hello.
I went through the process of rooting my XT1768. I did it only to be able to use my phone as a hotspot even though my carrier blocked it. The guides I found were very helpful, but there were a few things specific to this model, and to my specific goal of having a hotspot, that I had to figure out on my own. I'm writing this to help anyone else who's trying to do the same as I did.
References:
Main guide: https://forum.xda-developers.com/moto-e4/how-to/moto-e-guide-to-rooting-t3652982
Unlock hotspot guide (do this after the main guide): https://forum.xda-developers.com/moto-e4/how-to/how-to-enable-hotspot-t3654214
So here is what I learned:
Be careful clicking on hyperlinked words in posts. This forum system injects ads into our posts, so it looks like links to additional information. For example, the word "stock" may be hyperlinked and it sends you to buy chicken stock at Walmart (real example that happened to me). If you want to click something, hover over it and look at the bottom of your browser. The ad links are insanely long and start with the same domain name (I forget what it was, something like vlink dot com etc etc). Adblock doesn't block these.
After getting to the bootloader, I was not able to flash TWRP recovery. I got a failed error. I needed to boot from it, not flash it, everytime I wanted to use it: fastboot boot twrp-x-x-x.img
Small thing: the main guide tells to click wipe data, then slide. The TWRP I used (3.2.3-r1) had wipe data, but I had to type "yes", not slide.
The guide tells you to install Magisk ZIP but doesn't tell you where to get it. A simple google will help, but here's the link anyway. https://forum.xda-developers.com/apps/magisk/official-magisk-v7-universal-systemless-t3473445
After wiping data, you can use the ADB tool to send the zips for no-verity and magisk to the device storage so you can install them. You don't have to get an external SD card for that. Just type adb push [localfile] /sdcard . For example: adb push Magisk-v18.zip /sdcard . You will then have the file in the /sdcard folder and you can navigate there in TWRP and install the zip.
If you get red errors in TWRP when trying to do something (wipe, install, etc.), I found that you just need to go back to bootloader and re-boot TWRP and try doing it again.
When the main guide says "set system as R/W", they mean going into Mount in TWRP, removing the tick from "read only system" and picking "system" to mount. Took me a while to realize that.
After installing the no-verity and magisk ZIP, while still in TWRP, you can access a shell prompt using your ADB. You'll need to do that in order to edit your /system/build.prop file. Type adb shell in your PC and hit enter. Make sure you mounted /system as writable (not read only) or else you won't be able to change build.prop.
After you add the line to build.prop, you can make sure it's there by typing cat /system/build.prop . The last line should be the line you added.
After I added that line I booted into my device and installed Terminal Emulator. I installed it through googling Terminal Emulator APK and installing it directly, but you can probably find it in the google Play store. When you open it, it will ask you to allow it SuperUser rights with a countdown timer. If not, it means you didn't install magisk properly, and it's a good idea to start over. When you get SuperUser in Terminal Emulator, type the line and press Enter: settings put global tether_dun_required 0
I don't remember if I rebooted after typing that and before trying to use my hotspot.
If you get a bootloop (just the Motorola and Lenovo logos), go to this other thread which I made: https://forum.xda-developers.com/moto-e4/how-to/advice-xt1768-flashing-stock-motorola-t3879797
Please let me know how it went. Even if it went perfectly, just say that this worked for you, it'll help others dealing with problems.
Good luck!

Categories

Resources