Coby Kyros ships rooted

l_n

Senior Member
Dec 28, 2010
788
99
I just tested my theory about ro.secure=0 meaning the kyros was already rooted.

i mv'ed SuperUser.apk to SuperUser.bak and mv'd su to su.bak and then rebooted the device.

after rebooting, i connected via adb and had a root shell. so, for apps to have root access, all we have to do is push su, busybox, and SuperUser.apk onto the device via adb. z4root is *not* necessary.

(and, just for good measure, after rebooting i killed the adbd process and then reconnected. i still had a root shell)
 
Last edited:

Ridgeland

Member
Dec 14, 2010
285
9
Good progress!
I have Eclipse with Android SDK and adb.
With Eclipse running AVD emulator and with the Coby also attached to the PC I get:
$ adb devices
List of devices attached
emulator-5554 device
???????????? no permissions

I have not rooted the Coby so it denies access as I would expect. The emulator is open for adb.

So Catch 22? Do you have to root the Coby to be able to use root without rooting?
I'm following with interest...
 
Last edited:

l_n

Senior Member
Dec 28, 2010
788
99
run (on the linux box):
Code:
sudo adb kill-server
sudo adb start-server
adbd has to be running as root.

my coby shows up as device # 0123456789ABCDEF
 
Last edited:

Ridgeland

Member
Dec 14, 2010
285
9
$ sudo adb kill-server
sudo: adb: command not found
$ which adb
/Data/Linux/OperatingSystems/Android/android-sdk-linux_86/tools/adb
which is really a link to:
/Data/Linux/OperatingSystems/Android/android-sdk-linux_86/platform-tools/adb
Took some trial and error but this worked:
$ sudo su
# cd /Data/Linux/OperatingSystems/Android/android-sdk-linux_86/
# platform-tools/adb kill-server
# platform-tools/adb start-server
# platform-tools/adb devices
List of devices attached
0123456789ABCDEF device

I guess it has to do with root's PATH variable.

Thanks for getting me there. Now I can learn how to use adb, I had ignored it since hitting the no permissions.
 
Last edited:

Ridgeland

Member
Dec 14, 2010
285
9
studying
Android Build System | Android Open Source
It looks like Coby built the update.zip as build_variant=eng not build_variant=user
Because by default adb client should be OFF, not ON.
Also sets the ro.secure flag to 0 rather than 1
default "make" is "make eng" although Android expects the shipped version to be "make user"
I hope there are more than two of us exploring the possiblities. :)
 

l_n

Senior Member
Dec 28, 2010
788
99
Yeah, I saw that. I think to get non-adb root working you have to be sure to set the
permissions of su to 4755 (Srw--rw-rw-).
So manual rooting of this thing is:
Code:
adb root
adb push SuperUser.apk /system/app/SuperUser.apk
adb push su /system/xbin/su
adb push busybox /system/xbin/busybox
adb shell
chmod 4755 /system/xbin/su
chmod 0755 /system/xbin/busybox
chmod 0644 /system/app/SuperUser.apk
sync
exit
 
Last edited:

Ridgeland

Member
Dec 14, 2010
285
9
I don't have the file to push:
SuperUser.apk
In Ubuntu I have /bin/su and /bin/busybox
are they the ones to push?
With google I found Superuser.apk from mediafire
unzipping the apk I see the dates are 4-29-2009 --- doesn't sound fresh.
 

l_n

Senior Member
Dec 28, 2010
788
99
No. you'll need the versions floating around for android. I think all three are floating around xda
 

Ridgeland

Member
Dec 14, 2010
285
9
Thanks,
I found su-2.3.6.1-ef-signed.zip in xda thread
[APP] Superuser 2.3.6.1 - Now on the Market [2010-09-05] - xda-developers
This zip is for eclair. Unzipping I found Superuser.apk and su. busybox is already on the Coby I pushed the other two on and ran chmod's and sync. Rebooted.
I downloaded from AppsLib "Terminal Emmulator"
Running the emmulator I can
$ su
Superuser pops up asking for permission - I OK it and get to
#

I also have a download of
gapps-passion-EPE54B-signed.zip
Which has a boat load of apps like GoogleApps.apk and Vending.apk (Market).
Unzipping on the Coby in /nand/ I can see all these apps. But if I try to install Vending.apk I get an "Application not installed". No superuser pop-up asking if I want to give it root privileges.

How do I install Market?
 

l_n

