// Fedora 17 on Macbook Air | Light At The End Of The Tunnel Fedora 17 on Macbook Air – Light At The End Of The Tunnel

Light At The End Of The Tunnel

systems administration meanderings

Fedora 17 on Macbook Air

At work we use CentOS and RedHat, therefore we work with and produce RPMs.  I wanted my MacBook Air to be able to build RPMs and also act as a build server for when I need to build servers at a new location.

I had previously installed Ubuntu and Cornice without too many issues.  This post gave me hope that the install would go well.

I firstly created a USB stick to perform the install. Unfortunately, it didn’t work for me I must have missed a step. I burnt a live CD and I was away.

Installation went OK. I created a /boot, a swap, a / and a special BIOS partitiion.  The latter I don’t think I need now. I rebooted and refit/refind nor the native Mac boot manager could boot Fedora.

This is the procedure I ended up using to get it to boot, I think these steps can be performed after the installation and before the reboot:-

  1. After install, boot from live CD.  And fire up a terminal (Activities->System Tools->Terminal)
  2. Setup the network connection - wireless worked for me.
  3. In the terminal, su - #to become root
  4. mount /dev/sda7 /mnt # mount the root partition on /mnt, in my case partition 7
  5. mount /dev/sda5 /mnt/boot
  6. mount -t proc proc /mnt/proc
  7. mount -t sysfs sysfs /mnt/sys
  8. chroot /mnt  # to go into the installed environment
  9. yum install grub2-efi
  10. mkdir /tmp/macefi
  11. mount /dev/sda1 /tmp/macefi
  12. cd /usr/lib/grub/x86_64-efi
  13. #Now we need to create a boot image for EFI
  14. grub2-mkimage -O x86_64-efi -d . -o grub.efi -p "" part_gpt part_msdos ntfs ntfscomp hfsplus fat ext2 normal chain boot configfile linux multiboot jpeg png search tga help font echo loadenv
  15. mkdir -p /tmp/macefi/efi/grub
  16. rsync -av grub.efi *.mod *.lst /tmp/macefi/efi/grub/.
  17. # Now we need to setup a grub2 grub.cfg for Fedora
  18. vi /tmp/macefi/efi/grub/grub.cfg

[code] timeout=5 menuentry “Fedora 17” { set gfxpayload=keep insmod gzio insmod part_gpt insmod ext2 set root=‘hd0,gpt5’ if [ x$feature_platform_search_hint = xy ]; then search –no-floppy –fs-uuid –set=root –hint-bios=hd0,gpt5 –hint-efi=hd0,gpt5 –hint-baremetal=ahci0,gpt5 –hint=‘hd0,gpt5’  6e491a7e-bdae-47d3-96a7-2e4248bf85ce else search –no-floppy –fs-uuid –set=root 6e491a7e-bdae-47d3-96a7-2e4248bf85ce fi echo    ‘Loading Linux 3.3.4-5.fc17.x86_64 …’ linux   /vmlinuz-3.3.4-5.fc17.x86_64 root=UUID=0ee1899c-2274-4b85-8478-0b69e0a481c2 ro rd.md=0 rd.lvm=0 rd.dm=0 SYSFONT=True  KEYTABLE=us rd.luks=0 LANG=en_US.UTF-8 rhgb quiet echo    ‘Loading initial ramdisk …’ initrd  /initramfs-3.3.4-5.fc17.x86_64.img  } [/code]

you will need to use your /boot partition above instead of gpt5

  19. umount /tmp/macefi
  20. reboot

Upon reboot refit/refin picked up the new boot entry and away Fedora 17 went.

Now to fix up the trackpad, and other settings.