![]() |
Netboot with 10.3 Client as Server
Hi!
Is it possible to use a computer with 10.3 as a server for Netbooting other computers in the same LAN? The purpose of this is that I have one iMac Bony Blue with an unoperative optical drive and that will not boot from an external USB one. I was wondering if I could use Netboot to reinstall the OS in that computer, but none of the other computers are running Mac OS X Server. |
Mac OS 10.3 client cannot act as a netboot server. If you did have a netboot server, setup properly, you could use it to install a system on your iMac.
Your best course of action would probably be to transfer the iMac's hard drive to another machine, install the system you want, then move the drive back to the iMac. (anyone know of any problems with this method?) |
Quote:
OS 10.3.3 Client on my iBook: `man -k bootpd': Code:
bootpd(8) - DHCP/BOOTP/NetBoot server |
Quote:
|
Interesting. I say it because I find it very hard to believe that Apple would include everything needed to get NetBoot working on 10.3 client when it and NetInstall are two very highly touted features of 10.3 server.
It may be possible, but it may also be more trouble than it's worth to get working, as well as some solid knowledge on how NetBoot works. I know it at least uses boopd, nfs, and netinfo binding. You also have to have a netboot or netinstall image along with its relevant kernel files, which I'm not sure if you can create with command line tools in 10.3 client. There may be other pieces that I am forgetting or not aware of. Quote:
|
Quote:
Quote:
If so then, we already have the images. Now what is the next step? |
I'm slowly poking around with this. I don't expect to have enough time to get it working quickly, unfortunately. If I get it done I'll be sure to post about it.
|
If you get it working, I'd love to know how. Now I'm curious...
|
type this in a terminal: man asr
dD :) |
Quote:
|
Quote:
Code:
EXAMPLESGranted this is not NetBoot, but it's a better solution in the long run (always quicker to startup from a local drive). dD |
But I still do not see how I can use it in an iMac with one single partition and no CD drive.
Quote:
|
create the source image on another Mac, then hook a firewire cable between them and start up the iMac in Target mode, then just run asr to restore the image to the iMac volume.
I suppose it's possible that you may be able to just install from the CD's direct to a iMac in target mode but I've never tried, I'd be interested to know if anyone has. dD |
Aha... Got ya.
Bondy Blue iMacs (see first post) do not have FireWire connectors. I already have installed several computers with asr for 9 and 10.3's Disk Utility (which is a GUI to asr I guess) and disk images, but this is not a viable solution since you cannot plug the FW disk in this models of iMac. Hence, besides USB, the only connector left is ethernet. That is why I was asking about netbooting. |
oh, no firewire, sorry about that.
Decided to read through the Bootpd man and it does appear that this would work given the correct set of NetBoot images, which you can create from Carbon Copy Cloner, then you will only need to create the directory structure, symlinks, xml configuration file and a bunch of other stuff. I think this will require a lot of troubleshooting before it works correctly or at all. Your quickest solution is still to pull out the HD, drop it in another mac for the install and then move it back to the iMac as Saint.duo recommended. dD |
[Seemingly] So Close...
Okay, I've gotten very close to NetBooting my iBook using my G4 running 10.3.3 Client as the NetBoot server. At least, it seems like I'm getting really close. (Note that the G4 is named tinadrien and the iBook is named fahn.)
One thing I have not gotten working is bsdpd (Boot Services Discovery Protocol Daemon). I think it's a part of bootpd in OS X. Anyway, it's the server that tells NetBoot clients where to get their bootloader, kernel, and root image file. It's not actually necessary because you can tell the client all this information directly in Open Firmware. So far I have gotten fahn to load the bootloader and kernel via tftp. The grey Apple logo appears with the twirling globe at the bottom -- this is the normal display while the bootloader loads the kernel and whatnot, AFAIK. Once the kernel has finished loading, the twirling globe is replaced by the standard circle-of-greyness-that-chases-itself. Here is where things go wrong. Once fahn has the kernel, its ethernet interface goes down completely. I may as well have unplugged the ethernet cable. At first, I had been connecting fahn and tinadrien directly. At this point, the following showed up in tinadrien's system.log: Code:
May 21 17:53:45 tinadrien kernel: UniEnet::monitorLinkStatus - Link is down.Then I used verbose mode (Cmd-V) to get some actual information about what was going on. Once fahn has the kernel, it outputs the following: Code:
standard timeslicing quantum is 10000 usDoes anyone know why fahn's network interface would go completely down? I've gotten this far and it's rather annoying to see it fail without even trying to load the OS image. Here are the pertintent Open Firmware variables: (Note that boot-args seemingly does not even come into play, since by the time the kernel is executed the network interface goes down.) Code:
boot-device enet:192.168.1.1,Panther.nbi\booter |
I'm very interested in seeing this through as I have a clamshell with a defunct cd drive :c(
So please, if ya'll have mercy, help get this working :c) Jack |
Well, oagail, you are far beyond anything I could help you on. Surely there must be some sort of Apple developers' forum, where even Apple techs wander by, that could provide you with some info from the inside.
|
It would seem to me that once the firmware hands over to the kernel, the kernel will need to know what the network settings are for the interface.
Are there any args that can be added to tell the kernel what its new interface/ip address is? BTW I assume 192.168.1.1 is the server, so how does the client know what it's IP is supposed to be? I used to do this stuff with HPs, and we always had the IP information transfered to the client in the bootp info, the server would have a 'table' of MAC hardware addresses that it would serve and a map of how those related to IP addresses of the client. Hope this points you in the right direction... |
On a related note ... is it possible to install netboot server from OS X Server 10.2 on a 10.3 client, and using ASR / CCC to create a 10.3 boot image and have netboot serve it ? I have 10.2 Server, but am unable to purchase the Panther Server Upgrade at this time
Thanks Jack |
1 Attachment(s)
Quote:
Quote:
Thanks for the pointer, regarding passing net info to the kernel. I had guessed that it would just use DHCP but I realize I should do more research into that area. |
Code:
May 21 17:54:09 tinadrien bootpd[20763]: bsdpd: re-reading configurationWhich is about the same point I'm at trying to netboot an imac from a linux server... (only I'm just trying to tell the client where to find it's image, rather than telling the server where to serve it from) |
Since I am more convinced as I read this thread I do not have the technical abilities to even try this, I really cannot understand what you are struggling with at present. And so I do not know if this will help at all, but I just wanted to mention that this apple doc at http://docs.info.apple.com/article.html?artnum=106439 mentions what ports Netboot uses.
|
I still cannot handle any of this technicicities, so I do not know if this will help either, but anyhow here I found a page supposedly describing how to use a Linux/Unix machine as a Netboot server for Mac clients. Check the links at the bottom.
http://staff.harrisonburg.k12.va.us/...eweaver/macnb/ |
It Works!
I have successfully configured a 10.3.5 client to act as a net boot server. Apple left out a couple things.
1) I launched bootpd from the command line with options -m -N -D -v rather than enableing it via xinetd.d. 2) you can enable tftp in xinetd.d (see man xinetd for details). Do not change the default directory, but instead, create a symbolic link named "Netboot" to /Library/Netboot INSIDE a directory named /private/tftpboot. 3 To create an image, follow the instructions at http://docs.info.apple.com/article.html?artnum=107353 I just figured this out, and wanted to let you know. If I need to go into more detail, let me know. P.S. I just remembered that I also had to add the property "dhcp_vendor_specific" with no value to NetInfo's "config/dhcp" directory, though I'm not actually sure if this did anything. P.P.S. the instruction in 3 tell you to use kextcache to create the file mach.macosx.mkext. Make sure that Ignore Permissions on this Volume is NOT checked in the get info window of you image volume before you do this. |
TYSVM! I've been trying to research how to do this for months! I'll definitely be experimenting this weekend! :)
|
I should have mentioned that the instructions I followed were in man (8) bootpd. Also available here
http://developer.apple.com/documenta.../bootpd.8.html |
Just for the record, another step-by-step, and seemingly easy guide, at http://www.macgeekery.com/hacks/hard...netboot_server
|
| All times are GMT -5. The time now is 08:51 PM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.
Site design © IDG Consumer & SMB; individuals retain copyright of their postings
but consent to the possible use of their material in other areas of IDG Consumer & SMB.