InfoDoc ID |
|
Synopsis |
|
Date |
21404 |
|
T3 RAID controller boot code recovery procedure (including tftpboot) |
|
12 Jun 2000 |
T3 array RAID controller boot code recovery procedure
=================================================
In the unforunate event that your T3 unit loses it's
RAID controller boot code (contained in the 150Mb reserved
area that is mirrored across disks u1d1 to u1d9), then the following
procedure will allow you to recover and reload the unit with the
necessary software.
This may also be applicable to new units if the raid code
has not been factory loaded (THIS SHOULD NEVER HAPPEN,
AND SHOULD BE REPORTED IF SEEN).
The process is split into two distinct procedures:
1) TFTP booting the T3 unit from a suitable boot host.
2) Reloading the raid controller boot code onto u1d1.
NOTE: These procedures require the use of the Service Cable Kit
(also known as the Serial Cable Kit), which may be ordered
as part number 370-4119. If you do not have access to this
kit, then you may construct a suitable cable using information
found on page A-5 of the T3 Installation, Operation and
Service manual (806-1062-10).
TFTP Boot Procedure for T3 unit
=================================
1) Download a copy of the latest raid boot code from SunSolve.
(This will have a filename in the form: nbXXX.bin, where
XXX is the version number. In the following example we
are using nb095.bin, which indicates version 0.95 of the
boot code).
2) Configure the Solaris host as a tftp boot server by performing
the following steps (NOTE: This infodoc assumes that the tftp boot
server is on the same network as the T3 unit. Usually, the admin
host for the T3 is used as the tftp boot server.):
a) Create a /tftpboot directory, and set the permissions to
0755.
e.g. mkdir /tftpboot <RETURN>
chmod 0755 /tftpboot <RETURN>
b) Copy the raid boot code into the /tftpboot directory, and
set the permissions to 0444.
e.g. cp /export/home/download/nb095.bin /tftpboot <RETURN>
chmod 0444 /tftpboot/nb095.bin <RETURN>
The above example assumes that the raid boot code was downloaded
into the /export/home/download directory on the boot host. If this
is not the case, then you may need to use ftp, rcp etc.
c) Edit /etc/inetd.conf, uncommenting the following line to enable
the tftp boot server:
tftp dgram udp wait root /usr/sbin/in.tftpd
in.tftpd -s /tftpboot
d) Restart the inetd daemon.
e.g. ps -ef | grep -i inetd <RETURN>
root 133 1 0 Oct 25 ? 0:00 /usr/sbin/inetd -s
^
|
Process ID
kill -1 133 <RETURN>
3) Put an entry into /etc/hosts for the T3 unit. If the unit does not
yet have an IP Address, then allocate one from the available pool of
free IP addresses (You may need to consult with the customer to
determine a suitable address).
e.g. 192.200.5.231 t3
Alternatively, if the customer is running a naming service such
as NIS or NIS+, you may wish to insert an entry for the T3 into
the appropriate hosts table in the naming service.
You should also ensure that the entries in the /etc/nsswitch.conf
file for both ethers and hosts appear as follows:
For NIS:
hosts: nis files [NOTFOUND=return]
ethers: nis files [NOTFOUND=return]
For NIS+:
hosts: nisplus files [NOTFOUND=return]
ethers: nisplus files [NOTFOUND=return]
4) If you wish the T3 to attempt to get it's IP Address using RARP
(instead of explicitly specifying it in the PSOS environment), you
also need to put an entry into the /etc/ethers file on your boot server.
This entry will look something like this:
0:20:f2:0:1:d8 t3
^ ^
| |
MAC Address Name (as entered into hosts database)
The MAC Address can be found by looking at the white pull out
tab found on the front left hand side of the T3 unit.
Alternatively, if the customer is running a naming service such
as NIS or NIS+, you may wish to insert an entry for the T3 into
the appropriate ethers table in the naming service.
Once you have made this entry, you then need to check if the RARP
daemon is running on your boot server.
e.g. ps -ef | grep -i inetd <RETURN>
root 587 1 0 17:29:35 ? 0:00 /usr/sbin/in.rarpd -a
If you get no output from the above command, then issue the following
to start the RARP daemon:
/usr/sbin/in.rarpd -a <RETURN>
By default, the T3 will attempt to use RARP to obtain it's IP
address. If it cannot obtain one it will rely on the settings found
in the PSOS environment, or on the settings that may be configured in
the EEPROM boot environment (shown below in step 9).
5) Attach a serial cable from the RS-232 port on the T3 (labelled
COM on the right hand side of the raid controller) to a free
serial port on the tftp boot server (assuming they are in close
proximity to each other). If this is not possible, then you may
also use any host with a free serial port that is near to the T3
unit.
NOTE: You may require a 25-pin D-type male->male gender
changer for the Solaris host end of the serial cable. Ensure
that one is available if required.
6) Create an entry in /etc/remote for the T3 unit. This should be
done on the machine whose serial port is connected to the T3.
Use the entry for 'hardwire' as your template.
e.g.
hardwire:\
:dv=/dev/term/b:br#9600:el=^C^S^Q^U^D:ie=%$:oe=^D:
Copy this line, and then modify it to something like this:
t3:\
:dv=/dev/term/b:br#9600:el=^C^S^Q^U^D:ie=%$:oe=^D:
With regards to the dv entry, modify this to represent the serial
port which the T3 is attached to:
/dev/term/a for ttya
/dev/term/b for ttyb
Creating an entry in /etc/remote is not mandatory, but does provide
for easier administration by virtue of the fact that symbolic names
may be used. If you know which serial port your T3 unit is attached
to then you may also use the following command(s):
tip -9600 /dev/term/a
or
tip -9600 /dev/term/b
7) Start a tip session to the T3.
e.g.
tip t3 <RETURN>
This will allow you to monitor the tftpboot process.
8) Power on the T3 array (or arrays if using a partner group), and
when prompted press the <RETURN> key on the tip host.
NOTE: For the tftpboot process to work correctly, you may need to
disconnect the ethernet cable from the alternate master unit.
This is because the IP spoofing that occurs to allow both units
to have the same IP address can prevent the tftpboot process
from completing. Do not unplug the cable unless the tftp
boot process hangs without display an error message.
e.g.
T3-EP Release 2.06 1999/08/13 13:51:44 (192.200.5.231)
Copyright (C) 1997-1999 Sun Microsystems, Inc.
All Rights Reserved.
Found units: [u1-ctr]
auto boot is enabled
hit the RETURN key within 3 seconds to cancel...Cancelled!
NobleEP>
This will then return you to the 'NobleEP>' prompt.
NOTE: This prompt should change to something more indicative of a
Sun product by GA (General Availability). At this time, it is not
known what this prompt will be.
9) We must now configure the T3 unit to use our boot server as
the source for it's raid boot code. If the unit is not factory fresh,
then these setting may already be configured. If this is the case, then
simply verify that they are correct. If they are not correct, then
adjust them as necessary.
Assuming a factory fresh unit, we must configure the following settings
at the 'NobleEP' (EEPROM boot environment) prompt:
bootmode
ip (only required if RARP is not being used.)
netmask
tftphost
tftpfile
hostname
To see the current settings (these are the defaults for a factory
fresh unit) type:
set <RETURN>
NobleEP>set
bootmode auto
bootdelay 3
sn 000594
ip 0.0.0.0
netmask 0.0.0.0
gateway 0.0.0.0
tftphost 0.0.0.0
tftpfile
hostname
spindelay 0
revision 0206
mac 0:20:f2:0:1:d8
NobleEP>
These must be modified as follows:
set bootmode tftp <RETURN>
set ip xxx.xxx.xxx.xxx <RETURN> where xxx.xxx.xxx.xxx is the
IP address chosen previously,
and entered into /etc/hosts,
NIS or NIS+.
set netmask xxx.xxx.xxx.xxx <RETURN> where xxx.xxx.xxx.xxx is
the subnet mask for the
network that the T3 is
connected to.
set tftphost xxx.xxx.xxx.xxx <RETURN> where xxx.xxx.xxx.xxx is
the IP address of the
tftp boot server.
set tftpfile <filename> <RETURN> where <filename> is the name
of the raid boot code file in
in /tftpboot on the boot server.
e.g. nb095.bin
set hostname <hostname> <RETURN> where <hostname> is the name
you have chosen for the T3.
For our example, the results of the set command now appear
as follows:
NobleEP>set
->bootmode tftp
bootdelay 3
sn 000594
->ip 192.200.5.231
->netmask 255.255.255.0
gateway 0.0.0.0
->tftphost 192.200.5.230
->tftpfile nb095.bin
->hostname t3
spindelay 0
revision 0206
mac 0:20:f2:0:1:d8
NobleEP>
NOTE: These settings will not persist across a system reset, unless
they have already been configured in the PSOS environment. For
this reason, the next command is a 'boot', and not a 'reset -y'.
If we issued a reset at this point, and the initial settings were
factory default (as shown above), then they would again revert to
the defaults following the reset.
10) Issue the 'boot' command to attempt a tftp boot.
e.g.
boot <RETURN>
For a successful tftp boot, you should now see the following:
T3-EP Release 2.06 1999/08/13 13:51:44 (192.200.5.231)
Copyright (C) 1997-1999 Sun Microsystems, Inc.
All Rights Reserved.
Found units: [u1-ctr]
tftp boot is enabled
hit the RETURN key within 3 seconds to cancel...Cancelled!
NobleEP>
.
.
Our set commands from above
.
.
NobleEP> boot <RETURN>
Initializing TFTP...
Loading 192.200.5.230:nb095.bin
file header: size 268bac, checksum a39e806a, start 20010, base 20000
...........................................................................
Starting...
T3 Release 0.95 1999/10/04 13:25:45 (192.200.5.231)
Copyright (C) 1997-1999 Sun Microsystems, Inc.
All Rights Reserved.
Initializing software...
Found units: [u1-ctr]
Default master is u1
Starting Heartbeats...
Assigning Select IDs: u1(1)
Initializing system drivers...
Initializing XPT component...
Initializing QLCF component...
Initializing loop 1 ISP2100 ... firmware status = 3
Detected 10 FC-AL ports on loop 1
Initializing loop 2 ISP2100 ... firmware status = 3
Detected 10 FC-AL ports on loop 2
Initializing QLCS component...
Initializing SVD services...
256 MBytes Cache Memory Detected
Testing CPU DRAM... Passed
Testing ISP2100... Passed
Testing Cache memory... Passed
Testing XOR Memory... Passed
Initializing system DB structure...
Initializing configuration...
Initializing port configuration...
Initializing loop 3 to accept SCSI commands...
Mounting root volume...
Checking local file system...
Initializing network routes...
Starting Syslog Daemon...
Initializing host port u1p1 ISP2100 ... firmware status = 4
System has 1 active controller(s)
Initializing TFTP...
Starting ftpd...
Starting telnetd...
Starting timed...
Starting pshd...
Starting httpd...
Starting snmpd...
Starting schd...
Checking disk positions...
Starting psh...
Login:
An unsuccessful tftp boot might produce an error such as
the following:
T3-EP Release 2.06 1999/08/13 13:51:44 (129.200.5.231)
Copyright (C) 1997-1999 Sun Microsystems, Inc.
All Rights Reserved.
Found units: [u1-ctr] u2-ctr
tftp boot is enabled
hit the RETURN key within 3 seconds to cancel...
Initializing TFTP...
Loading 129.200.5.230:nb095.bin
tftp download error 10060002
If you see this error (or something similar), check the following:
a) Confirm that the /tftpboot directory contains the correct raid
boot code, and that the tftpfile setting on the T3 matches
the filename in /tftpboot.
b) Check the permissions on the /tftpboot directory (0755):
drwxr-xr-x 2 root other 512 Oct 26 12:02 tftpboot
and on the raid boot code file (0444):
-r--r--r-- 1 root other 2526140 Oct 26 12:02 nb095.bin
c) Check that the tftphost setting on the T3 is correct, and
confirm that the boot server and the T3 are on the same
network. You may consider using snoop at this point to help
troubleshoot any network connectivity problems.
d) If you are using a partner group, try disconnecting the ethernet
cable from the alternate master, as mentioned in step 8. above.
e) If the T3 unit(s) are connected to an ethernet hub, try connecting
the primary master directly to the host using a twisted pair crossover
cable. It has been observed that some poor quality hubs can cause
problems when trying to tftpboot the T3.
RAID controller boot code installation procedure
================================================
Once you are able to successfully get the 'Login:' prompt
on the T3 (as a result of a good TFTP boot), then you
must complete the following steps to install a new copy
of the raid controller boot code.
1) Login to the T3 as the 'root' user. By default, there will
be no password assigned at this point.
e.g.
Login: root <RETURN>
Password: <RETURN>
T3 Release 0.95 1999/10/04 13:25:45 (192.200.5.231)
Copyright (C) 1997-1999 Sun Microsystems, Inc.
All Rights Reserved.
t3:/:<1>
2) Using ftp, retrieve a copy of the raid boot code from the
tftp boot server.
e.g.
t3:/:<1>ftp xxx.xxx.xxx.xxx <RETURN> where xxx.xxx.xxx.xxx
Connected to xxx.xxx.xxx.xxx. is the IP address of
220 host FTP server (SunOS 5.6) ready. the tftp boot server.
Name (192.200.5.230:root): root <RETURN>
331 Password required for root.
Password:
230 User root logged in.
ftp> cd /tftpboot <RETURN>
250 CWD command successful.
ftp> bin <RETURN>
200 Type set to I.
ftp> get <filename> <RETURN> where <filename> is the name
of the raid boot code file in
in /tftpboot on the boot server.
e.g. nb095.bin
200 PORT command successful.
150 Binary data connection for nb095.bin (xxx.xxx.xxx.xxx,1026) (xxx bytes).
226 Binary Transfer complete.
2526140 bytes received in 113 seconds (21 Kbytes/s)
ftp> quit <RETURN>
221 Goodbye.
t3:/:<2>
NOTE: It is very important to use a BINARY transfer when copying
the raid code onto the T3 unit.
3) Once the boot code has been copied to the T3 unit, issue the
following commands:
boot -i <filename> <RETURN> where <filename> is the name
of the raid boot code file in
in /tftpboot on the boot server.
e.g. nb095.bin
set bootmode auto <RETURN>
reset -y <RETURN>
You should then see something similar to the following:
t3:/:<3>boot -i nb095.bin
file header: size 268bac, checksum a39e806a, start 20010, base 20000
t3:/:<4>set bootmode auto
t3:/:<5>reset -y
Disabling controllers
Enabling controllers
Resetting myself
The raid controller boot code will now have been successfully
reloaded, and a normal boot of the T3 unit should be seen.
e.g.
T3 Release 0.95 1999/10/04 13:25:45 (192.200.5.231)
Copyright (C) 1997-1999 Sun Microsystems, Inc.
All Rights Reserved.
Initializing software...
Found units: [u1-ctr]
Default master is u1
Starting Heartbeats...
Assigning Select IDs: u1(1)
Initializing system drivers...
Initializing XPT component...
Initializing QLCF component...
Initializing loop 1 ISP2100 ... firmware status = 3
Detected 10 FC-AL ports on loop 1
Initializing loop 2 ISP2100 ... firmware status = 3
Detected 10 FC-AL ports on loop 2
Initializing QLCS component...
Initializing SVD services...
256 MBytes Cache Memory Detected
Testing CPU DRAM... Passed
Testing ISP2100... Passed
Testing Cache memory... Passed
Testing XOR Memory... Passed
Initializing system DB structure...
Initializing configuration...
Initializing port configuration...
Initializing loop 3 to accept SCSI commands...
Mounting root volume...
Checking local file system...
Initializing network routes...
Starting Syslog Daemon...
Initializing host port u1p1 ISP2100 ... firmware status = 4
System has 1 active controller(s)
Initializing TFTP...
Starting ftpd...
Starting telnetd...
Starting timed...
Starting pshd...
Starting httpd...
Starting snmpd...
Starting schd...
Checking disk positions...
Starting psh...
Login:
SUBMITTER: Andrew R Fox
APPLIES TO: AFO Vertical Team Docs/Storage, Hardware/Disk Storage Subsystem/StorEdge Disk Array/StorEdge T3
ATTACHMENTS:
Copyright (c) 1997-2003 Sun Microsystems, Inc.