The title says it all. We're going to install an OS X client via network using a GNU/Linux box as DHCP/TFTP/NFS server.
First you'll want to setup your DHCP, TFTP and NFS server.
The default location for the TFTP server root on my system was /tftpboot
. It may be different on other distro so change at will. This directory is where we're going to put all the important files. Three files come from the OS X disc (although you'll have to rename two of them) and the fourth is a simple image of the OS X disc itself.
Mount the Mac OS X disc and copy and rename the following files into your TFTP server root
cp /cdrom/System/Library/CoreServices/BootX /tftpboot/BootX cp /cdrom/mach\_kernel /tftpboot/mach.macosx cp /cdrom/System/Library/Extensions.mkext /tftpboot/mach.macosx.mkext
Unmount and make an image of the install disc in the TFTP server root
dd if=/dev/hdc of=/tftpboot/macosx.img
On your NFS server, you'll want to modify /etc/exports
to include something like the following
/tftpboot/ mac-ip-address(ro,insecure)
where mac-ip-address is the mac address assigned to your mac manually (see step 7) or by the DHCP server.
At this point you'll want to start the TFTP server and NFS services.
Boot into the open firmware (by holding command+option+O+F) and issue the following commands
setenv boot-device enet:ip-address-of-linux-server,BootX setenv boot-args rp=nfs:ip-address-of-linux-server:/tftpboot/:macosx.img boot
where ip-address-of-linux-server is... self-explanatory.
The well familiar Mac boot sequence should start except now you have a little spinning world as logo while it tries to make a connection to the Linux server. You'll probably want to hold command+V while booting the Mac to see what's actually happening and to ensure the whole process is going smoothly.
I hope it helped!