|
Y2K "Black Box"
Replacement Instructions |
|
|
| BIOS
Setup and IP Configuration ITEF Download and Installation
Site
Configuration
User Accounts
Secure
Logins
Holdings
Deployment |
NOTE: These instructions were originally
prepared for Foster City support staff who were involved in setting up new InfoTrac
servers for shipment to customer sites. These servers were configured as replacements for
existing "black box" installations to meet Y2K compliance requirements. Although
much of the information needed is contained in this document, separate installation
instructions for new InfoTrac servers (i.e., not replacements) are available at InfoTrac
Server setup and installation. |
|
|
| BIOS
Setup and IP Configuration |
A. Each new PC needs BIOS setting mods
and installation of v1.1.1 "zero-step" Linux/CPS package. As you unpack each PC,
tape the inventory/configuration checklist (found in the box) to the machine and make any
configuration notes, including accompanying monitor S/N, to this paper.
- Hook up the new PC; insert the v1.1.1 boot floppy.
- Power up the PC; press F2 to enter the BIOS setup
- In the |Advanced| menu, set Plug & Play OS to NO
- In the |Power| menu, set Auto Suspend Timeout to OFF
- Exit and Save changes to the BIOS setup
- As the PC boots off the v1.1.1 floppy, insert the v1.1.1
installation CD
The floppy/CD installation takes about ten minutes. When complete,
and the final confirmation screen displays with the OK button, DO NOT
press the OK button yet. First:
- Press Alt-<right-arrow> to bring up a new
console screen and the bash prompt
- Type chip to run the changeIP script
- Update the IP data for the FC network
| Host Name: |
use the name of the site, e.g., notredame |
| Domain: |
fc.iacnet.com |
| IP Address: |
140.244.150.9[0-9] (pick one not
already used) |
| Net Mask: |
255.255.248.0 (CIDR /21) |
| Broadcast: |
140.244.150.255 |
| Def Route: |
140.244.150.204 |
| DNS servers: |
140.244.15.150 |
|
140.244.2.34 |
|
140.244.1.69 |
Exit the chip application
- Press Alt-<left-arrow> to return to the
installation screen; press OK
The system will now reboot with the current IP settings. The
machine should be able communicate through the IAC network. Test this by telneting to
itef-demo.iacenter.com (198.112.160.10) or other host (note: ping is not enabled past the
default router on the FC 140.244 segment) .
(Note: It is not necessary to run chip at the first time around.
If the installer does not run the chip application at this stage of the setup, the
changeIP console login can be used at any time to run the same application script, and set
the machine's IP configuration.)
The next two steps install the latest EF client (CPS) and mirror
the current configuration of the customers black box. |
|
|
| ITEF
Download and Installation |
B. Download the latest Linux EF client
from the ftp server and run the installation script.
- Log on to Linux at the console using
username: ITadmin
password: makeTracs
- FTP anon to the server at ftp.iacenter.com
[ITadmin@hostname]$ ftp ftp.iacenter.com
FTP>username: anonymous
FTP>password: youremail@address
- At the FTP prompt, set the file transfer mode to binary
FTP> binary
- Get the file itef_linux_260b.tar-z and save it as itef260b.tar.Z in
the /home/itef directory
FTP> get /pub/iac/distribution/itef_linux_260b.tar-z
/home/itef/itef260b.tar.Z
- Exit the FTP app
FTP> quit
- Set the current directory to /home/itef
[ITadmin@hostname]$ cd /home/itef
- Uncompress and unwind the tar file
[ITadmin@hostname]$ uncompress
itef260b.tar.Z
[ITadmin@hostname]$ tar xvf
itef260b.tar
Note: At this point, verify the version number listed in the
/home/itef/installation_version file. Earlier cuts of the v2.60b build do not update this
file correctly. If the version listed in the file is not 2.60b, edit the line in the file
to read 2.60b.
- Run the ITinstall script
[ITadmin@hostname]$ ./ITinstall
- When prompted for the Installation ID, use the site name and a
number 2; e.g.,
Enter installation id:
columbus2
- . When prompted for the Location ID, enter the Location ID (found
in RLIS) for the site (if more than one is used, enter the main LID); e.g.,
Enter location:
cml_main
(Note: this location ID is only recorded as part of the alias defined in the .profile for
the ITadmin account, and will not affect customer access; see shells installation section
below)
|
|
|
| Site
Configuration |
C. Create a configuration on the new
black box to mirror, as close as possible, the configuration image on the machine
currently deployed at the customer site. There are three steps:
- Recreate the user accounts and replicate startup shells for each;
replicate other scripts used to launch the EF client
- Configure any secure login daemons (e.g., rlogin), passwordless
login accounts, and/or TCPWrappers
- Download any holdings files used on the old system
- Test and debug startup shells and scripts; stage any special
terminfo files from the customer's current impementation*
Completion of these steps depends on reaching the customer's
current system over the internet. If the customer's system is behind a firewall and
unreachable, final deployment of the new system may require onsite installation. If the
customer prefers to complete the installation on their own, these instructions can be used
to as a guide. |
|
|
| User
Accounts |
1. Recreate the user accounts and
replicate startup shells for each; replicate other scripts used to launch the EF client
- On the new system, logon at the console
username: root
password: bbox.root
- Change to the ITadmin home directory
[root@hostname]$ cd
/home/ITadmin
- FTP to the system at the customer site, and login as ITadmin
[root@hostname]$ ftp
<host_IP_address>
FTP>username: ITadmin
FTP>password: makeTracs
- Set the file transfer mode to ASCII (the default on Linux' FTP
client is BINARY)
FTP> ascii
- Get the password and shadow file from the /etc directory
FTP> get /etc/passwd passwd
FTP> get /etc/shadow shadow
It is very important that you specify the file destination (in this case, the current
.../ITadmin directory), otherwise, Linux' FTP client will write the file to the same
directory, i.e., /etc, on the new system, overwriting the current /etc/passwd file. If
this happens, it will be necessary to reinstall the v1.1.1 package CD.
Note: It will be necessary, in most cases, to
change the file permissions on the remote system's /etc/shadow file before downloading. To
do this:
- switch to a new console on the local machine (use
function keys or Alt-arrow)
- log on as either root or ITadmin
- telnet to the remote system and log on as ITadmin
- su to the root account
- change the file permissions
$ chmod 444 /etc/shadow
Switch back to the previous console and proceed with the download. Once completed, return
to the second console and set the remote system's /etc/shadow file permissions back to
their original settings.
- Change to the local shells directory, and get all shell files from
the remote machine
FTP> lcd /home/itef/shells
FTP> mget *.shell
The latter will produce prompts to confirm the transfer of each file; respond to each with
'y' for yes.
- Exit FTP
FTP> quit
- In the shells directory, change the shell files' mode, owner and
group attributes
$ chmod 755 /home/itef/shells/*.shell
$ chown ITadmin /home/itef/shells/*.shell
$ chgrp admin /home/itef/shells/*.shell
- Change to the ITadmin home directory
$ cd /home/ITadmin
- Scan the passwd file to determine which user accounts will need to
be created
$ more passwd
The tail of the file output should look something like this (here we use Notre Dame's
system as an example):
...
batchdb:x:0:3::/:/sbin/sh
changeIP:x:0:3::/usr/local/etc:/usr/local/etc/interface.perl
ithold:x:103:101::/home/itef/release2/holdings:/usr/bin/true
ITmaint:x:0:3::/home/ITmaint:/home/ITmaint/dobackup
iteftest:x:104:101::/home/iteftest:/usr/bin/sh
infotrac:x:105:100::/home/itef/release2:/home/itef/shells/infotrac.shell
User accounts are usually listed after the 'iteftest' account. Here, there is only
one. The procedures below can be repeated for multiple user accounts identified in the
/etc/passwd file.
- Create the user account(s) on the new system; the entry in the
passwd file gives you the home directory and startup shell file name
$ useradd -d /home/itef/release2 -s
/home/itef/shells/infotrac.shell infotrac
- Recreate the password; to do this, scan the shadow file for the
account being created
$ grep infotrac shadow
The output record might resemble
infotrac:2dvWubC1KMwqw:10304::::::
Each field in the record is delimited by a ":" character. The contents of the
second field in this record, 2dvWubC1KMwqw, is the encrypted password (this will be unique
for each account). The Linux implementation on the new machines requires that this
password be recorded in the /etc/passwd file. To do this, execute the following command
$ echo "infotrac:2dvWubC1KMwqw" | chpasswd -e
(where | is the pipe character). Repeat steps 1.j through 1.l for each user account in the
passwd file.
Notes: (1) If no password value is present in that field of the shadow file's record, it
is necessary to remove the password field's placeholder in the new /etc/password file. (2)
If a large number of user accounts are required, a perl script can be used to loop the
useradd command through the passwd file; subsequently, the shadow file can be manipulated
and fed (piped) to the chpasswd -e command. A complete script that performs both tasks can
be viewed here.
|
|
|
| Secure
Logins |
2. Configure any secure login daemons
(e.g., rlogin), passwordless login accounts, and/or TCPWrappers Rlogin. If the current host contains a .rlogin file in the
/home/itef/release2 directory, chances are good that an rlogin client is being used to
reach teh black box. To deploy rlogin on the new black box, the following steps are
required:
- copy the .rhosts file from the old host to the new one
- if more than one account account is used on the new host, create
separate home directories on the new host, and distribute copies of the .rhosts file to
each
- edit each .rhosts file as required and assign ownership to the
account
Note a: some new Linux boxes shipped with the rlogin daemon
disabled. To remedy this, edit the /etc/inetd.conf (or /etc/inet/inetd.conf) file and
uncomment the 'login' service line.
Note b: be sure that all .rhosts files include the following, for
test purposes
localhost ITadmin
localhost root
Note c: in the Linux implementation, rlogin cannot be used
anonymously. That is, entries such as
opac.library.net +
are not permitted. It will be necessary to obtain the list of
remote host usernames and list them individually in the new .rhosts file.
Example 1. On the current host, there is one user account (e.g.,
'itef') listed in the /etc/passwd file. Assume that the account has been recreated on the
new system.
- copy the /home/itef/release2/.rhosts file from the old machine to
the new machine as /home/itef/release2/.rhosts
- change the file ownership to the user account ('itef'); this user
account's home directory should be /home/itef/release2
- test the configuration from the ITadmin account (see note b: above)
-- assume the local user account is 'itef'
$ rlogin -l itef localhost
Example 2. On the current host, there are multiple user accounts
(e.g., foo, bar, lart) listed in the /etc/passwd file. Assume these accounts have been
recreated on the new system.
- create separate home directories for each user account; e.g., from
root
$ cd /home/itef; mkdir foo; mkdir bar; mkdir lart
- move a copy of the current hosts /home/itef/release2/.rhosts file
to each of the new home directories; .rhosts files must be owned by the user account, and
file modes should be set to 644
$ chown .rhosts foo
$ chgrp .rhosts admin
$ chmod 644 .rhosts
- modify each account's home directory specification, e.g.:
$ usermod -d /home/itef/foo foo
- test the configuration from the ITadmin account (se note b: above)
-- ssume the local user account is itef.
$ rlogin localhost -l foo
Passwordless logins. If used on the current system, password
logins show up as account records in /etc/shadow that have no encrypted password. For
example:
cmlpres:Ad594jzEgqyfk:9330::::::
health::9443::::::
The first of these two entries contains an encrypted password, the second does not -- note
the empty second field. Passwordless logins should only be implemented when TCPWrappers
have been configured to allow logins only from trusted hosts/networks.
The Linux/PAM enabled applications use hosts.allow and hosts.deny
to implement TCP wrapper like functionality. No changes to the inetd.conf file are
required; standard nomenclature is used to specify host/protocol in each file. This
configuration should mirror that used (if any) on the current system. |
|
|
| Holdings |
3. Download any holdings
files used on the old system; most systems no longer use local holdings files, though a
few systems may have more than one.
- Logon at the console as ITadmin
username: ITadmin
password: makeTracs
- Change to the holdings directory
$ cd /home/itef/release2/holdings
- Connect with FTP to the current system and download any holdings
files in the corresponding directory
FTP> ftp <remotehost>
username: ITadmin
password: makeTracs
FTP> cd /home/itef/release2/holdings
FTP> ASCII
FTP> mget *.dat
If one or more holdings files exists, the last command above will produce prompts for
confirmation before downloading; respond to each with 'Y' for yes.
|
|
|
| Deployment |
4. Deployment Experience to date reveals that many sites are bringing up the new machines
along side the old ones; that is, both systems must be running on the same network while
tests are performed on the new box. This suggests a deployment strategy that includes the
following steps:
- Use the changeIP console login to modify the IP address of the new
box
- Bring the new box up on the network
- Test the new machine from OPAC gateways or telnet clients
In this way, additional configuration work may be performed,
especially that requiring access to both systems.
Once testing and configuration are complete, the library may
choose to
(a) permanently reconfigure the OPAC gateway or telnet client(s)
to reach the new machine on its current (new) IP address, or
(b) restore the new machine's IP configuration to match that of
the original system, and simply replace one with the other.
If the library chooses option (a) above, it is not unreasonable to
leave the original machine running in case backup is required, or in case the new system
must be brought down for further configuration or maintenance. A library may opt to leave
the original system running for a spell while confidence in the new system is reaches
levels approaching that with the original system.
Choosing option (b) assumes that all components of the new system
have been tested; restoring the original system could lead to down time during active
periods. Timing of the event may be critical; system administrators are implored to
perform the swap when users are least likely to be affected (e.g., early mornings during
the week).
Documentation: a copy of LinuxBBox.doc
should be filled out and forwarded to the library's system administrator.
NOTE: New Linux terminfos should work with current customer
terminal hardware, however if modifications were made to terminfos currently deployed on
the customer's machine, these should be copied to the new system and available for testing
once the new system is connected at the customer site. |