2010년 3월 30일 화요일

ASUS Eee PC 1005PEB Hackintosh Install From Linux

ASUS Eee PC 1005PEB Hackintosh Install From Linux

Notes taken while playing around with various Hackintosh distributions and Eee PC 1005PEB.  Since these do not have DVD drives, it will need to be installed using USB flash drive or USB hard drive.  If you have access to a USB DVD drive then it simplifies things alot.

Bottom line: I've not been able to install OS X on this yet.  Using below instructions, I am able to build a USB bootable installer.  Upon bootup, the kernel hangs at a place that usually mentions something about IOAPCI.  I'm hoping that the distributions I have just need an Atom processor compatible kernel to fix this hang.  I've tried various versions of Chameleon's "boot" with no luck.

What you need:

  • Obtain ISO image of a OS X install distribution.  OS X seems to use hybrid ISO9660/HFS+ images.  The distributions I've seen use the ISO9660 part to contain the second stage boot loader from Chameleon.
  • Obtain a USB flash drive that has at least 8G space or a USB hard drive would probably work as well.  Since DVD's are around 4.7G, a 4G USB drive will not fit all contents.
  • Latest version of NetBookInstaller Image

Prepare USB drive.

Make sure you have tools needed installed.  hfsplus-tools contains tools to format a partition has hfs+.

yum install gparted hfsplus-tools

First, you will need to create a boot partition that can be used to further boot the OS X Installation partition.  You should probably be able to do this by installing Chameleon onto a partition but all versions I tried would cause the kernel to crash pretty soon on initial bootup.  The NetBookInstaller team has done all the heavy lifting in this area though.  This util only runs from a pre-existing OS X install and if you don't have access then your stuck.  Someone has been kind enough to provide an existing image of this boot partition though. Download the latest as instructed for Linux.

Install to your USB disk as follows:

dd bs=8192 if=NBI_083F.img of=/dev/sdx

Once done, unplug and replug the USB drive.  You should find 1 HFS+ partition on this that Fedora will mount.

Run gparted and create an additional partition on your USB.  Format as HFS+ (although its not real important since we will overwrite it).

Gparted will NOT use the correct partition ID and you MUST fix this for the new HFS+ partition. Use fdisk to do this tasks:

fdisk /dev/sdx
t
2
af
w

Be sure and re-plug in the USB drive after this step to make sure the new MBR is loaded.  Then unmount any auto-mounted partitions.

Find the HFS+ Volume Header in ISO installer image.

hexdump -C osx86dvd.iso | grep "48 2b 00 04"
00038400  48 2b 00 04 80 00 00 00  31 30 2e 30 00 00 00 00  |H+......10.0....|

HFS+ partitions start 0x400 (1024) bytes before the Volume Header.  So subtract 0x400 from offset shown by hexdump (0x38400 - 0x400 = 0x3800 in this case). 

Overwrite partition on USB drive.

Use dd to overwrite the empty HFS+ file sytem we created previously with HFS+ parition.  Use bc to compute how many blocks to skip.  block size of 8192=0x2000.  Replace /dev/sdx1 with your unique drive number.

echo "ibase=16; 38000 / 2000" | bc
28

dd ibs=8192 obs=8192 skip=28 if=osx86dvd.iso of=/dev/sdx2

Re-plug in the USB drive and verify you can see the second partition contains this copied of HFS+ partition.  If you have qemu installed, you can test you successfully created a bootable image using:

qemu -hda /dev/sdx -m 1024

Misc Notes

