Difference between revisions of "Tutorial:Booting XNU on A4 Devices"

From The iPhone Wiki
Jump to: navigation, search
(Booting the xnu kernel on Apple's A4 devices(+kernel panic))
 
Line 7: Line 7:
 
I present it with Mavericks and Mounten Lion <br />
 
I present it with Mavericks and Mounten Lion <br />
 
<br />
 
<br />
Mavericks:
+
Mavericks: <br />
 
$ curl -O http://opensource.apple.com/tarballs/dtrace/dtrace-118.tar.gz <br />
 
$ curl -O http://opensource.apple.com/tarballs/dtrace/dtrace-118.tar.gz <br />
 
$ curl -O http://opensource.apple.com/tarballs/AvailabilityVersions/AvailabilityVersions-6.tar.gz <br />
 
$ curl -O http://opensource.apple.com/tarballs/AvailabilityVersions/AvailabilityVersions-6.tar.gz <br />

Revision as of 23:05, 3 November 2013

Hello, I am 3x7R00Tripper and in this post I will present how can you boot xnu on all apple a4 devices.
I do it with my iPhone 4 iOS 6.1.3
You find this post on my website also: http://3x7r00tripper.com/bootingxnuona4.php
First you must install CTF tools etc.
I present it with Mavericks and Mounten Lion

Mavericks:
$ curl -O http://opensource.apple.com/tarballs/dtrace/dtrace-118.tar.gz
$ curl -O http://opensource.apple.com/tarballs/AvailabilityVersions/AvailabilityVersions-6.tar.gz
$ curl -O http://opensource.apple.com/tarballs/AvailabilityVersions/AvailabilityVersions-6.tar.gz
$ git clone https://github.com/3x7R00Tripper/xnu
$ tar zxf dtrace-118.tar.gz
$ cd dtrace-118
$ mkdir -p obj sym dst
$ xcodebuild install -target ctfconvert -target ctfdump -target ctfmerge ARCHS="x86_64" SRCROOT=$PWD OBJROOT=$PWD/obj SYMROOT=$PWD/sym DSTROOT=$PWD/dst
$ sudo ditto $PWD/dst/usr/local /usr/local
$ cd ..
$ tar zxf AvailabilityVersions-6.tar.gz
$ cd AvailabilityVersions-6
$ mkdir -p dst
$ make install SRCROOT=$PWD DSTROOT=$PWD/dst
$ sudo ditto $PWD/dst/usr/local `xcrun -sdk / -show-sdk-path`/usr/local
$ cd ..
$ cd xnu

For Mounten Lion read this post.

Now you are in the xnu folder
Know you must make it for Apple A4:

$ make TARGET_CONFIGS="debug arm S5L8930X"

After the process navigate to BUILD/obj/DEBUG_ARM_S5L8930X
In this folder are many files.
mach_kernel is the bootable image.

Ok now you need the 4.1 ipsw for your iDevice(A4)
If you have a newer iOS version, you need the 4.1 ipsw also.
You can download the ipsw for example here or here.

For booting the kernel you need redsn0w.
Open terminal and navigate to the redsn0w folder.
Now you write this commands:
$ cd redsn0w.app/Contents/MacOS
$ ./redsn0w -i <'4.1 iPSW'> -k <'mach_kernel'>
Here a example command:
$ ./redsn0w -i /Users/Louis/Desktop/iOS\:Mac\ hack/XNU_Kernel_Panic_Apple_A4-Booting/iPhone3\,1_4.1_8B117_Restore.ipsw -k /Users/Louis/Desktop/xnu/BUILD/obj/DEBUG_ARM_S5L8930X/mach_kernel
Now you must get your iDevice(A4) in the DFU mode.
Wait a few seconds and a white screen will flashes on your iDevice. Now you see the pineapple on your iDevice.
30 secounds - 1 minute later the kernel is booted on your iDevice.
A long time you see 'Still waiting for root device'.
But If you wait more than 10 - 30 minutes, appears a kernel panic.

Ok you are finish and have fun :)