HowTo: root your Xperia x10 mini pro 2.1.1.A.0.6 – 2.1-update1

In this post I’m going to show you how I manually achieved root on this device.

Preamble

I tried every possible automated tool I found (z4root, SuperOneClick), but I had no luck.
My setup involves a GNU/Linux box and this may be the cause.
First of all here are the device details I got from “CurveFish DeviceInfo” app:
Model: U20i
Manufacturer: Sony Ericsson
Device: U20i
Product: U20i_1238-0129
Brand: SEMC
CPI ABI: armeabi
Kernel Version: 2.6.29
SEMCUser@SEMCHost )
#1 PREEMPT Fri Dec 17 18:35:45 2010
Build Number: 2.1.1.A.0.6
Release: 2.1-update1
SDK: 7

Full log here Xperia X10 Mini Pro.deviceinfo.txt.

Prerequisites

Here’s the required tools:

  • a PC (mine is powered by Ubuntu 11.04 Natty Narwhal)
  • an usb cable for your mobile
  • adb configured and  running on the PC (find more info here)

Software used:

Once you have all the necessary stuff, we can start!

Step by step guide

  1. Start putting device in “debug mode”: Settings – Applications – Development – USB debugging
  2. Connect device to pc using usb cable and start adb with
    adb shell
    You may to choose “Charge phone”, so you can still access your sdcard within the phone.
  3. Check you can write in this specific directory:
    $ cd /sqlite_stmt_journals
    $ touch testfile
    $ ls -l
    -rw-rw-rw- shell    shell           0 2011-08-02 16:23 testfile
    $ rm testfile
    $ ls -l
    $ exit
  4. If everything went ok, put the needed files in the previous directory; from your pc terminal type:
    $ adb push psneuter /sqlite_stmt_journals
    3157 KB/s (585731 bytes in 0.181s)
    $ adb push su-v2 /sqlite_stmt_journals/su
    630 KB/s (26264 bytes in 0.040s)
    $ adb push Superuser_2.3.6.1.apk /sqlite_stmt_journals
    3533 KB/s (196521 bytes in 0.054s)
  5. Prepare the software on the phone:
    $ adb shell
    $ cd /sqlite_stmt_journals
    $ ls -l
    -rw-rw-rw- shell    shell      196521 2011-08-03 13:16 Superuser_2.3.6.1.apk
    -rw-rw-rw- shell    shell       26264 2011-08-03 13:16 su
    -rw-rw-rw- shell    shell      585731 2011-08-03 13:15 psneuter
    $ chmod 755 psneuter
  6. Now you can exec psneuter. You will lose the active shell.
    You could see this message or not, that’s not a problem:$ ./psneuter
    property service neutered.
    killing adbd. (should restart in a second or two)

    Your phone will detach and reattach usb connection automatically.
  7. Once more you have to connect to the device with adb shell, but you’ll see a different prompt:$ adb shell
    # id
    uid=0(root) gid=0(root)
  8. Now we have a temporary access to root user via adb.
    Let’s do the trick on the system:
    # mount -o remount,rw /dev/block/mtdblock0 /system
    # mkdir /system/xbin
    # chmod 755 /system/xbin
    # cat /sqlite_stmt_journals/su > /system/xbin/su
    # chmod 6755 /system/xbin/su
    # ls -l /system/xbin/su
    -rwsr-sr-x root root 26264 2011-08-02 18:19 su
    # cat /sqlite_stmt_journals/Superuser_2.3.6.1.apk > /system/app/Superuser_2.3.6.1.apk
    # chmod 777 /system/app/Superuser_2.3.6.1.apk
  9. It’s time to reboot:
    # reboot

That’s it.

Verify

One easy way to verify the process is to install “Android Terminal Emulator” from market and type:
$ su
#

if you get the Superuser popup and the right prompt “#” it’s all ok.

Further reading

Why don’t you install ClockworkMod Recovery now?

Maybe Ice Cream Sandwich?

16 thoughts on “HowTo: root your Xperia x10 mini pro 2.1.1.A.0.6 – 2.1-update1

  1. Thank you for the tip. Are you sure that X10FlashTool.exe will run smoothly in GNU/Linux (may I use Wine?). I'll give a try.

  2. Thanks! It worked well with my X10 Mini. Could you make a tutorial to install cyanogenmod or miniCM7 on the X10 Mini (Pro)?

  3. I moved the three files you mentioned to a location in sdcard and they are executable. However, when I do “./psneuter” I am getting “permission denied” error. I am curious why. I am trying to root my motorola motoluxe phone, and assuming that the instruction you provide are applicable any phone. And I am also assuming that “/sqlite_stmt_journals” is not a special folder. I would appreciate if you can confirm this.

    1. You are right. That directory has no special meaning, but its peculiarity is that is writeable by anyone and is on a partition of the internal storage. The sdcard is fat32 formatted and mounted by the operating system with no execution permission, so it’s impossible to start any binary despite of the permissions you give to the files.

  4. Hi, Can you please help in installing jelly bean on my ISC -running Sony Xperia Sola? It would be a great gesture.

  5. I’ ve some issue about adb shell – I installed adb shell as a part of sdk tools, it’s right there in platform-tools executable file but it won’t do anything. I set into platform-tools directory type : adb shell, then i tried adb.bin – but probably it isn’t bin file. I can’t run it no way

      1. Sure I’ve read it, but it says when adb starts… – but in my case it won’t start and no action on 5037 port so it’s not runnin

        1. Ok.
          Are you on a GNU/Linux machine? In that case, has “adb” file execution permission? Have you tried “./adb”?
          Is it an executable file (try “file adb” to see it)?

          I cannot find adb.bin in my installation, but it could be my fault.

          Hope it helps.

Comments are closed.