[Android Apps and Games] spex66:
restore not working on ASUS Transformer TF300T after OTA upgrade to .26

Hi there,

I tested the process 3 times for now

* downgrade DE 9.4.3.17, root, RootKeeper protect root

* check that /system/su-backup is there

* Trigger OTA upgrade to WW 9.4.3.26

* After upgrade /system/su-backup is gone, and so RootKeeper cannot restore it

I made some test with different backup names and locations (running code from GitHub with AIDE direct on my Transformer is a nice option for that :-))

A backup in /data/system/su-backup survived the OTA upgrade!

But still no luck with "restore".

Three checkmarks available after upgrade:

* Superuser app installed

* Filesystem supports root protection

* Protected su copy available

If I get it right, the remount of system fails with "permission denied".

I tried it manually (no idea if that simulates it correctly?!?)

shell@android:/data/system $ ls -la su*
ls -la su*
-rwsr-sr-x root root 22364 2012-05-07 21:59 su-backup

shell@android:/data/system $ ./su-backup -c 'mount -o rw,remount /dev/block/mmcblk0p1 /system'
rw,remount /dev/block/mmcblk0p1 /system'
mount: Operation not permitted

Logcat gave me following output for a "restore" (I repacked it to projectvoodoo2 for testing):

D/Voodoo OTA RootKeeper MainActivity( 4390): Button pressed tag: restore
D/Voodoo Utils( 4390): Run script content (with shell: /data/system/su-backup):
D/Voodoo Utils( 4390): mount -o remount,rw /system /system
D/Voodoo Utils( 4390): cat /data/system/su-backup > /system/bin/su
D/Voodoo Utils( 4390): chmod 06755 /system/bin/su
D/Voodoo Utils( 4390): rm /system/xbin/su
D/Voodoo Utils( 4390): mount -o remount,ro /system /system
E/su ( 4533): sudb - Opening database
E/ ( 4533): Couldn't open database: unable to open database file
E/su ( 4533): sudb - Could not open database, prompt user
E/su ( 4533): bind failed with 30: Read-only file system
W/su ( 4533): request rejected (10173->0 /data/data/org.projectvoodoo2.otarootkeeper/files/commands.sh)
D/Voodoo OTA RootKeeper Device( 4390): Superuser.apk installed
D/Voodoo Utils( 4390): Getting output for command: /data/data/org.projectvoodoo2.otarootkeeper/files/lsattr /data/system/su-s
pex66
D/Voodoo OTA RootKeeper Device( 4390): attributes: -----i--A---- /data/system/su-backup
D/Voodoo Utils( 4390): /data/system/su-backup is set-user-ID
I/Voodoo OTA RootKeeper Device( 4390): su binary is already protected
D/Voodoo Utils( 4390): Run script content (with shell: su):
D/Voodoo Utils( 4390): #!/system/bin/sh
D/Voodoo Utils( 4390): echo SuPermsOkay
D/Voodoo Utils( 4390): unable to run script: commands.sh
W/System.err( 4390): java.io.IOException: Error running exec(). Command: [su, -c, /data/data/org.projectvoodoo2.otarootkeeper
/files/commands.sh] Working Directory: null Environment: null
W/System.err( 4390): at java.lang.ProcessManager.exec(ProcessManager.java:211)
W/System.err( 4390): at java.lang.Runtime.exec(Runtime.java:168)
W/System.err( 4390): at java.lang.Runtime.exec(Runtime.java:241)
W/System.err( 4390): at java.lang.Runtime.exec(Runtime.java:184)
W/System.err( 4390): at org.projectvoodoo2.otarootkeeper.backend.Utils.runScript(Utils.java)
W/System.err( 4390): at org.projectvoodoo2.otarootkeeper.backend.Utils.canGainSu(Utils.java)
W/System.err( 4390): at org.projectvoodoo2.otarootkeeper.MainActivity.displayStatus(MainActivity.java)
W/System.err( 4390): at org.projectvoodoo2.otarootkeeper.MainActivity.onClick(MainActivity.java)
W/System.err( 4390): at android.view.View.performClick(View.java:3511)
W/System.err( 4390): at android.view.View$PerformClick.run(View.java:14110)
W/System.err( 4390): at android.os.Handler.handleCallback(Handler.java:605)
W/System.err( 4390): at android.os.Handler.dispatchMessage(Handler.java:92)
W/System.err( 4390): at android.os.Looper.loop(Looper.java:137)
W/System.err( 4390): at android.app.ActivityThread.main(ActivityThread.java:4424)
W/System.err( 4390): at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 4390): at java.lang.reflect.Method.invoke(Method.java:511)
W/System.err( 4390): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
W/System.err( 4390): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
W/System.err( 4390): at dalvik.system.NativeStart.main(Native Method)
W/System.err( 4390): Caused by: java.io.IOException: Permission denied
W/System.err( 4390): at java.lang.ProcessManager.exec(Native Method)
W/System.err( 4390): at java.lang.ProcessManager.exec(ProcessManager.java:209)
W/System.err( 4390): ... 18 more
D/Voodoo Utils( 4390): Superuser command auth refused

I'm a bit frustrated, because there are other Transformer TF300 users which seem not to have that problem :-(

Anybody an idea?

What is the key that RootKeeper can "restore"?

cheers

(=PA=)