View Full Version : PXE booting Intel Macs
Arcus
23rd October 2006, 07:32 AM
Is it possible to boot Intel/EFI based Macs from over a network from, say, a Windows RIS server?
The process would differ somewhat from NetBoot in that WDS solely uses DHCP to provide information about the boot server, wheras NetBoot uses DHCP and then (my understanding) asks for boot server info via BSDP. However, I can subvert BSDP by forcing the mac to boot from the network using bless, something like:
bless --netboot --booter tftp://our.ris.server/boot/x86/pxeboot.com --SetBoot
When we boot our MacBook after running this command, Ethereal reveals that it does indeed successfully download the pxeboot.com file via TFTP from our WDS server. However, it does not seem to do anything with this file and proceeds instead to boot into the next available OS, in this case, the OS X install on its hard drive.
Does anyone have any ideas about whether or not this is possible? Does the Mac simply not understand this pxeboot.com image, or is there some clever voodoo one can employ to coax it into booting successfully here?
Cheers,
Angus
chrisp
26th October 2006, 07:19 AM
Is it possible to boot Intel/EFI based Macs from over a network from, say, a Windows RIS server?
Intel Macs definitely support NetBoot, yes. Whether it works with a Windows server is a different matter.
When we boot our MacBook after running this command, Ethereal reveals that it does indeed successfully download the pxeboot.com file via TFTP from our WDS server. However, it does not seem to do anything with this file and proceeds instead to boot into the next available OS, in this case, the OS X install on its hard drive.
Does anyone have any ideas about whether or not this is possible? Does the Mac simply not understand this pxeboot.com image, or is there some clever voodoo one can employ to coax it into booting successfully here?
I think that the Intel Mac firmware expects to recieve an EFI binary that it can run. If you're looking to net-boot Mac OS X, you may find this site very helpful: http://www.bombich.com/mactips/netboot.html
Net-booting Windows or Linux with a standard PXE image will likely require dropping into BIOS compatibility mode first. I don't know much about PXE, but my approach would be to install a small partition with FreeDOS (or something similar) and try to PXE-boot from there.
Arcus
31st October 2006, 10:54 AM
The Mac EFI firmware doesn't seem to be able to boot PXE natively (though I'm sure it'd be possible to hack this together somehow). However, we have cobbled together another solution, using an intermediate Mac server running NetBoot and Mike Bombich's NetRestore (sort of).
Aparently NetRestore can handle NTFS partitions etc, but I sure as hell couldn't get it to work (and tried pretty hard, believe me). What we're doing is slightly outside the box, so I'm not totally surprised. We have been trying to restore a pre-configured WinPE discover setup which was created by:
1. Boot intel Mac with WinPE CD
2. Blow away contents of hard drive (diskpart), ensuring everything is MBR rather than GPT
3. Create 350MB primary, active partition
4. Copy contents of WinPE discover CD (boot and sources folders) from usb key, network, or whatever
5. Shut down the mac with 'wpeutil shutdown' to ensure a clean fs dismount
6. Target boot mac and suck off two things:
a) the MBR and partition table:
dd if=/dev/rdisk0 of=/path/to/your/mbr.file bs=512 count=1
b) use ntfsclone to clone off the PE partition
THEN the restoration fun begins.
We are using the NetRestore environment and have injected the NBI set with ntfsprogs (so we can restore the ntfs partition) and a few other things:
a) the mbr.file we generated earlier with dd
b) the .ntfs file containing our cloned ntfs partition
c) a pre-script which restores the whole thing using the following steps
Note that keeping things unmounted can be quite a bit of fun so you may need to use a bit of trial and error here.
1) do a diskutil eraseDisk on the target disk
2) dd if=/path/to/your/mbr.file of=/dev/rdisk0
3) ntfsclone --restore-image --overwrite /dev/disk0s1 /path/to/your/image.ntfs
4) bless --device /dev.disk0 --setBoot
5) shutdown -r now
And she's all sweet. Start her up, hold down N, and allow netrestore to do its thing - WinPE now boots, locates our WDS server and we're away with a Vista installation. We created our image on a MacBook and have successfully restored it to both that same MacBook and a spankin' new 20" iMac.
One thing worth noting is that this does away with GPT altogether - we are using a purely MBR style partition system.
carrie
11th December 2006, 05:34 AM
Hi Arcus
I am interested in following your advice on how to Netboot WinPE on a mac - to use ghost for imaging. I just wanted to make sure that I fully understand how you are doing this..
And she's all sweet. Start her up, hold down N, and allow netrestore to do its thing - WinPE now boots, locates our WDS server and we're away with a Vista installation. We created our image on a MacBook and have successfully restored it to both that same MacBook and a spankin' new 20" iMac.
Does the NetRestore set (including ntfs partition, mbr file, etc) restore the WinPE contents onto the hard drive, then reboot into WinPE (running from the hard drive)?
As I want to use WinPE to run ghost (to image a dual-boot lab), I would like to boot WinPE from the network, so that the entire hard disk is available for imaging - using forensic mode in ghost (sector-by-sector copy of entire drive).
Do you know of any work-around to get WinPE booting from the network? It would be great if anyone has any suggestions. Worst case scenario is that we will need to boot each Mac individually from CD...
gaelicWizard
4th February 2007, 05:05 AM
Does the NetRestore set (including ntfs partition, mbr file, etc) restore the WinPE contents onto the hard drive, then reboot into WinPE (running from the hard drive)?
This is a rather silly and long work-around...
As I want to use WinPE to run ghost (to image a dual-boot lab), I would like to boot WinPE from the network, so that the entire hard disk is available for imaging - using forensic mode in ghost (sector-by-sector copy of entire drive).
I recommend that you use NetRestore for the entire thing. One of the above posters noted that he couldn't get it working, and I'd imagine that you are in a similar situation. The trick that tends to get missed is that you must install NTFSprogs (available in a package from Bombich's site) onto the NetRestore image, if memory serves.
NetRestore will let you restore both the Mac side and the PC side in one fell swoop, using compressed images (and via block copy a.k.a. "forensic mode"). It supports full automation which is made truly useful in its pre- and post-scripts. It comes with a number of scripts to get you started. One such useful one is a short "Partition Drive ala Boot Camp" script which will format and partition your drive to your specifications with a HFS+ and a NTFS partition, allowing you to then image both easily.
I use NetRestore myself for both Windoze and Mac, and have some experience with Ghost. NetRestore beats the pants off Ghost. And its free, as in beer, and free, as in liberty.
I do not know Mike Bombich or have any contact with him except that I love his software.
All the instructions on getting up and running can be found at bombich.com.
JP
vBulletin® v3.6.4, Copyright ©2000-2012, Jelsoft Enterprises Ltd.