If you come across a DMG compressed file (.dmg extension), you can use 7-zip to pull out the HFS+ file system.  This can be copied to a a pre-created HFS+ partition using above instructions (don't forget to change partition type of 0xaf).

7z x diskimage.dmg 2.hfs
dd bs=8192 if=2.hfs of=/dev/sdx1

You can use 7z to view inside this HFS+ file system and even extra individual files:

7z l 2.hfs


Or you can mount it:

mount -t hfsplus 2.hfs /mnt -o loop

ASUS Eee PC 1005PEB Hackintosh Install From Linux

Notes taken while playing around with various Hackintosh distributions and Eee PC 1005PEB.  Since these do not have DVD drives, it will need to be installed using USB flash drive or USB hard drive.  If you have access to a USB DVD drive then it simplifies things alot.

Bottom line: I've not been able to install OS X on this yet.  Using below instructions, I am able to build a USB bootable installer.  Upon bootup, the kernel hangs at a place that usually mentions something about IOAPCI.  I'm hoping that the distributions I have just need an Atom processor compatible kernel to fix this hang.  I've tried various versions of Chameleon's "boot" with no luck.

What you need:

  • Obtain ISO image of a OS X install distribution.  OS X seems to use hybrid ISO9660/HFS+ images.  The distributions I've seen use the ISO9660 part to contain the second stage boot loader from Chameleon.
  • Obtain a USB flash drive that has at least 8G space or a USB hard drive would probably work as well.  Since DVD's are around 4.7G, a 4G USB drive will not fit all contents.
  • Latest version of NetBookInstaller Image

Prepare USB drive.

Make sure you have tools needed installed.  hfsplus-tools contains tools to format a partition has hfs+.

yum install gparted hfsplus-tools

First, you will need to create a boot partition that can be used to further boot the OS X Installation partition.  You should probably be able to do this by installing Chameleon onto a partition but all versions I tried would cause the kernel to crash pretty soon on initial bootup.  The NetBookInstaller team has done all the heavy lifting in this area though.  This util only runs from a pre-existing OS X install and if you don't have access then your stuck.  Someone has been kind enough to provide an existing image of this boot partition though. Download the latest as instructed for Linux.

Install to your USB disk as follows:

dd bs=8192 if=NBI_083F.img of=/dev/sdx

Once done, unplug and replug the USB drive.  You should find 1 HFS+ partition on this that Fedora will mount.

Run gparted and create an additional partition on your USB.  Format as HFS+ (although its not real important since we will overwrite it).

Gparted will NOT use the correct partition ID and you MUST fix this for the new HFS+ partition. Use fdisk to do this tasks:

fdisk /dev/sdx
t
2
af
w

Be sure and re-plug in the USB drive after this step to make sure the new MBR is loaded.  Then unmount any auto-mounted partitions.

Find the HFS+ Volume Header in ISO installer image.

hexdump -C osx86dvd.iso | grep "48 2b 00 04"
00038400  48 2b 00 04 80 00 00 00  31 30 2e 30 00 00 00 00  |H+......10.0....|

HFS+ partitions start 0x400 (1024) bytes before the Volume Header.  So subtract 0x400 from offset shown by hexdump (0x38400 - 0x400 = 0x3800 in this case). 

Overwrite partition on USB drive.

Use dd to overwrite the empty HFS+ file sytem we created previously with HFS+ parition.  Use bc to compute how many blocks to skip.  block size of 8192=0x2000.  Replace /dev/sdx1 with your unique drive number.

echo "ibase=16; 38000 / 2000" | bc
28

dd ibs=8192 obs=8192 skip=28 if=osx86dvd.iso of=/dev/sdx2

Re-plug in the USB drive and verify you can see the second partition contains this copied of HFS+ partition.  If you have qemu installed, you can test you successfully created a bootable image using:

qemu -hda /dev/sdx -m 1024

Misc Notes

If you come across a DMG compressed file (.dmg extension), you can use 7-zip to pull out the HFS+ file system.  This can be copied to a a pre-created HFS+ partition using above instructions (don't forget to change partition type of 0xaf).

7z x diskimage.dmg 2.hfs
dd bs=8192 if=2.hfs of=/dev/sdx1

You can use 7z to view inside this HFS+ file system and even extra individual files:

7z l 2.hfs


Or you can mount it:

mount -t hfsplus 2.hfs /mnt -o loop


The solution was:
# mount -t hfsplus /dev/sda2 /mnt/usbdisk

In /etc/fstab I have:
/dev/sda2 /mnt/usbdisk hfsplus  rw,user,noauto 0 0

And to fix some ownership issues I did this:
# chgrp -R users /mnt/usbdisk

댓글 1개:

  1. 간단하게 usb linux live 를 이용하여 설치하는 방법

    답글삭제