Difference between revisions of "FOG on a MAC"

From FOG Project
Jump to: navigation, search
m (Netbooting Apple Mac)
(Using stones)
Line 9: Line 9:
 
====Using stones====
 
====Using stones====
 
On startup (when you hear the sound, before Apple sign on the screen) you can hold down 'n' to boot from network. Apple uses a kind of special protocoll called NetBoot which is partly similar or includes DHCP protocol. But there is more to it. Find a detailed explanation [http://web.archive.org/web/20090215233615/http://www.bombich.com/mactips/bootpd.html here] if you want to dig into it.
 
On startup (when you hear the sound, before Apple sign on the screen) you can hold down 'n' to boot from network. Apple uses a kind of special protocoll called NetBoot which is partly similar or includes DHCP protocol. But there is more to it. Find a detailed explanation [http://web.archive.org/web/20090215233615/http://www.bombich.com/mactips/bootpd.html here] if you want to dig into it.
To get this up and running you don't really need to know all this. Setup your DHCP server properly and off you go. I only used ISC DHCPd together with Macmini so far. Please let us know on how to do this with dnsmasq and other Macintoshs, so we can update this page! Edit /etc/dhcp/dhcpd.conf and add the following:
+
To get this up and running you don't really need to know all this. Setup your DHCP server properly and off you go...
 +
=====ISC DHCP=====
 +
Edit /etc/dhcp/dhcpd.conf and add the following lines:
  
 
<code>
 
<code>
Line 27: Line 29:
  
 
This is just one example on how to do this. There are a lot of great tutorials about this on the web. Help yourself of you want to have an advanced setup of NetBoot...
 
This is just one example on how to do this. There are a lot of great tutorials about this on the web. Help yourself of you want to have an advanced setup of NetBoot...
 +
 +
=====DNSmasq=====
 +
So far untested but seems pretty straight forward: http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2010q1/003638.html
 +
Edit /etc/dnsmasq.conf and add the following lines:
 +
<code>
 +
dhcp-boot=net:#apple-boot,ipxe.efi,,<your-tftp-server-ip>
 +
dhcp-vendorclass=apple-boot,AAPLBSDPC/i386
 +
dhcp-option-force=net:apple-boot,43,08:04:01:00:0b:7e:82:0a:4e:65:74:42:6f:6f:74:30:30:31
 +
dhcp-option-force=net:apple-boot,60,"AAPLBSDPC/i386"
 +
</code>
  
 
Restart your DHCP server after the config change and try booting one of your Macintoshs holding down the 'n' key while it comes up. You should see a globe - instead of the apple - on the screen!
 
Restart your DHCP server after the config change and try booting one of your Macintoshs holding down the 'n' key while it comes up. You should see a globe - instead of the apple - on the screen!

Revision as of 17:26, 19 March 2015

Server Install

It has been reported that the FOG server will run on a MAC without any issues.

Client Tutorial

Netbooting Apple Mac

Intel Macintoshs all use (U)EFI - where common PCs have a BIOS - to bootstrap and to some extent talk to hardware. Several different ways exist to make those Macs boot from network. Depending on your preference and setup choose whichever suites you.

Using stones

On startup (when you hear the sound, before Apple sign on the screen) you can hold down 'n' to boot from network. Apple uses a kind of special protocoll called NetBoot which is partly similar or includes DHCP protocol. But there is more to it. Find a detailed explanation here if you want to dig into it. To get this up and running you don't really need to know all this. Setup your DHCP server properly and off you go...

ISC DHCP

Edit /etc/dhcp/dhcpd.conf and add the following lines:

# Important with apple macintosh!
authoritative;
allow booting;

class "AppleNBI-i386" {
       match if substring (option vendor-class-identifier, 0, 14) = "AAPLBSDPC/i386";
       option dhcp-parameter-request-list 1,3,17,43,60;
       if (option dhcp-message-type = 8) { option vendor-class-identifier "AAPLBSDPC"; }
       if (option dhcp-message-type = 8) { option vendor-encapsulated-options 08:04:01:00:0b:7e:82:0a:4e:65:74:42:6f:6f:74:30:30:31; }
       next-server <your-tftp-server-ip>;
       filename "ipxe.efi";
}

This is just one example on how to do this. There are a lot of great tutorials about this on the web. Help yourself of you want to have an advanced setup of NetBoot...

DNSmasq

So far untested but seems pretty straight forward: http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2010q1/003638.html Edit /etc/dnsmasq.conf and add the following lines:

dhcp-boot=net:#apple-boot,ipxe.efi,,<your-tftp-server-ip>
dhcp-vendorclass=apple-boot,AAPLBSDPC/i386
dhcp-option-force=net:apple-boot,43,08:04:01:00:0b:7e:82:0a:4e:65:74:42:6f:6f:74:30:30:31
dhcp-option-force=net:apple-boot,60,"AAPLBSDPC/i386"

Restart your DHCP server after the config change and try booting one of your Macintoshs holding down the 'n' key while it comes up. You should see a globe - instead of the apple - on the screen!

This method is called 'Using stones' as people use stones or other simliar objects to boot a whole lab into NetBoot... but there are other ways to achieve this too!

Using bless

Other then PC (BIOS) an Apple Mac can be 'blessed' to boot from whichever source you want. This setting is saved in NVRAM and not changed by cloning your Macs via FOG. I'd suggest activating SSH on your Macs and use clusterssh to bless all of them without having walk to and login to each and every client.

bless --netboot --booter tftp://<your-tftp-server-ip>/ipxe.efi

No special DHCP configuration is needed for this! BUT if your server ip changes for example you'd have to run this command on all your clients again.