Senior Member
Dec 28, 2010
788
99
d/l the recovery.img from the Ultimate Guide thread. put it on your SD card. then do the following:
Code:
adb shell
flash_image recovery /sdcard/recovery.img
exit
adb reboot recovery
use home to move down in the menu (should be a green menu on black bacukground), menu button selects.
scroll down to install zip from sdcard, push menu
scroll down to choose zip from sdcard, push menu
scroll to where you put the gapps zip (MUST BE ON THE SD CARD), press menu on the gapps zip
scroll to Yes and press menu. wait.
once it finishes, push the back button until you get to reboot device now and then press menu.
gapps should be installed.
 

Ridgeland

Member
Dec 14, 2010
285
9
Thanks l_n,
I got Market installed.
Compared to the Ultimate Guide, seems the only step this route bypasses is the z4root.
I wanted Market for GasBuddy which works great.
I don't see why apps like gasbuddy would be "Market-only" except maybe to use GoogleMaps maybe. Oh well.
 

l_n

Senior Member
Dec 28, 2010
788
99
this method is more enjoyable for the tinkerer, IMO. i like to do things by hand myself so that i *understand* what it is i'm doing. that's why I've always preferred working with the command line over a GUI. (as it stands, i have 3-4 terminals open running nano, emacs, whatever on one of my xfce desktops so i can actually get stuff done.)
 

jegg

Member
Dec 27, 2010
3
0
I just tested my theory about ro.secure=0 meaning the kyros was already rooted.

i mv'ed SuperUser.apk to SuperUser.bak and mv'd su to su.bak and then rebooted the device.

after rebooting, i connected via adb and had a root shell. so, for apps to have root access, all we have to do is push su, busybox, and SuperUser.apk onto the device via adb. z4root is *not* necessary.

(and, just for good measure, after rebooting i killed the adbd process and then reconnected. i still had a root shell)


Could you repost this message as something like "Kyros Ships Rooted For Dummies" so I can have a clue as to what you are talking about?:eek:
 

l_n

Senior Member
Dec 28, 2010
788
99
most production devices ship with ro.secure (in /system/build.prop) set to 1, which restricts root access. the coby has it set to zero, and adbd (the android debugging bridge daemon) runs as root on the device. so, to get permanent root access, all you have to do is put SuperUser.apk (the permission managing app), su (switch user) (installed with the setuid bit turned on (so it always runs as the root user)), and busybox (for lots of fun unix utilities in one binary) on the kyros and run 'sync' or reboot. and then you have permanent root access for applications.
 

Ridgeland

Member
Dec 14, 2010
285
9
I learned a lot from this thread so I'll recap some here for others who find it cryptic.

OP (Original Post) -
i mv'ed SuperUser.apk to SuperUser.bak and mv'd su to su.bak
mv is a Linux command for move or rename - mv'd is just englishing the command --- what was su is now su.bak
l_n is just renaming two files to have them as backup when installing a new file of the same name.

#2 #3 #4 - in Linux users have permissions - you already have enough Android (Linux) experience to know that root has "super power".
From Linux run adb as root not as default user then you can access the device.
adb is Android Debug Bridge Android Debug Bridge | Android Developers
It's a tool to allow remote access to files on the Coby from your PC via the USB connection.
I have it because I installed Android SDK - Developers kit and Eclipse.
(Later I edited /root/.bashrc to have PATH=$PATH:/pathto/android-sdk-linux_86/platform-tools --- setting in PC-Linux
Then when I started a terminal session I didn't even need to kill and start the server, just # adb devices and it launched the server.)
A note: In the Linux terminal (like DOS or Windows->Command Line) the prompt $ is for the user, the prompt # is for root (system administrator, or super-user)
In Linux the command "su" is the command to switch from user to root, $ changes to #

#6, #7, #8 ,#9 - Now that adb is connecting to the Coby from my PC (Linux) it's time to setup those two files in the original post. Superuser.apk and su
#9 is the zip file I downloaded that contained both Superuser.apk and su
push is the command in adb to move something from the PC to the Coby (adb runs on the PC)
#6 there are those permission settings again chmod is "change mode" is change permissions r-w-x (read-write-execute).

#10, #11 - OK I got root but the only reason to do it is for Market. I followed in parallel this thread and the "Ultimate Guide" thread. All this thread did was skip z4root, and teach me more about Android. Now it's back to recovery.img The only real difference in the two threads is Ultimate Guide recommends and explains doing a backup.

This post is an effort to demystify what is going on here for Windows users who don't yet know Linux (Android user = Linux user)
 
Last edited:
Top