Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations TouchToneTommy on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

booting off an external CDROM 3

Status
Not open for further replies.

stevenriz

IS-IT--Management
May 21, 2001
1,069
Hello, I would like to install Solaris 8 onto a box that doesn't have a CDROM drive installed. But I do have an external SCSI CDROM drive. Is it possible to boot off an external CDROM in order to upgrade the OS of a particular Solaris box that doesn't have a CDROM drive internally?
 
One some models of SUN hardware you can and some you cant.
For example: You cant on sunfire V120 but you can on a ultra 5.

Too bad I.T. is not cash business

Luc Foata
Unix sysadmin, Oracle DBA
 
It used to be a nice way of making a living :()

I am looking to boot a netra T1 105 without a CDROM drive. Those are so expensive to add so I thought I might try an external that is considerably cheaper. I will check some manuals and see. I don't see why it wouldn't as I opened it up and the same scsi chain goes to the external port. Why we ever bought these without CDROMs I will never know. I just don't have the experience with jumpstart and frankly, am not interested in learning it right now. Unless I can make millions knowing this sort of thing. :))
 
Save yourself the trouble and boot off the network.

Boot to the OK prompt to find the MAC address, it should be displayed as part of the banner when you power it up.

Add the MAC address and host name to /etc/ethers on another system.

Add the IP address and host name to /etc/hosts on the same system.

Insert the CD-ROM, cd /cdrom/cdrom0/s0/Solaris_8/Tools, ./add_install_client hostname, and it should be ready. Check that in.rarpd is running (type in.rarpd -a if it isn't), and make sure the CD-ROM is being NFS shared (which should have been done by add_install_client) using dfshares.

You should now be able to boot net from the Netra. If the 'net' device alias isn't set, use show-nets to find out what the device addresses are for your network interfaces and try booting from them instead.

Annihilannic.
 
hmmm. Maybe it is easier then I think. I will try it thank you!!
 
./add_install_client hostname doesn't seem to be the correct syntax. I ran this command with the hostname of the remote machine I wish to load 8 onto and get this syntax error returned to me. The hostname is mouse (it's a netra t1)
# ./add_install_client mouse
./add_install_client: No client platform group given.
#

I will try using the syntax and see what happens. Or maybe, if you suggest, I can just share the CDrom manually and see what happens then.
 
No, there are a few more steps that add_install_client performs.

I forgot about the architecture part, it's most probably sun4u, so you should:

[tt]./add_install_client hostname sun4u[/tt]

No doubt someone will correct me if I've guessed the architecture for a Netra incorrectly...

Annihilannic.
 
Thank you that worked. So let me understand. By filling out the ethers and the hosts files correctly, there is no need to run the add_install_client with all the other parameters. Ok, onto the next step.
 
I was able to break the boot and type boot net. It did this...
=========================
ok boot net
Boot device: /pci@1f,0/pci@1,1/network@1,1 File and args:
SunOS Release 5.8 Version Generic_108528-09 64-bit
Copyright 1983-2001 Sun Microsystems, Inc. All rights reserved.
Configuring /dev and /devices
Using RPC Bootparams for network configuration information.
SUNW,hme1 : No response from Ethernet network : Link down -- cable problem?
Skipping interface hme1
Configured interface hme0
Searching for configuration file(s)...
===========================
It is now going through a Solaris install process. My question is how does it find the CD over the network? Is it broadcasting something and/or is something out there listening for this request? the in.RARPD perhaps on the system that has the Solaris CD in it?

Regardless thanks for all your help.
 
Precisely. When you boot net the system broadcasts a reverse ARP request using the MAC address of the network interface. Any in.rarpds listening on other systems check to see whether they recognise the MAC, in /etc/ethers on Solaris, and if they find a match, look up the corresponding name in /etc/hosts and respond with the IP address for that host.

Once that information is returned the IP address is configured, and a BOOTP request is sent out using TCP/IP (or UDP?). Similary the bootpds listening on other systems check their /etc/bootparams files and return information to the client about which NFS server they con boot from, etc., and where it can download it's kernel from. The kernel is downloaded using tftp, and booted. Am I making sense?

Annihilannic.
 
yes it makes total sense now to me. Thank you!! I can't imagine what would happen if more then one machine had that mac address :)

Anyway, I just thought of anohter question. How does it know to boot from the shared CDROM ?
 
Which is why MAC addresses are supposed to be globally unique. :)

That's one of the pieces of information supplied by bootpd. Have a look at the entry for that host in the /etc/bootparams file on the boot server.

Annihilannic.
 
Actually MAC addresses only have to be unique within a subnet. They don't pass beyond a router. They're just used by the datalink layer of the TCP/IP stack to communicate ethernet frames between other ethernet addresses they can directly see within that segment.

That's why the client has to be on the same subnet as the boot server. All it knows about itself is it's MAC address (ethernet address, not IP), until a friendly nearby bootpd replies.

Code:
</my2cents>


 
Actually guys, what I meant was I wonder what would happen if more then one machine acting as the remote boot machine had the same mac address in their ethers file. Would both respond?
 
Yep, that's a common gotcha. The interface would be configured with the IP address it receives first.

Annihilannic.
 
still a little curious. What would happen if the remove boot machine didn't have anything in the cdrom? where would it boot from? Maybe the ./add_install_client command just knows what to share and how to share it ???? curious.
 
It would fail to boot if the CD wasn't there and it couldn't mount it via NFS.

It knows what to share because it knows where you ran add_install_client from... a directory on the CD.

Annihilannic.
 
Annihilannic, I use your response in order to insall a V120 and it worked good!! so you get a star from me.

Thanks a lot!!!
 
Hi,

I'm doing something pretty similar & all the above have been helpful thanks.

Just one question, Do I need to run setup_install_server om the machine I'm trying to boot from?

(I haven't done so yet & I get a message along the lines of...
&quot;This system is only set up as a boot server for install clients. Use -s to specify a path to an install server&quot;
when I run add_install_client)

Thanks

Kevin
 
I am guessing that the add_install_client command when run from the remote machine, reads the ethers and the hosts files which need to be correct before you even start. Once you do a STOP A on the machine you wish to load the OS on, you will do a &quot;boot net&quot; which searches for ethernet ports and once it finds one connected to a network, it will just broadcast &quot;Hey I need an OS over here&quot; and the machine with the correct ETHERS file (matching MAC address) will respond and assign the machine with the IP address in the HOSTS file. Remember these two files need to have the information you ultimately want the &quot;new&quot; machine to have. IP address and hostname. Hope this helps and I hope I am right. After doing this now about 6 times, this is how I see it.

Steve
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top