6945519 How to Configure a Solaris Server for PXEBoot Installation

Published on November 2016 | Categories: Documents | Downloads: 27 | Comments: 0 | Views: 184
of 8
Download PDF   Embed   Report

Solaris Server for PXEBoot Installation

Comments

Content


How to configure a Solaris server for PXE-Boot
Installation
Contents:
• Introduction
• Network PXE-Boot Installation
• Setting Up a JumpStart PXE Boot Server
• Setting Up a DHP Server !or PXE Boot
• "dding #ore Drivers
• D$D%D-&'# #edia Installation
• Using D$D%D-&'# #edia
• Using D$D%D IS' (iles
• &esources
Abstract: )*is engineering re!erence e+plains *ow to add new device driver ,inaries to
an install image !or t*e Solaris 'perating S-stem .'S/ so t*at a s-stem wit* a new device
will ,e a,le to install and support t*is device during0 and a!ter0 t*e installation process1
)*is document is intended !or s-stems administrators and developers wit* a working
,ackground in UNIX1 )*e target operating s-stem is t*e Solaris 23 32$34 release !or +54
plat!orms .also known as Update 2/ wit* t*e new ,oot arc*itecture and also 'penSolaris
.also known as Nevada/1 )*is *ow-to is not applica,le to prior versions o! t*e Solaris 23
'S !or +54 plat!orms .6" release 37$38/ or an- versions o! t*e Solaris 'S !or SP"&
plat!orms1
Introduction
"s more users *ave ,egun adopting t*e Solaris 23 'S !or +54 and +49 plat!orms0 t*ere
*as also ,een an increase in driver development and testing1 Some drivers can ,e added
post-install usage ,- means o! a !lopp- disk or USB mass storage device1 )*is is true o!
most network drivers1 I! t*e s-stem *as an optical drive0 -ou can install t*e Solaris 'S
!irst0 t*en add t*e new driver later a!ter t*e s-stem ,ootstraps itsel! up1
However0 as users *ave tried t*e Solaris 'S on more s-stems0 some wit* no optical drive
or !lopp- or USB port0 or s-stems t*at *ave a new t-pe o! storage controller0 a pro,lem
arises: How do -ou install t*e Solaris 'S onto a s-stem t*at re;uires a device t*at does
not *ave a driver ,inar- alread- in t*e Solaris installation media< In t*e case o! a storage
controller0 unless t*e installer media *as t*e driver a priori0 t*ere will ,e no wa- to persist
t*e installation packages to disk storage1 "nd in t*e case o! a ,lade-t-pe computer wit*
primaril- a network inter!ace and little ot*er I$'0 it ,ecomes impossi,le to per!orm a
network install o! t*e Solaris 'S onto t*at s-stem i! t*e initial Solaris instance t*at ,oots
t*e s-stem over t*e network does not *ave a driver !or t*e network inter!ace1
)*is *ow-to document t*ere!ore provides a concise set o! directions to insert new device
driver ,inaries into t*e installation media1 It covers two primar- installation met*ods:
o Network installation using PXE ,oot$DHP
o reating -our own ,oota,le IS' install Ds and D%Ds
)*e document applies onl- to t*e Solaris 23 2$34 .also known as Update 2/ and
'penSolaris .Nevada/ versions t*at use t*e new Solaris ,oot arc*itecture1 .See &esources
section !or more in!ormation1/
Network PXE-Boot Installation
Per*aps t*e !astest and most convenient wa- to install t*e Solaris 'S *as ,een over t*e
network !rom a Solaris JumpStart server1 #an- administrators w*o use t*e Solaris
Enterprise S-stem ma- alread- know a,out JumpStart tec*nolog- !or Sun servers and
workstations ,ased on SP"& tec*nolog-0 w*ic* *ave network-aware 'pen Boot P&'#
!irmware1 Sun populari=ed t*is install met*odolog- nearl- two decades ago1 )*e ,asic
process !ollows t*ese simple steps:
21 )*e netinstall client is con!igured to ,oot over t*e network1
>1 Just a!ter powering up0 t*e client uses B'')P to ,roadcast !or network in!ormation1
71 )*e B'')P server replies wit* network0 ,ootstrap0 and installation in!ormation1
91 )*e client con!igures its network and retrieves ,ootstrap and installation !iles1
In recent -ears0 t*e Et*ernet inter!ace *as also ,ecome a standard on virtuall- all Ps0
and man- come ena,led wit* Intel?s Pre-,oot E+ecution Environment .PXE/ !irmware
t*at e+tends t*e P BI'S wit* a similar a,ilit- to per!orm network ,ootstraps and
installations1 )*e process !or Ps is essentiall- identical0 t*e onl- di!!erence ,eing t*at
PXE ,oot leverages DHP to retrieve network0 ,ootstrap0 and installation in!ormation in
steps .>/ and .7/1 @*at man- Solaris s-stem administrators ma- not know0 *owever0 is
t*at Solaris JumpStart servers can also ,oot Ps wit* t*e addition o! DHP server
support !or t*e PXE ,oot clients1 "ll t*e re;uired server so!tware components come
,undled into t*e Solaris 'S alread- and t*is is Aust a matter o! con!iguration1
Setting Up a JumpStart PXE Boot Server
)*e Solaris install media usuall- includes a utilit- to install t*e ,asic JumpStart server1
Inserting optical media into a running Solaris s-stem will usuall- prompt t*e volume
manager to mount t*e media at /cdrom1 @*en -ou c*ange t*e director- to t*e !ollowing
-ou s*ould see t*e JumpStart installation script setup_install_server(1m)1
# cd /cdrom/sol_10_106_x86/Solaris_10/Tools
Usage is straig*t!orward1 Just speci!- t*e command and a target installation director-:
# ./setup_install_server /export/install
)*e user can c*ange t*e target director-0 /export/install0 to anot*er location as needed1
&unning t*is command re;uires a,out 7 or more 6,-tes o! disk space on t*e slice t*at
*olds t*e target director-1 )*e command ma- also take an *our or more as all t*e
components are copied to t*e target director- !rom optical media1 )*e time depends on
t*e speed o! t*e optical drive0 and t*e speed o! t*e main s-stem1
Users w*o onl- *ave a D-&'# drive and no support !or D%Ds will ,e installing !rom
multiple disks1 )*e initial installation is t*e same !or D2 as !or t*e D%D1 "!ter t*e
initial setup_install_server0 -ou can e+it out o! t*e current director- ,ack to t*e /root
director-0 and t*en eAect t*e !irst D !rom t*e !ile manager window0 and t*en insert
additional Ds1 'n eac* D0 c*ange directories ,ack into t*e
/cdrom/sol_10_106_*/Solaris10/Tools/ director- and run t*e add_to_install_server.2#/
command wit* t*e same target director- -ou started wit*1
@*en t*e install server setup completes0 it is important to e+port t*e installation !ile
s-stem to t*e network1 )o do t*is0 edit t*e /etc/dfs/dfstab !ile and insert a line t*at looks
like t*e !ollowing:
share -F nfs -o ro,anon=0 -d "jumpstart dir" /export/install
Bou can edit /export/install to w*erever -ou unpacked t*e install server1 "!ter saving
and e+iting t*e editor0 -ou s*ould t*en ena,le or restart t*e N(S server ,- running t*e
!ollowing:
# svcadm enable svc:/network/nfs/server ; shareall
(or completeness0 -ou can create a director-:
# mkdir /export/install/jumpstart
)*en cop- t*e sample jumpstart_sample !iles to t*at director-:
# cp -r /export/install/Solaris_10/Misc/jumpstart_sample/* \
/export/install/jumpstart
Setting Up a !CP Server "or PXE Boot
In t*e previous section0 -ou completed most o! t*e tasks re;uired to trans!er JumpStart
installation packages to t*e server0 and make t*ese packages accessi,le over t*e network
t*roug* N(S1 However0 ,e!ore a P ,oot client can access t*ose packages0 it must ,oot
over t*e network and o,tain initial network and ,oot !iles to ,egin t*e installation1 (or
most network install environments0 t*e same JumpStart *ost also runs DHP and PXE
,oot server processes !or t*e ,oot clients1
@*en a PXE ,oot client starts0 it ,roadcasts !or network in!ormation and ,oot !iles1 )*e
network in!ormation is provided t*roug* DHP1 )*en t*e Solaris network ,oot program
.n,p/ and ot*er initiali=ation !iles suc* as t*e Solaris +541miniroot are trans!erred using
)()P0 and !inall-0 once t*e Solaris installer *as started0 t*e JumpStart installation
packages are trans!erred t*roug* N(S1
on!iguring t*e Solaris DHP re;uires t*e !ollowing:
o )*e DHP server s*ould ,e con!igured to recogni=e and respond to t*e PXE ,oot
client1
o "ll PXE ,oot directories s*ould ,e created0 and appropriate !iles t*at will ,e needed
,- t*e client during ,ootup s*ould ,e copied or linked1
I! a DHP server is alread- con!igured0 -ou can uncon!igure it using t*e dhcpconfig.2#/
command wit* t*e uncon!igure !lag0 !or e+ample:
# dhcpconfig -Ux
)*e server -ou con!igure *ere will answer promiscuousl- !or all PXE ,oot re;uests !or
t*e Solaris 'S on +54 plat!orms and works well on an isolated su,net w*ere it is t*e onl-
install service1 However0 i! t*is DHP service must coe+ist wit* ot*ers0 or re;uires
speci!ic con!igurations0 customi=ations are availa,le to answer re;uests onl- !rom
speci!ic #" addresses or !or speci!ic networks1 Please see t*e Solaris DHP
"dministration 6uide !or more in!ormation1
)*e !ollowing is a script t*at s*ould simpli!- most generic DHP con!igurations !or
PXE:
#!/bin/sh
dhcpconfig -D -r SUNWbinfiles -p /var/dhcp
dhcpconfig -N net!or"# -m netmas"# -t routerip#
dhtadm -$ -s Sroot%pt -d &'endor(SUNW)i*+pc,-,$S.//,-,0&
dhtadm -$ -s Sroot/12 -d &'endor(SUNW)i*+pc,3,/1,-,-&
dhtadm -$ -s SrootN4 -d &'endor(SUNW)i*+pc,5,$S.//,-,0&
dhtadm -$ -s Sroot167 -d &'endor(SUNW)i*+pc,2,$S.//,-,0&
dhtadm -$ -s Ss!ap/12 -d &'endor(SUNW)i*+pc,8,/1,-,0&
dhtadm -$ -s Ss!ap167 -d &'endor(SUNW)i*+pc,+,$S.//,-,0&
dhtadm -$ -s Sboot9/: -d &'endor(SUNW)i*+pc,;,$S.//,-,0&
dhtadm -$ -s St< -d &'endor(SUNW)i*+pc,*,$S.//,-,0&
dhtadm -$ -s Sboot=S -d &'endor(SUNW)i*+pc,>,NU4?@=,3,-&
dhtadm -$ -s Sinst/12 -d &'endor(SUNW)i*+pc,-0,/1,-,-&
dhtadm -$ -s SinstN4 -d &'endor(SUNW)i*+pc,--,$S.//,-,0&
dhtadm -$ -s Sinst167 -d &'endor(SUNW)i*+pc,-3,$S.//,-,0&
dhtadm -$ -s SsAsid.9 -d &'endor(SUNW)i*+pc,-5,$S.//,-,0&
dhtadm -$ -s SBumps.9 -d &'endor(SUNW)i*+pc,-2,$S.//,-,0&
dhtadm -$ -s Sterm -d &'endor(SUNW)i*+pc,-8,$S.//,-,0&
dhtadm -$ -s SbootU=/ -d &'endor(SUNW)i*+pc,-+,$S.//,-,0&
dhtadm -$ -m [email protected]$rchD00000DUND/D00300- -d
&D?oot9ile(Enbp)SUNW)i*+pcED?ootSrv$(serverip#D&
dhtadm -$ -m SUNW)i*+pc -d F
&DSinstN4(Eserver#EDSinst/12(serverip#DF
Sinst167(E/export/installEDSrootN4(Eserver#EDF
Sroot/12(serverip#DF
Sroot167(E/export/install/Solaris_-0/6ools/?ootEDF
SBumps.9(Eserver#D/export/install/BumpstartEDF
SsAsid.9(Eserver#D/export/install/BumpstartED&
Near t*e top0 net!or"# s*ould ,e replaced wit* t*e network address !or -our su,net .!or
e+ample0 192.168.100.0/1 )*e <netmask> is -our netmask .!or e+ample0 255.255.255.0/0 and
t*e <routerip> is t*e IP address o! -our router .!or e+ample0 192.168.100.1/1 'n t*e last
line o! t*e script0 replace <server> wit* t*e *ost name o! t*e install server0 w*ic* also is
t*e name o! t*e dhtadm macro -ou name on t*e last line previousl-0 and also replace
<serverip> wit* t*e IP address o! t*e install server1 ut and paste t*e script into a !ile and
run it as t*e super-user1
"lso0 edit t*e /etc/hosts !ile and add one or more client entries wit* an IP address1 (or
two clients0 do t*e !ollowing:
192.168.100.101 pxeclient1
192.168.100.102 pxeclient2
Now add t*ose to t*e DHP server client ta,le using t*e pntadm.2#/ command:
# pntadm -A 192.168.100.101 -m <server> -h pxeclient1 <network>
# pntadm -A 192.168.100.102 -m <server> -h pxeclient2 <network>
Note t*at <server> and <network> *ave t*e same meaning !or t*e server and network
macros speci!ied ,- t*e last line o! t*e PXE con!iguration script a,ove1 )*en send a -HUP
signal to t*e in.dhcp process ,- issuing t*e !ollowing command:
# pkill -HUP in.dhcpd
)*is signal will !orce t*e DHP server to reread its con!iguration !iles1 )*is s*ould take
care o! t*e !irst step o! DHP server con!iguration1
)o con!igure t*e ,oot !iles !or )()P0 t*e Solaris 'S provides a command to simpli!- t*e
creation and cop-ing o! all t*e !iles to t*e /tftpboot director-1 Simpl- run t*e command
!rom t*e /export/install/images/Solaris_10/Tools director-:
# ./add_install_client -d SUNW.i86pc i86pc
Bou s*ould now ,e a,le to test -our P client and ,oot PXE on t*e Solaris 'S1
#dding $ore rivers
)*ere are two steps to adding drivers !or PXE ,oot clients1 #ost critical to add are
usuall- t*e storage controller and network inter!ace drivers as e+plained previousl-1 )*e
!irst step is to insert t*ese drivers into t*e +541miniroot t*at loads t*roug* )()P1
)*e !ile0 i! -ou !ollow t*e a!orementioned directions0 would ,e located at t*e !ollowing:
/export/install/boot/x86.miniroot
But t*e !ile could ,e located at /export/<solaris_root_install_dir>/boot/x86.miniroot 0
w*ere <solaris_root_install_dir> is t*e top-level director- name under /export w*ere
-ou unpacked t*e install media1 )o do t*e !irst step0 unpacking t*e miniroot0 -ou can run
t*e root_archive.2#/ command on t*e install server1 )*is is onl- availa,le on t*e Solaris
23 2$34 release !or +54 plat!orms and later1 *ange directories to t*e
/export/install/boot or w*erever t*e install server setup put t*e packages0 and t*en
unpack t*e miniroot using t*e !ollowing command:
# /boot/solaris/bin/root_archive unpack ./x86.miniroot ./unpacked
'nce t*e miniroot is unpacked0 cop- t*e 7>-,it driver ,inar- and driver.conf !ile to t*e
/unpacked/kernel/drv director-0 and t*en run t*e /usr/sbin/add_drv command wit* t*e
rig*t PI IDs and t*e rig*t permissions against t*e unpacked miniroot director-1 (or
e+ample:
# add_drv -b <fullpath-to-unpacked> -n -v -m '* 0600 root sys' -i "<device ids>"
<mydrivername>
Note t*at <mydrivername> is t*e name o! t*e ,inar- Aust copied to t*e
./unpacked/kernel/drv director-0 and t*e <device ids> is a string list o! PI device IDs
t*at mig*t look like t*e !ollowing:
'"pci1a44,9043" "pci1a44,9065" "pci1a44,9106" "pci1a44,9053"'
"lso0 t*e -b !lag allows -ou to set t*e root pat* w*ere -ou appl- t*e driver add operation0
w*ic* is pointing to t*e unpacked miniroot1 Note t*at +541miniroot is 7>-,it and onl-
supports 7>-,it drivers1
)*e last step is to repack t*e miniroot using t*e same command0 ,ut speci!-ing pack as
t*e ke-word1 Be!ore -ou do t*at0 -ou can0 and pro,a,l- s*ould0 make a cop- o! t*e
original +541miniroot in t*e same ,oot director-1 (or e+ample:
# cp ./x86.miniroot ./x86.miniroot.orig
)*en run t*e root_archive.2#/ command:
# /boot/solaris/bin/root_archive pack ./x86.miniroot ./unpacked
I! t*e PXE ,oot server was working ,e!ore0 t*e client s*ould ,e a,le to ,oot and load t*e
+541miniroot and complete a normal installation o! t*e Solaris 23 2$34 release !or +54
plat!orms1 )*e installation will ,ring up a menu o! install c*oicesC t*e de!ault is to
per!orm an interactive install1 @*en doing an interactive install0 t*e installer o!!ers a
c*oice o! auto-re,oot or manual re,oot1 *oose t*e manual re,oot0 ,ecause w*ile t*e
previous steps get t*e driver into t*e miniroot0 t*e- do not do an-t*ing to install t*e
missing network driver onto t*e !inal client s-stem1 Select manual re,oot so -ou *ave a
c*ance to cop- over t*e drivers and run t*e add_drv command on t*e !inal client disk
image ,e!ore re,ooting1 't*erwise0 t*e newl- installed s-stem still will not *ave a
network driver1
Now w*ere do -ou put t*e driver ,inaries so t*e install client can cop- t*em over<
Bou could cop- t*e one !rom t*e miniroot?s /"ernel/drv t*at is alread- t*ere1 )*is works
i! t*e s-stem is onl- 7>-,it and will onl- run in t*is mode1 However0 i! t*e s-stem is +49
capa,le0 -ou did not cop- t*e 49-,it driver ,inar- into t*e miniroot?s /kernel/drv/amd64
director- and t*at is ,ecause t*e miniroot is onl- 7>-,it and does not *ave a
./kernel/drv/amd64 director-1 Bou could *ave created t*at director- in earlier steps0 ,ut
t*at is not necessar-1 During t*e Solaris PXE ,oot installation0 t*e client mounts t*e
install server directories t*roug* N(S1 )*us it is eas- enoug*0 ,e!ore re,ooting0 to simpl-
put t*e driver !iles in t*e install server?s e+ported PXE ,oot director-0 especiall- inside
t*e jumpstart director- w*ere t*e client alread- mounts t*em during t*e install1 Bou can
Aust put a ./jumpstart/drv su,director- inside t*e server?s e+ported directories1 )*is will
,e usuall- mounted on t*e install client as /tmp/install_config1 I! -ou cannot !ind it0 use
t*e df.2#/ command to see a list o! !ile s-stems and t*eir mount points1
C%&-'($ $edia Installation
#aking ,oota,le D or D%D install media wit* additional drivers is similar in process to
altering t*e +541miniroot !or network installation1 #ost o! t*e additional work is in
mounting t*e D or D%D0 cop-ing over t*e entire disk image contents to anot*er
director-0 per!orming t*e same driver insertion operations on t*e cop- o! t*e install
image0 and t*en repackaging t*e !iles and creating a ,oota,le IS' image t*at can ,e
,urned onto D or D%D media1
Using C%&-'($ $edia
I! D%D or D-&'# media are present alread-0 t*en it s*ould ,e straig*t!orward to cop-
t*e !iles over1 Simpl- insert t*e disk into t*e drive0 and t*en at t*e command line do t*e
!ollowing:
# cd /cdrom/sol_10_106/x86; find . -depth -print|cpio -vpdm <targetdir>
Note t*at t*e <targetdir> is t*e !ull pat* to t*e target-working director-1 'nce copied
over0 t*e miniroot is usuall- located in <targetdir>/boot/x86.miniroot1 &epeat t*e
previous steps in t*e section titled D"dding #ore Drivers1D
@*en done0 use t*e mkisofs(8) command to repackage t*e !iles into a ,oota,le IS'
image to ,e ,urned1 Speci!icall-:
# mkisofs -o <outfilename.iso> -b boot/grub/stage2_eltorito \
-c .catalog -no-emul-boot -boot-load-size 4 \
-boot-info-table -relaxed-filenames -N -L -l -r -J \
-d -D -V <volname> <targetdir>
&eplace t*e <outfilename.iso> wit* t*e !ile name -ou want output0 and <volname> wit* a
volume name .!or e+ample0 MYS10VOL/1 <targetdir> is t*e same as !rom w*ere t*e original
!iles were copied1
Using C%& IS( )iles
I! -ou do not *ave media0 ,ut *ave downloaded an IS' !ile0 -ou do not need to ,urn t*e
media !irst and t*en mount it1 )*e Solaris 'S o!!ers a loop,ack !ile s-stem mounting
command0 lofiadm.2#/0 t*at allows users to mount IS' images1 Simpl- use t*e !ollowing
command:
# /usr/sbin/lofiadm -a isoimagepath#
Note t*at isoimagepath# is t*e !ull pat* to t*e downloaded installation IS' image1 '!ten0
t*e lofiadm.2#/ command will return t*e ,lock device location as /dev/lofi/1 or
/dev/lofi/2 or /dev/lofi/ depending on t*e num,er o! loop,ack !ile s-stems alread-
mounted1 )o mount t*is as a reada,le !ile s-stem0 use t*e mount.2#/ command:
# mount -F hsfs /dev/lofi/1 /mnt
)*e !iles are now availa,le Aust as in t*e section titled DUsing D$D%D-&'# #edia0D
e+cept at t*e /mnt mount point1 &epeat t*e same process !or inserting drivers into t*e
install image as in D"dding #ore DriversD and repackage as a ,urna,le and ,oota,le IS'
image using t*e same command in t*e section titled DUsing D$D%D-&'# #edia1D
@*en complete wit* t*e loop,ack !ile s-stem mount0 simpl- run t*e umount.2#/ and
lofiadm.2#/ commands to umount:
# umount /mnt; lofiadm -d /dev/lofi/1
&eplace t*e /mnt and /dev/lofi/1 wit* -our mount points in t*e previous command1
'esources
(or more in!ormation0 *ere are a num,er o! use!ul links:
o Solaris DHP "dministration 6uide
o Setting up PXE net,oot !or +54 clients .Dan #ick?s PXE Boot 6uide/
o Jan SetAe-Eilers? @e,log
o 6&UB and t*e Solaris 23 2$34 'S: )*e New Bootloader !or +54 Plat!orms .a primer
,- S*udong E*u and Jan SetAe-Eilers/
Source
*ttp:$$www1sun1com$,igadmin$!eatures$articles$deviceFdriverFinstall1Asp
#dditional *elp on t*e topic:
*ttp:$$osdir1com$ml$solaris1solaris+54$>338-3>$msg327291*tml

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close