Difference between revisions of "Setting Up RIS on ULTRIX V2.0"

From Computer History Wiki
Jump to: navigation, search
(New page)
 
(Preparations: DLI Note added)
Line 8: Line 8:
  
 
An ordinary installation might leave you without the necessary disk space for RIS.
 
An ordinary installation might leave you without the necessary disk space for RIS.
 +
 +
'''NOTE:'''
 +
 +
In the [[Advanced Installation of Ultrix V2.0 on SIMH#Boot the Miniroot System on the VAX-11/785|Miniroot boot section]] of the Advanced Installation you must choose the '''DLI''' option (number 4) during the "SPECIFY OPTIONS FOR THE CONFIGURATION FILE" phase.
 +
 +
Otherwise RIS clients cannot boot from the RIS server.
  
 
You can use RIS to install ULTRIX on a real [[MicroVAX]] or [[VAXstation]] without a tape drive from a [[SIMH]] ULTRIX RIS Server.
 
You can use RIS to install ULTRIX on a real [[MicroVAX]] or [[VAXstation]] without a tape drive from a [[SIMH]] ULTRIX RIS Server.

Revision as of 21:32, 6 July 2022

Preparations

To set up the ULTRIX Remote Installation Service (RIS) you need some preparations:

  • Configure your computer for connection of multiple SIMH network instances

or:

An ordinary installation might leave you without the necessary disk space for RIS.

NOTE:

In the Miniroot boot section of the Advanced Installation you must choose the DLI option (number 4) during the "SPECIFY OPTIONS FOR THE CONFIGURATION FILE" phase.

Otherwise RIS clients cannot boot from the RIS server.

You can use RIS to install ULTRIX on a real MicroVAX or VAXstation without a tape drive from a SIMH ULTRIX RIS Server.

Connect Multiple SIMH Network Instances on one Computer

It is a known problem that you can run multiple instances of SIMH simulators on one computer, but cannot connect the network interfaces of those simulators directly.

You can either use multiple computers connected ba a LAN to solve this, or do a special network setup.

Unfortunately I can only show you how to do this on Debian Linux, with other Linus distros it's probably similar. Windows: I don't know, sorry!

Run the following shell script as root:

#!/bin/sh

# Create four virtual tap network interfaces
tunctl -t tap0
tunctl -t tap1
tunctl -t tap2
tunctl -t tap3

# Create a virtual bridge
brctl addbr br0
brctl setfd br0 0

# Connect the four virtual interfaces to the virtual bridge
brctl addif br0 tap0
brctl addif br0 tap1
brctl addif br0 tap2
brctl addif br0 tap3

# Do a minimal configuration for the virtual interfaces
ifconfig tap0 0.0.0.0
ifconfig tap1 0.0.0.0
ifconfig tap2 0.0.0.0
ifconfig tap3 0.0.0.0

# Activate the virtual bridge
ip link set br0 up

# Activate the virtual interfaces
ifconfig tap0 up
ifconfig tap1 up
ifconfig tap2 up
ifconfig tap3 up
# Show virtual bridge configuration
brctl show

# Show interfaces
ip link  


Use this SIMH command to attach to e.g. virtual interface tap0:

attach xq/xu tap:tap0

Setting Up RIS

Boot ULTRIX V2.0

Log in as root or become superuser

Add New Host gobo to Network Configuration of RIS Server

# netsetup
You will be asked a series of questions about your system.
Default answers are shown in square brackets ([]).
To use a default answer, press the RETURN key.
***** ADD/CHANGE SYSTEMS IN /etc/hosts *****
Enter the host name, abbreviations, network number, and host number for
each host on the network.  Enter this information on separate lines
when prompted.  This information is stored in the /etc/hosts file.  When
finished, press the RETURN key at the hostname prompt.
Enter the name of the host you want to add to /etc/hosts: gobo
You want to add host "gobo".  Is this correct [yes]? yes
Enter any abbreviations for "gobo", separated by a blank space.
If you do not want any abbreviation names, press the RETURN key: [RETURN]
You do not want any abbreviation names for "gobo".  Is this correct [yes]? yes
For a Class A network, the network number is in the range 1 through
126.  For a Class B network, the network number consists of two fields
separated by periods.  The first field is in the range 128 through 191,
and the second field is in the range 1 through 254.  For a Class C
network, the network number consists of three fields separated by
periods.  The first field is in the range 192 through 223, the second
field is in the range 0 through 255, and the third field is in the
range 1 through 254:
   Class A:  1       through 126
   Class B:  128.1   through 191.254
   Class C:  192.0.1 through 223.255.254
Enter the network number for gobo: 10
The network number is 10.  Is this correct [yes]? yes
You are setting up kermit on a Class A network.
Valid Class A host numbers consist of three fields separated by
periods.  The first two fields are in the range 0 through 255, and
the third field is in the range 1 through 254:
   0.0.1 through 255.255.254
An alternate representation for the three bytes of information specifying
the host number is one field in the range 1 through 16777214:
   1 through 16777214
Enter the host number for gobo: 100
The Host number is 0.0.100.  Is this correct [yes]? yes
Enter the name of the host you want to add to /etc/hosts: [RETURN]
Are you finished adding hosts [yes]? yes
Enter the names of trusted hosts.  Trusted hosts are systems you
consider to be secure.  Be careful if you select trusted hosts.  Any
users on a trusted host can log in to kermit without password
verification if they have a valid account on your system.  The names of
the trusted hosts are stored in the /etc/hosts.equiv file.  When you
have finished entering the names of trusted hosts, press the RETURN key.
Enter the name of a trusted host: gobo
"gobo" is a trusted host.  Is this correct [yes]? yes
Enter the name of a trusted host: [RETURN]
Have you finished entering the names of trusted hosts [yes]? yes
***** SETTING UP /usr/hosts DIRECTORY *****
***** NETWORK SETUP COMPLETE *****
#

Install Software Subsets Using the ris Tool

You cannot update the default model files and the model files for your clients with the software subsets, because you haven't defined any clients yet.

# ris
WELCOME TO THE REMOTE INSTALLATION SERVICES (RIS) UTILITY  
       **************************************************************
       ***********            LICENSING NOTICE              *********
       ***********                  FROM                    *********
       ***********       DIGITAL EQUIPMENT CORPORATION      *********
       Digital Equipment Corporation and most software vendors
       distribute software products under Software License Agreements
       which govern the installation and use of their software.
       YOU are responsible for ensuring that the correct Software
       Licenses have been obtained BEFORE completing this procedure.
       Descriptions of License Options available for specific Digital
       Equipment Corporation products may be found in the applicable
       Software Product Descriptions (SPD).  
       Should you have questions concerning any of the above, please
       contact your local Digital Equipment Representative, or call
       1-800-DIGITAL for assistance. 
To continue please enter the superuser password: ult020 (not echoed)
Setting up mop_mom in rc.local
This utility allows you to set up a network kit. Before using this
utility, read the Overview of the Network Kit Setup Procedure
chapter in the Network Management Guide. Then, use the Setting Up
the Network Kit chapter, also located in the Network Management
Guide, to help you answer the prompts displayed by this utility.
       NETWORK KIT MENU
       Install Software Subsets => I
       Add Client Processor     => A
        Remove Client Processor  => R
       Type your choice [no default]: I
You have chosen to install software subsets to the /usr/adm/ris directory. 
Enter the full path associated with the software distribution kit
device or mount point [no default]: /dev/nrmt0l
Press RETURN after you have mounted the software
distribution media. [STRG + e]
Simulation stopped, PC: 8000228D (BNEQ 80002259)
sim> ATT TQ0 AQ-JU85B-BE_ULTRIX-32_2.0_SUPPORTED_87.tap
sim> c
[RETURN]
Loading software subsets to the /usr/adm/ris directory. 
Please make sure your installation tape is mounted and on-line.
Ready (y/n)? y
Positioning tape....done.
Extracting ROOT...done.
Extracting ULTBASE020...done.
Extracting ULTACCT020...done.
Extracting ULTBIN020...done.
Extracting ULTBSC020...done.
Extracting ULTINET020...done.
Extracting ULTMOP020...done.
Extracting ULTNFS020...done.
Extracting ULTUMAIL020...done.
Extracting ULTCOMM020...done.
Extracting ULTDCMT020...done.
Extracting ULTEXER020...done.
Extracting ULTF77020...done.
Extracting ULTPASCAL020...done.
Extracting ULTPGMR020...done.
Extracting ULTSCCS020...done.
Extracting ULTUUCP020...done.
Extracting ULTMAN020...done.
Checksumming the images...
ROOT
ULTBASE020
ULTACCT020
ULTBIN020
ULTBSC020
ULTINET020
ULTMOP020
ULTNFS020
ULTUMAIL020
ULTCOMM020
ULTDCMT020
ULTEXER020
ULTF77020
ULTPASCAL020
ULTPGMR020
ULTSCCS020
ULTUUCP020
ULTMAN020
Media extraction complete.
Updating the default permission model files. 
Do you want the permission files for your client
processors and model files to be updated with the new
version of ULT modules?
NOTE: If the files being modified have no subsets from
ULT product the entire set of subsets will be added
to the file. Otherwise only those subsets of past versions
of ULT will be updated to the new version. If the 
updated file is a model file only version updating is done.
Type yes or no. [yes]: no
You chose not to update the permission files for your client processors
with these software subsets. You can find these software subsets in the
/usr/adm/ris directory
#

Define New Host gobo Using the ris Tool

IMPORTANT NOTE:

Don't use uppercase hostnames for RIS clients (rather: don't do it at all), although the rule for system names for kernel configuration is to use uppercase names.

It took me half a day and more than a dozen attempts to find out that a hostname made of capitals makes a RIS installation break ...

# ris
WELCOME TO THE REMOTE INSTALLATION SERVICES (RIS) UTILITY  
        **************************************************************
        ***********            LICENSING NOTICE              *********
        ***********                  FROM                    *********
        ***********       DIGITAL EQUIPMENT CORPORATION      *********
        Digital Equipment Corporation and most software vendors
        distribute software products under Software License Agreements
        which govern the installation and use of their software.
        YOU are responsible for ensuring that the correct Software
        Licenses have been obtained BEFORE completing this procedure.
        Descriptions of License Options available for specific Digital
        Equipment Corporation products may be found in the applicable
        Software Product Descriptions (SPD).  
        Should you have questions concerning any of the above, please
        contact your local Digital Equipment Representative, or call
        1-800-DIGITAL for assistance. 
To continue please enter the superuser password: ult020 (not echoed)
This utility allows you to set up a network kit. Before using this
utility, read the Overview of the Network Kit Setup Procedure
chapter in the Network Management Guide. Then, use the Setting Up
the Network Kit chapter, also located in the Network Management
Guide, to help you answer the prompts displayed by this utility.
        NETWORK KIT MENU
        Install Software Subsets => I
        Add Client Processor     => A
        Remove Client Processor  => R
        Type your choice [no default]: A
You have chosen to add a client for remote installation services.
This utility enables network downloading for a particular client
from this host. This script sets up the node specific parameter
packet in /usr/lib/dnet/clients and registers the client in the
MOP database. It will also register the clients capability of 
remotely loading subsets by creating a file in the /usr/adm/ris/clients
directory. This installation permission is created by copying a 
already existing model file into the clients permission file.
To successfully run this utility the following conditions must be met:
        1. The client must be in the /etc/hosts file
        2. You must know the clients hostname 
        3. You must know the clients hardware ethernet address 
        4. You must know which permission model file to use for this client 
Do you want to continue? Type yes or no. [no]: yes
Type the client processor's hostname [no default]: gobo
Type the client processor's hardware ethernet address, for
example, 00-Ae-F2-00-38-05 [no default]: 08-00-2B-1F-36-19
        You must now specify which model permission file to assign the client
        processor you specified in a previous prompt. Your options are as
        follows:
model.ULT020
model.ULT020.mand
Type your choice [no default]: model.ULT020
Do you want to add another client processor to the
/usr/adm/ris/clients directory? Type yes or no [yes]: no
#

RIS Installation of Host gobo

First Boot from RIS Server kermit

KA630-A.V1.3
Performing normal system tests.
  5..4..3..
Tests completed.
Loading system software.
  2..1..0..
Ultrixload (using VMB version 13)
Requesting operating system ...
    Loading from host at address 8:0:2b:f0:cd:4b
***************************************************
Requesting network parameter file ...
System page table too small, reducing physmem to 3 meg
Ultrix V2.0-1 System #4: Tue Jun 2 17:51:37 EDT 1987
real mem  = 3145728
avail mem = 1250304
using 32 buffers containing 262144 bytes of memory
MicroVAX-II with an FPU
Q22 bus
uda0 at uba0
uq0 at uda0 csr 172150 vec 774, ipl 17
ra0 at uq0 slave 0
ra1 at uq0 slave 1
ra2 at uq0 slave 2
klesiu0 at uba0
tmscp0 at klesiu0 csr 174500 vec 770, ipl 17
tms0 at tmscp0 slave 0
qe0 at uba0 csr 174440 vec 764, ipl 17
WARNING: clock gained 29 days -- CHECK AND RESET THE DATE!
 *** CHOOSE INSTALLATION OPTION *** 
You must now choose one of the following options: 
        1 Installation
        2 System management 
Type your choice [1]: 1
Because your software distribution kit is the network,
you do not have to prepare and select the software 
distribution device.
 *** SELECT THE SYSTEM DISK DRIVE *** 
The installation booklet for your processor explains the following table 
of system disk drives, one of which will contain the root file system: 
        SELECTION       DIGITAL         DEVICE          CONTROLLER
        NUMBER          NAME            NUMBER          NUMBER
           1            RA82               0               0
Enter your selection number [no default]: 1
The system disk you selected is RA82, and its device number is 0. 
Make sure this disk drive is on line and write-enabled (if applicable to
your disk drive).
Press the RETURN key when you are ready to continue. [RETURN]
The installation software now allocates the root file system on
partition 'a' of the system disk, ra0 RA82. 
Making the root file system on ra0 RA82.
Warning: 373 sector(s) in last cylinder unallocated
/dev/rra0a:     15872 sectors in 19 cylinders of 15 tracks, 57 sectors
        8.1Mb in 2 cyl groups (16 c/g, 7.00Mb/g, 1856 i/g)
super-block backups (for fsck -b#) at:
 32, 13776,
The installation software is restoring the root file system 
to partition 'a' of the system disk, ra0 RA82. 
234+0 records in
The installation software checks the root file system on 
partition 'a' of the system disk, ra0  RA82.
** /dev/rra0a
** Last Mounted on /mnt
** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Check Cyl groups
158 files, 2210 used, 5213 free (5 frags, 651 blocks)
*** TYPE THE BOOTSTRAP COMMAND ***
Type the following boot sequence at the console mode prompt
after the installation software halts the processor: 
>>> b dua0
syncing disks... done
?06 HLT INST
    PC = 80036ED9
>>> [STRG + e]
sim> exit

Boot Host gobo from Local Disk

KA630-A.V1.3
Performing normal system tests.
  5..4..3..
Tests completed.
Loading system software.
  2..1..0..
Ultrixboot (using VMB version 13)
Loading (a)vmunix ...
Sizes:
text = 498700
data = 182696
bss  = 190068
Starting at 0x3485
Ultrix V2.0-1 System #4: Tue Jun 2 17:48:32 EDT 1987
real mem  = 16769024
avail mem = 15267840
using 20 buffers containing 163840 bytes of memory
MicroVAX-II with an FPU
Q22 bus
klesiu0 at uba0
tmscp1 at klesiu0 csr 174500 vec 774, ipl 17
tms0 at tmscp1 slave 0
uda0 at uba0
uq0 at uda0 csr 172150 vec 770, ipl 17
ra0 at uq0 slave 0
ra1 at uq0 slave 1
ra2 at uq0 slave 2
qe0 at uba0 csr 174440 vec 764, ipl 17
The system name assigned to your processor by your system
manager is gobo.
*** SPECIFY THE DATE AND TIME *** 
Enter the current date and time in this format:
yymmddhhmm. Use two digits for year (yy), 
month (mm), day (dd), hour (hh), and minute (mm).
You type the time in 24-hour format. For example,
for 11:30 p.m. on May 14, 1987, the response
would be: 
        8705142330 
Type the date and time [no default]: 8705142330
*** SPECIFY THE TIME ZONE INFORMATION ***
Enter the time zone for your area, using the options
listed in this table:
   Time Zone           Options
---------------------------------
    Eastern             e
    Central             c
    Mountain            m
    Pacific             p
    Greenwich           g
---------------------------------
You can also enter the number of hours (-12 to 12) in time
west of Greenwich. 
Type the time zone [no default]: c
Does your area alternate between Daylight Savings
and Standard time? Type y or n [y]: y
Enter the geographic area for Daylight Savings Time,
using the options listed in this table:
   Geographic Area    Options
--------------------------------
    USA                 u
    Australia           a
    Eastern Europe      e
    Central Europe      c
    Western Europe      w
--------------------------------
Type the geographic area [u]: w
*** SPECIFY THE SUPERUSER PASSWORD *** 
The installation booklet for your processor instructs
you on how to enter the superuser password. 
New password: ult020 (not echoed)
Retype new password: ult020 (not echoed)
*** SPECIFY THE FIELD SERVICE PASSWORD *** 
The installation booklet for your processor instructs
you on how to enter the field service password. 
New password: ult020 (not echoed)
Retype new password: ult020 (not echoed)
The advanced installation is not available to you
because you are using the network as your software
distribution device. The installation software will
now complete the installation for you.
Making the new file system for /usr on /dev/rra0d RA82 
Warning: 494 sector(s) in last cylinder unallocated
/dev/rra0d:     220096 sectors in 258 cylinders of 15 tracks, 57 sectors
        112.7Mb in 17 cyl groups (16 c/g, 7.00Mb/g, 2048 i/g)
super-block backups (for fsck -b#) at:
 32, 13776, 27520, 41264, 55008, 68752, 82496, 96240, 109984, 123728,
 137472, 151216, 164960, 178704, 192448, 206192, 218912,
Making the new file system for /usr/users 
on /dev/rra0h RA82 
Warning: 4 sector(s) in last cylinder unallocated
/dev/rra0h:     256496 sectors in 300 cylinders of 15 tracks, 57 sectors
        131.3Mb in 19 cyl groups (16 c/g, 7.00Mb/g, 2048 i/g)
super-block backups (for fsck -b#) at:
 32, 13776, 27520, 41264, 55008, 68752, 82496, 96240, 109984, 123728,
 137472, 151216, 164960, 178704, 192448, 206192, 218912, 232656, 246400,
Installing supported software subsets.
Copying ULTBASE020 from network
Verifying ULTBASE020
Copying ULTACCT020 from network
Verifying ULTACCT020
Copying ULTBIN020 from network
Verifying ULTBIN020
Copying ULTBSC020 from network
Verifying ULTBSC020
Copying ULTINET020 from network
Verifying ULTINET020
Copying ULTMOP020 from network
Verifying ULTMOP020
Copying ULTNFS020 from network
Verifying ULTNFS020
Copying ULTUMAIL020 from network
Verifying ULTUMAIL020
Copying ULTCOMM020 from network
Verifying ULTCOMM020
Copying ULTDCMT020 from network
Verifying ULTDCMT020
Copying ULTEXER020 from network
Verifying ULTEXER020
Copying ULTF77020 from network
Verifying ULTF77020
Copying ULTPASCAL020 from network
Verifying ULTPASCAL020
Copying ULTPGMR020 from network
Verifying ULTPGMR020
Copying ULTSCCS020 from network
Verifying ULTSCCS020
Copying ULTUUCP020 from network
Verifying ULTUUCP020
Copying ULTMAN020 from network
Verifying ULTMAN020
The installation software has successfully installed 
the supported software subsets.
 * * * System Configuration Procedure * * *
The installation software found these devices in the floating 
address space:
        dz0             on uba0         at 0160100
Configuration file complete.
* * * Performing the System Configuration * * *
if [ ! -f assym.s ] ; then /usr/bin/touch assym.s; else exit 0; fi
/bin/cc -I. -Em -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/lta_data.c ../data/gfs_data.c ../net/conf_net.c  ../netbsc/bsc_proto.c ../netinet/in_proto.c ../vax/conf.c  ../vax/cpuconf.c ../data/dz_data.c ../data/tmscp_data.c  ../data/uda_data.c ../data/if_qe_data.c ../data/tty_pty_data.c  ../data/af_data.c ../data/tty_conf_data.c  ../data/uipc_domain_data.c ../data/autoconf_data.c  ../data/if_to_proto_data.c ../data/kern_sysproc_data.c   >xtmp
/bin/cc -I. -Em -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0  >>xtmp
if [ "" != "" ] ; then  for i in  "" ; do  if [ "$i" != "" ] ; then /lib/cpp -Em -I. $i >>xtmp; else exit 0; fi  done ; else exit 0 ; fi
/bin/sed -e ':loop'  -e 's/\.\.\/[^ /]*\/\.\./../'  -e 't loop' < xtmp |  /bin/awk ' { if ($1 != prev) { print rec; rec = $0; prev = $1; }  else { if (length(rec $2) > 78) { print rec; rec = $0; }  else rec = rec " " $2 } }  END { print rec } ' > makedep
/bin/echo '/^# DO NOT DELETE THIS LINE/+1,$d' >eddep
/bin/echo '$r makedep' >>eddep
/bin/echo 'w' >>eddep
/bin/cp makefile makefile.bak
/usr/ucb/ex - makefile < eddep
/bin/rm -f xtmp eddep makedep
cc -E -I. -DLOCORE -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 scb.c > scb.i
as -o scb.o ${AHEADS} scb.i
cat assym.s ../vax/spt.s > spt.c
cc -E -I. -DLOCORE -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 spt.c > spt.i
as -o spt.o ${AHEADS} spt.i
ld -r scb.o locore_bin.o spt.o
/bin/cat assym.s  ubglue.s > ubglue.c
/bin/cc -E -I. -DLOCORE -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ubglue.c > ubglue.i
as -o ubglue.o ${AHEADS} ubglue.i
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/lta_data.c
/lib/c2 lta_data.s | ../vax/inline/inline | as -o lta_data.o
rm -f lta_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/gfs_data.c
/lib/c2 gfs_data.s | ../vax/inline/inline | as -o gfs_data.o
rm -f gfs_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../net/conf_net.c
/lib/c2 conf_net.s | ../vax/inline/inline | as -o conf_net.o
rm -f conf_net.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../netbsc/bsc_proto.c
/lib/c2 bsc_proto.s | ../vax/inline/inline | as -o bsc_proto.o
rm -f bsc_proto.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../netinet/in_proto.c
/lib/c2 in_proto.s | ../vax/inline/inline | as -o in_proto.o
rm -f in_proto.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../vax/conf.c
/lib/c2 conf.s | ../vax/inline/inline | as -o conf.o
rm -f conf.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../vax/cpuconf.c
/lib/c2 cpuconf.s | ../vax/inline/inline | as -o cpuconf.o
rm -f cpuconf.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/dz_data.c
/lib/c2 -i dz_data.s | ../vax/inline/inline | as -o dz_data.o
rm -f dz_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/tmscp_data.c
/lib/c2 -i tmscp_data.s | ../vax/inline/inline | as -o tmscp_data.o
rm -f tmscp_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/uda_data.c
/lib/c2 -i uda_data.s | ../vax/inline/inline | as -o uda_data.o
rm -f uda_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/if_qe_data.c
/lib/c2 -i if_qe_data.s | ../vax/inline/inline | as -o if_qe_data.o
rm -f if_qe_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/tty_pty_data.c
/lib/c2 tty_pty_data.s | ../vax/inline/inline | as -o tty_pty_data.o
rm -f tty_pty_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/af_data.c
/lib/c2 af_data.s | ../vax/inline/inline | as -o af_data.o
rm -f af_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/tty_conf_data.c
/lib/c2 tty_conf_data.s | ../vax/inline/inline | as -o tty_conf_data.o
rm -f tty_conf_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/uipc_domain_data.c
/lib/c2 uipc_domain_data.s | ../vax/inline/inline | as -o uipc_domain_data.o
rm -f uipc_domain_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/autoconf_data.c
/lib/c2 autoconf_data.s | ../vax/inline/inline | as -o autoconf_data.o
rm -f autoconf_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/if_to_proto_data.c
/lib/c2 if_to_proto_data.s | ../vax/inline/inline | as -o if_to_proto_data.o
rm -f if_to_proto_data.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ../data/kern_sysproc_data.c
/lib/c2 kern_sysproc_data.s | ../vax/inline/inline | as -o kern_sysproc_data.o
rm -f kern_sysproc_data.s
/bin/cp ../conf/param.c .
/bin/chmod u+w param.c
/bin/cc -I. -c -O -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 -DTIMEZONE=360 -DDST=3 -DMAXUSERS=8 -DMAXUPRC=50 -DPHYSMEM=16 -DNCPU=1 -DDMMIN=32 -DDMMAX=1024  param.c
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 ioconf.c
/lib/c2 ioconf.s | ../vax/inline/inline | as -o ioconf.o
/bin/rm -f ioconf.s
/bin/cc -I. -c -S -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 -DSWAPTYPE=0 ../vax/swap.c
/lib/c2 swap.s | ../vax/inline/inline | as -o swap.o
rm -f swap.s
/bin/cc -I. -c -O -DGOBO -DMVAX -DEMULFLT -DBSC -DDLI -DLAT -DRPC -DNFS -DINET -DQUOTA -DKERNEL -DUPGRADE=0 swapvmunix.c
loading vmunix
rearranging symbols
text    data    bss     dec     hex
385856  139180  125700  650736  9edf0
* * * Make the Special Files for the System * * *
MAKEDEV   bootII tms0  ra0  ra1  ra2  dzv0  
MAKEDEV: special file(s) for bootII: 
ra1a rra1a ra1b rra1b ra1c rra1c ra1d rra1d ra1e rra1e ra1f rra1f ra1g rra1g ra1h rra1h ra2a rra2a ra3a rra3a bootdev drum mem trace 
MAKEDEV: special file(s) for tms0: 
rmt0l nrmt0l rmt0h nrmt0h 
MAKEDEV: special file(s) for ra0: 
MAKEDEV: special file(s) for ra1: 
MAKEDEV: special file(s) for ra2: 
ra2b rra2b ra2c rra2c ra2d rra2d ra2e rra2e ra2f rra2f ra2g rra2g ra2h rra2h 
MAKEDEV: special file(s) for dzv0: 
tty00 tty01 tty02 tty03 
* * * Configured kernel is in /newvmunix * * * 
Moving /newvmunix to /vmunix 
syncing disks... done

Automatic Reboot with New Kernel

Loading system software.
  2..1..0..
Ultrixboot (using VMB version 13)
Loading (a)vmunix ...
Sizes:
text = 385856
data = 139180
bss  = 125700
Starting at 0x1c85
Ultrix V2.0-1 System #1: Thu May 14 23:33:33 EDT 1987
real mem  = 16769024
avail mem = 14368768
using 152 buffers containing 1245184 bytes of memory
MicroVAX-II with an FPU
Q22 bus
klesiu0 at uba0
tmscp1 at klesiu0 csr 174500 vec 774, ipl 17
tms0 at tmscp1 slave 0
uda0 at uba0
uq0 at uda0 csr 172150 vec 770, ipl 17
ra0 at uq0 slave 0
ra1 at uq0 slave 1
ra2 at uq0 slave 2
qe0 at uba0 csr 174440 vec 764, ipl 17
dz0 at uba0 csr 160100 vec 300, ipl 17
WARNING: clock gained 50 days -- CHECK AND RESET THE DATE!
Automatic reboot in progress...
Sat Jul  4 11:39:36 CDT 1987
/dev/ra0a: 381 files, 5715 used, 1708 free (84 frags, 203 blocks)
/dev/rra0d: 2745 files, 21442 used, 83965 free (317 frags, 10456 blocks)
/dev/rra0h: 2 files, 9 used, 123054 free (14 frags, 15380 blocks)
Sat Jul  4 11:39:38 CDT 1987
System supports 2 users.
check quotas: done.
savecore: checking for dump...dump does not exist
local daemons: syslog sendmail.
Removing remnant Opser files
preserving editor files
clearing /tmp
standard daemons: update cron accounting network rwhod printer.
start errlog daemon - elcsd
Sat Jul  4 11:39:49 CDT 1987
Ultrix V2.0-1 (gobo)
login: root
Password: ult020 (not echoed)
Ultrix V2.0-1 System #1: Thu May 14 23:33:33 EDT 1987
                Digital Equipment Corporation
                Merrimack, New Hampshire.
#

Add New User guest on Host gobo

# adduser
Enter login name for new user (initials, first or last name): guest
Enter full name for new user: guest
What login group should this user go into [ users ] ? [RETURN] 
Working ...
Enter another group that 'guest' should be a member of
(<RETURN> only if none): [RETURN]
Enter parent directory for guest [/usr/users]: [RETURN]
Adding new user ...
The new user account initially has no password.
#

Telnet to Host kermit and Back to Test Network

# telnet kermit
Trying...
Connected to kermit.
Escape character is '^]'.
kermit login: guest
Last login: Sat Jul  4 19:26:19 from gobo
Ultrix V2.0-1 System #2: Wed Jul 1 04:01:53 CDT 1987
                Digital Equipment Corporation
                Merrimack, New Hampshire.
Sat Jul  4 19:30:45 CDT 1987
kermit> telnet gobo
Trying...
Connected to gobo.
Escape character is '^]'.
gobo login: guest
Ultrix V2.0-1 System #1: Thu May 14 23:33:33 EDT 1987
                Digital Equipment Corporation
                Merrimack, New Hampshire.
Sat Jul  4 11:53:05 CDT 1987
gobo>

Show active users on host gobo:

gobo> who
root     console Jul  4 11:42
guest    ttyp0   Jul  4 11:53   (kermit)
gobo>

Close both telnet sessions and shutdown node gobo:

gobo> logout
Connection closed by foreign host.
kermit> logout
Connection closed by foreign host.
# shutdown -h now
Shutdown at 11:53 (in 0 minutes) [pid 178]
System shutdown time has arrived
# syncing disks... done
?06 HLT INST
    PC = 80048529
>>> 
sim> exit