Setting Up JumpStart With Solaris 10 OS for SPARC Platforms and ZFSLucas Williams, January 2008 IntroductionThe setup I had was one Sun Enterprise 3500 server running the Solaris 10 Operating System for SPARC platforms with ZFS and one client machine (a Sun Netra X1 server). I needed to get the Solaris 10 OS installed on the client for a project my company was getting ready to start. I hope this walk-through of my process will help whoever needs to do something similar. Note: I used the Solaris 10 08/07 release, but this will also work with earlier versions back to 03/05. ContentsThis article covers the following topics:
PrerequisitesMake sure you are logged in as root or another system administrator. You should also have your boot server be your DHCP server. However, because my machines get DHCP from another server, and I am set up with static IPs on my servers, I didn't do this. Also, you need to have 1. Edit the # cd /etc # vi inetd.conf 2. Scroll down to the bottom of the file to the lines that look like this: # TFTPD - tftp server (primarily used for booting) # tftp dgram udp6 wait root /usr/sbin/in.tftpd in.tftpd -s /tftpboot 3. Uncomment the last line and save the document so it looks like this: tftp dgram udp6 wait root /usr/sbin/in.tftpd in.tftpd -s /tftpboot 4. Type 5. Run # inetconv 6. Then run # svcadm enable tftpd Now it's time to set up the ZFS storage pools, copy the files, and set up the configuration files...the fun stuff. Setting Up ZFS Storage PoolsI created a new pool on the Solaris JumpStart server: # zpool create install c1t7d0 I had a spare disk that wasn't being used in the server, so I made this my Solaris JumpStart server pool. After that, I created the shares. # zfs create install/config # zfs create install/boot # zfs set sharenfs=ro,anon=0 install # zfs set sharenfs=ro,anon=0 install/config # zfs set sharenfs=ro,anon=0 install/boot I then checked to make sure all my directories were there and everything was being shared properly: # cd /install # ls -l drwxr-xr-x 4 root sys 5 Jan 8 10:25 boot drwxr-xr-x 2 root sys 9 Jan 8 10:16 config # # share - /install ro,anon=0 "" - /install/config ro,anon=0 "" - /install/boot ro,anon=0 "" Copying FilesI then put the first CD of Solaris 10 HW807 SPARC in the CD-ROM drive on my Sun Enterprise 3500 server. Then I changed to the
# cd /cdrom/cdrom0/s0/Solaris_10/Tools # ./setup_install_server /install The script ran and copied the necessary files to my # cd / # eject cdrom Then I put the second CD in the CD-ROM drive, changed to the # cd /cdrom/cdrom0/Solaris_10/Tools # ./add_to_install_server /install I did similar steps until all the files for the five OS CDs and the Language CD were copied
to the I put Disc 1 back in my CD-ROM drive on the Sun Enterprise 3500 server and changed to the # cd /cdrom/cdrom0/s0/Solaris_10/Misc/jumpstart_sample # cp check /install/config # cd /install/config Setting Up Configuration FilesNow comes the fun part, which is actually writing the files to get the Solaris JumpStart server off and running. You can copy the samples from the disc and modify them as you see fit. Since I knew what I wanted my system to be used for, I wrote my own
files and then ran the The first file I created was
# vi sysidcfg
system_locale=en_US.ISO8859-1
timezone=US/Pacific
timeserver=localhost
terminal=vt100
name_service=NONE
security_policy=NONE
root_password=<encrypted password from /etc/shadow>
network_interface=dmfe0 {hostname=<hostname of client>
netmask=<your network's netmask>
protocol_ipv6=no
default_route=<your gateway>}
:wq
Next is the # vi rules hostname <hostname of client> - profile - :wq The two "-" symbols must be in the code above unless you are using a Make sure you change permissions on your scripts using Next you have to create your Once again, I used The Table 1: Values of Software Groups and Group Names
Here's what I used: # vi profile install_type initial_install cluster SUNWCXall partitioning explicit filesys c0t0d0s0 14000 / filesys c0t0d0s1 2048 /var filesys c0t0d0s3 1024 swap filesys c0t0d0s7 19500 /export/home system_type standalone :wq The next step was to check to make sure I didn't make any mistakes in my files. To do that, I just ran # ./check If everything comes out fine, you will have a file called # ls -l -rwxr-xr-x 1 root root 59701 Jan 8 10:16 check -rw-r--r-- 1 root root 232 Jan 8 10:14 profile -rw-r--r-- 1 root root 32 Jan 8 10:15 rules -rw-r--r-- 1 root root 57 Jan 8 10:16 rules.ok -rw-r--r-- 1 root root 278 Jan 8 09:33 sysidcfg Setting Up the Server to Boot CorrectlyNow comes the fun of actually setting up the server to boot. You have to get the MAC address of the client. You can get this two ways:
either run After you get the MAC address, add it to your # cd /etc # vi ethers 0a:3b:ba:f5:d1:e6 <client hostname> :wq Next, add your client to your # vi hosts <ip.address.for.client> <client hostname> :wq Now you have to make the boot server. Make sure you have Disc 1 for Solaris 10 OS in the CD-ROM, and then run
# cd /cdrom/cdrom0/s0/Solaris_10/Tools # ./setup_install_server -b /install/boot After this is complete, you can eject the CD: # cd / # eject cdrom Setting Up the ClientNow it's time to set up the client. I ran the following commands. I ran them straight from the files I copied off the CD in the
Note: It is very important that you run the following commands from your installation image, not from the CD, since where you run the commands determines where the client will look for the boot image. If you install from the CD, the client will look on the CD for the boot image, and unless you are using NFS to share the CD-ROM drive on your server, the commands will fail. # cd /install/Solaris_10/Tools # ./add_install_client -e 0a:3b:ba:f5:d1:e6 -s <server hostname>:/install -c <server hostname>:/install/config -p <server hostname>:/install/config <client hostname> sun4u The previous commands create all the needed files so the client can boot and find everything it needs to start installing the Solaris OS. The following describes what the flags mean:
Booting the ClientNow you are ready to boot up the client and have it find the server. Note: On my Sun Netra X1 server, I could get to the lights on management (LOM) console
by pressing #. and typing On the client, be at the OpenBoot ok> boot net - install When I ran this command, the client connected to my server, downloaded the OS, and commenced installing it. All I had to do was tell it to use the default IPv4 setting detected, and it did the rest, including rebooting and coming up in console mode. About the AuthorLucas Williams has been a UNIX and Microsoft Windows system administrator for over 15 years. He has experience with various forms of Linux, the Solaris OS (releases 2.6 through 10), Novell Networking, and Microsoft Windows NT 3.51 through Microsoft Windows Server 2008. He writes scripts to make managing various systems easier and does beta testing of new technologies prior to deploying the technologies into a production environment. Currently, he is working on different ways that virtualization can be used for deploying servers in a production environment.
Comments (latest comments first)Discuss and comment on this resource in the BigAdmin Wiki
Unless otherwise licensed, code in all technical manuals herein (including articles, FAQs, samples) is provided under this License. |
| ||||||||||||||||||||||||