New 100% reliable "temp root" for Titanium Backup (won't stop working until reboot!)

joel.bourquard

Retired Recognized Developer
Sep 7, 2009
139
85
0
New 100% reliable "temp root" for Titanium Backup (won't stop working until reboot!)

Hi all,

I grew frustrated by the annoyance of losing root access randomly, when modified files on /system suddenly become inaccessible because of the S-ON lock.

But here's some good news: I came up with a way to get a 100% reliable "temp root" for Titanium Backup.

Advantages:
  • You will not lose root access until next reboot!
  • 100% reliable, does not modify /system at all.

Drawbacks:
  • Minimalistic approach with no BusyBox.
  • Will only work with select root apps.

Tested with Titanium Backup only (for now).

Requirements:
  • Original "out of the box" Sensation or EVO 3D (untested).
  • Android SDK tools ("adb" command) on a computer.
  • USB connection between computer and phone.
  • Installed Superuser app from the Market.

Initial (one-time) setup:
  • unzip better-temp-root.zip
  • adb push fre3vo /data/local/tmp/
  • adb shell "cd /data/local/tmp ; chmod 755 fre3vo ; ./fre3vo"
  • adb shell "mkdir /data/bin ; mv /data/local/tmp/fre3vo /data/bin/"
  • adb push su /data/bin/
  • adb push root.sh /data/bin/
  • adb shell "chmod 4555 /data/bin/su ; chmod 755 /data/bin/root.sh"
  • adb shell "/data/bin/root.sh"

After every reboot:
  • adb shell "/data/bin/fre3vo"
  • adb shell "/data/bin/root.sh"

The advantage of this method is that /system is not modified, therefore the rooting will be totally stable and will persist until the next reboot ;)

Q&A:
Will it work with other root apps?
This is a minimalistic approach which installs no busybox and does not touch /system, in order to be perfectly reliable. The drawback of this is that it will work only with root apps that are able to find "su" at /data/bin/su, and that don't need a busybox in $PATH. Fortunately, Titanium Backup fulfills both of these criteria. If you know other apps that do, please post about them.

Status:
  • Titanium Backup (free & pro): works
  • Root Explorer: works
  • MyBackup pro: works?
  • SetCPU: FC
  • Wireless tether: needs system modification

Greetings go to #teamwin for the exploit, of course.

Have fun !
 

Attachments

Last edited:

madindehead

Senior Member
Apr 14, 2009
2,292
81
0
If it works well, maybe you should try and pass the files onto agrabren for him to implement into Fre3vo^2 (apk that makes root better like your fix is aiming to).

That way things will move a LOT faster :)
 

DomSim

Senior Member
Sep 24, 2008
1,326
208
0
possible to make a script that runs
Code:
    adb shell "/data/bin/fre3vo"
    adb shell "/data/bin/root.sh"
at each boot automatically?
 

Tiffany84

Recognized Themer
Jul 27, 2010
6,280
3,323
0
Sorry for the noob question but where do unzip it to, the computer or the phone?

Sent from my PG86100 using XDA App
 

joel.bourquard

Retired Recognized Developer
Sep 7, 2009
139
85
0
Using this, I can get Titanium Backup to work, but not AdFree. Might just wait for Fre3vo^2.
Thanks for your feedback. I hadn't tested AdFree, but I'm not surprised here. This solution is a willful compromise: we refrain from modifying /system, and thus we gain 100% reliability - but at the same time we lose compatibility with some root apps, because they often rely on BusyBox being in /system (or at least in $PATH).

I have contacted @agrabren on Twitter with a link to this thread. I haven't looked into it, but if #teamwin can come up with a way to execute adb commands locally on the phone, it could all be done automatically at boot. Hopefully they'll add a configuration choice such as:

Method 1: Full compatibility with root apps, system BusyBox, "ephemeral" root
Method 2: Compatibility with *some* root apps, no system BusyBox, 100% reliable root


Let's see how it goes... but I know which method I'd personally use ;)
 
  • Like
Reactions: madindehead

Tiffany84

Recognized Themer
Jul 27, 2010
6,280
3,323
0
Unzip to the computer, you'll get 3 files. Go on from there :)
Ok. So this is where I struggle with adb. So how does it know where the files are at? Do u have to tell it the location of the files or do u put it in the same directory with adb? Again, I apologize when it comes to being clueless with adb.

Sent from my PG86100 using XDA App
 

joel.bourquard

Retired Recognized Developer
Sep 7, 2009
139
85
0
possible to make a script that runs
Code:
    adb shell "/data/bin/fre3vo"
    adb shell "/data/bin/root.sh"
at each boot automatically?
That's the goal - but such a script would not work right now, because: (1) the 1st command terminates the current shell and (2) the 2nd command must be called through ADB.

As far as I see, the 1st command could be invoked automatically from an Android app at boot, but the 2nd one needs to be called through adb, which requires a separate computer right now.

I haven't looked into that - but I think @agrabren / #teamwin are aiming at this (ie: somehow doing the equivalent of running commands through "adb" from the device itself) with Fre3vo^2.
 

joel.bourquard

Retired Recognized Developer
Sep 7, 2009
139
85
0
Ok. So this is where I struggle with adb. So how does it know where the files are at? Do u have to tell it the location of the files or do u put it in the same directory with adb? Again, I apologize when it comes to being clueless with adb.

Sent from my PG86100 using XDA App
I run Linux personally, but I think if you just unzip the files into some empty folder, then stay in that same folder and run ADB by its absolute path, it should work fine. Something like:

"C:\Program Files\Android SDK\BIN\ADB.EXE" push xx yy

Maybe a Windows user could give you more precise advice here...
 

Xcor3

Senior Member
Aug 14, 2010
1,060
171
0
Why would you need barnacle when you have wireless tether built in?

Sent from my HTC Sensation 4G using XDA App