how to root motorola atrix got from expansys (4.4.35.mb860.retail.en.gb)

2011-10-26

After two days of research, I managed to root my Motorola Atrix bought from Expansys. This device has Android 2.2.2, System version 4.4.35.MB860.Retail.en.GB, a locked bootloader and it resisted various attempts to gain root access. By carefully reading every XDA forum post about the device - it took me quite a day - I was able to finally find a user with my same software installed, that was able to root the phone. The method to be followed is the same one for the DROID 3. Therefore, follow the same instructions at the previously given link for rooting your device. If you are a Windows user, you will be fine, since the script uses Windows commands and files.

If you are a GNU/Linux user, what you need to do is:

  1. Have ADB installed and added to your
$PATH
  1. Open the file
Click to root your DROID 3.bat

with a text editor

  1. Paste the adb instructions of the file
Click to root your DROID 3.bat

in your terminal emulator

Just a note. For commands like:

adb shell echo "ro.sys.atvc_allow_netmon_usb=0" ^> /data/local.prop
adb shell echo "ro.sys.atvc_allow_netmon_ih=0" ^>^> /data/local.prop
[..]

Substitute each

^>

with a

\>

Therefore, they will look like:

adb shell echo "ro.sys.atvc_allow_netmon_usb=0" \> /data/local.prop
adb shell echo "ro.sys.atvc_allow_netmon_ih=0" \>\> /data/local.prop

What follows is directly taken from my bash history and should be the correct sequences of commands to be given inside the directory containing the DROID 3 files. It will probably work but don’t trust it completely:

update: I verified the steps, they correctly work.

adb kill-server
adb wait-for-devices
adb wait-for-device
adb kill-server
adb shell mv /data/local/12m /data/local/12m.bak > NUL
adb shell ln -s /data /data/local/12m
adb reboot
adb kill-server
adb wait-for-device
adb wait-for-device
adb shell rm /data/local/12m
adb shell mv /data/local/12m.bak /data/local/12m
adb shell rm /data/local.prop.bak > NUL
adb shell mv /data/local.prop /data/local.prop.bak
adb shell echo "ro.sys.atvc_allow_netmon_usb=0" \> /data/local.prop
adb shell echo "ro.sys.atvc_allow_netmon_ih=0" \>\> /data/local.prop
adb shell echo "ro.sys.atvc_allow_res_core=0" \>\> /data/local.prop
adb shell echo "ro.sys.atvc_allow_res_panic=0" \>\> /data/local.prop
adb shell echo "ro.sys.atvc_allow_all_adb=1" \>\> /data/local.prop
adb shell echo "ro.sys.atvc_allow_all_core=0" \>\> /data/local.prop
adb shell echo "ro.sys.atvc_allow_efem=0" \>\> /data/local.prop
adb shell echo "ro.sys.atvc_allow_bp_log=0" \>\> /data/local.prop
adb shell echo "ro.sys.atvc_allow_ap_mot_log=0" \>\> /data/local.prop
adb shell echo "ro.sys.atvc_allow_gki_log=0" \>\> /data/local.prop
adb shell cat /data/local.prop
adb reboot
adb kill-server
adb wait-for-device
adb wait-for-device
adb remount
adb push busybox /system/xbin/busybox
adb push su /system/xbin/su
adb push Superuser.apk /system/app/Superuser.apk
adb shell chmod 4755 /system/xbin/su
adb shell chmod 755 /system/xbin/busybox
adb shell chown system.system /data
adb kill-server

Enjoy your European Atrix with root access :)


I do not use a commenting system anymore, but I would be glad to read your comments and feedback. Feel free to contact me.