The Optimus G on Japan's Docomo network is an interesting device, as it ships with a mandatory access control system that basically prevents remounting system, reading boot, executing tasks with root privileges, and things of that nature. Thus, the root process for this version of the Optimus G was a tricky one.

A backdoor found by Android hacker giantpune will be used, which allows the bootloader to be unlocked, a modified boot.img to be flashed, and some security features to be disabled – ultimately allowing root access to be achieved.

Now that you have the basic idea down – a couple of noteworthy things:

  • Graphical glitches will occur while in the bootloader. This means you will have to navigate the bootloader "blind."
  • You need to download this package before you get started. (Mirror) (MD5: 70b93a8e8a29bfd2727ae3eb5984af10)
  • If you're using a Windows machine, you'll need to grab the fastboot drivers from here.

[disclaimer1]

Got it? OK, let's get started. Follow these instructions exactly!

First things first – extract all the files in the Docomo_OptimusG_Root-v1-AndroidPolice.zip package and open a terminal/command prompt in that location. Execute the following commands.

adb push lk.img /data/local/tmp/lk.img

adb push unlock.sh /data/local/tmp/unlock.sh

adb shell chmod 755 /data/local/tmp/unlock.sh

adb shell touch /sdcard/g_security

Now disable USB Debugging (in Settings > Developer Options), then re-enable it.

adb shell id

At this point, you should get an error about not executing /system/bin/sh – that's a good thing. If you didn't get the error, go back to the beginning and start over.

adb push hotplug /proc/sys/kernel/hotplug

Now toggle Bluetooth once and wait for the phone to display a "garbled" screen (this is the bootloader). If it displays a blank screen, pull the battery, reboot, and run 'adb reboot bootloader'.

fastboot devices

If you see your device, then you're good to continue. If not, you probably need to install the fastboot drivers you downloaded earlier.

fastboot flash boot boot.img

fastboot reboot

adb shell /sbin/rootme.sh

After that, simply head into the Play Store and grab SuperSU. That's it – you're done!

If, for some reason, your phone doesn't reconnect to the mobile network, reboot it several times. If that doesn't help, you'll have to re-flash stock firmware.

Special thanks:

adb backdoor: giantpune
Duct tape guru: jcase
bootloader: The Freegee guys
Testers: Shados and germes81m