The EAN/UPC code (off barcode on box): 8806071669526 which relates to Samsung Galaxy Nexus I9250.
Model: GT-19250 (taken from sticker under battery)
On the phone check the kernel details:
In my instance I have:
This shows the phone is the maguro device which relates to the omap kernel (see
To match up the Kernel version look at the branches on https://android.googlesource.com/kernel/omap/ and indentify the Makefile which has the matching VERSION and SUBLEVEL:
The branch android-omap-tuna-3.0 appeared to match so I have used this in this example.
I used an Ubuntu 12.04 x64 within VMWare as my build environment.
Java version should be 1.6
(N.B. This bypasses following error received on x64 Ubuntu 12.04 LTS)
Install the rest of the required packages:
NB we don’t have to make we are just using the build environment configuration and prebuilt toolchains...
Change EXTRAVERSION to the following:
Modify the setversionlocal script (http://neosysforensics.blogspot.co.uk/2012/09/creando-volcados-de-memoria-en-android.html):
Add ‘exit’ around line 31. We do this so that it uses our EXTRAVERSION details rather than trying to generate this value itself.
If this works you should have a new arch/arm/boot/zImage file.
Add green lines, remove red:
Replace <username> with your username
The android SDK is required for the Android Debug Bridge (adb) tool to upload and run a shell on the target device. USB Debugging is required for this.
We use the ADB tool to push the kernel module and then load the module which opens a TCP connection. We then use netcat to connect to the TCP server and redirect the output to a file.
This may take a few minutes but insmod and nc should gracefully exit when they are done.
We can verify this worked by running strings on the memory dump looking for strings we know to exist (e.g. maradonna was typed into the search box):