From:	MERC::"uunet!CRVAX.SRI.COM!RELAY-INFO-VAX" 17-MAR-1993 18:29:45.78
To:	info-vax@crvax.sri.COM
CC:	
Subj:	Re: mounting online docs on infoserver

Tom Williams (williamst@atcf.ncsc.navy.mil) writes :

>I recently got an infoserver in, and I'd like to mount the online docs on
>this  automatically.  I can't seem to find it in my documentation.  I
>created a  service called ONLINE_DOCS on the infoserver, and executed
>"@sys$startup:ess$startup disk tape".  Do I need to do this on all nodes
>in the  cluster, then mount the disk(s)?  Where is this documented? 


(1) ess$startup : yes, any node that wants to mount the Infoserver's disk
services must run the startup as part of the VMS boot processing.

(2) mounts : mounting the disk is a two step process involving -

	a. a bind to the service using ess$ladcp - this creates a 
		DADnn device attached to the service.

	b. a mount (like any other disk mount) of the DADnn device.

(3) documentation : LADCP utility manual , a portion of the "grey wall"
titled System Management - volume 1B.

The major challenge in routine use of a CDROM disk in this manner is coping
with the bi-monthly updates which change the volume-id of the CDROM. Of
course, if shared access to the disk is desired on your VMS system, one
must know the volume-id to mount it for shared access. We keep the entire 
DEC Consolidated Software Distribution, VMS Doc Set, and NAS disk on-line
(that's 13 disks) for shared use by our many system managers. To this end,
I developed a DCL procedure for mounting or re-mounting all the disks as
required. A copy is attached for your use.

Something else to remember is the effect of a CDROM change while it is
mounted on a VMS system. If someone is accessing when it is changed, the
device will enter "mount verify" or "wrong volume" status due to the new
volume id. It will remain in this state until the amount of time specified
in the SYSGEN param MVTIMEOUT expires (default: 3600 sec). Fortunately,
this is a dynamic param and can be shortened if necessary via SYSGEN. Once
it it expires, the DADnn: device will enter "mount verify timeout" state
where  it can be dismounted as follows :

	DISMOUNT/ABORT DADnn:

and remounted using the procedure attached.

In an extreme case, the LASTDRIVER can be stopped and re-loaded :

	$ mcr ess$lastcp
	LASTCP> STOP
	$ @sys$startup:ess$startup disk tape

Systems running Pathworks for DOS (not Mac) should be aware that stopping
the LAST driver will terminate to connection of all Pathworks connected
PC's.

If you have more than 10 Infoserver devices to mount, you will hit the
limit of the ESSdriver distributed with VMS. To remedy this 10 DADnn device
limit, you can install the more functional ESS021 driver kit distributed
with the Infoserver software and the CONDIST.

Our experience with the Infoserver 150 has been good. I hope this
information helps !

Cameron

+-------------------------------------------------------------------------+
| Cameron Caffee, Sr Systems Manager                 Polaroid  Corporation|
+---------------------------------------------------------+---------------+
| Internet : caffeec@mr.polaroid.com                      | Snail Mail :  |
| MCI Mail : EMS:Internet                                 +---------------+
|            MBX:caffeec@mr.polaroid.com                  | 300 Fifth Ave |
| FAX      : (617) 684-3057                               | Waltham, MA   |
| Voice    : (617) 684-6278                               |        02254  |
+---------------------------------------------------------+---------------* 

Mount procedure :

$!
$!	A procedure for mounting LAD Services for use at boot
$!
$!	P1 (optional) - service name to bind/mount
$!      P2 (optional) - bind options			(default = /nowrite)
$!
$!	Services are bound and mounted for shared use with a logical
$!         device name equal to the service name.
$!
$ wait 00:02
$ u_prv = f$setprv("all,nobypass")
$ msg := write sys$output
$ ladcp := $sys$system:ess$ladcp.exe
$ lad_options := /nowrite
$ if p1 .nes. "" then goto sel_service
$ lad_service := vmsdoc01 		!VMS Doc Set CD's
$ gosub getserv
$ lad_service := vmsdoc02
$ gosub getserv
$ lad_service := vmsdoc03
$ gosub getserv
$ lad_service := condist01		!DEC CONDIST CD's
$ gosub getserv
$ lad_service := condist02
$ gosub getserv
$ lad_service := condist03
$ gosub getserv
$ lad_service := condist04
$ gosub getserv
$ lad_service := condist05
$ gosub getserv
$ lad_service := condist06
$ gosub getserv
$ lad_service := condist07
$ gosub getserv
$ lad_service := condist08
$ gosub getserv
$ lad_service := condist09
$ gosub getserv
$ lad_service := vmsnas01
$ gosub getserv
$ goto theend
$sel_service:
$ msg "Bind and mount selected service ", p1
$ lad_service = f$edit(p1,"collapse")
$ if lad_service .eqs. ""
$ then
$	msg "Selected Service Name (P1) Invalid - ", p1
$       goto theend
$ endif
$ if p2 .nes. ""
$ then
$	lad_options = f$edit(p2,"collapse")
$ endif
$ gosub getserv
$theend:
$ exit
$!
$!	Get the desired LAD service
$!
$getserv:
$ msg "Bind LAD Service ", lad_service, " with options ", lad_options
$ if f$getdvi("DAD$''lad_service'","EXISTS")
$ then
$ 	if f$getdvi("DAD$''lad_service'","MNT")
$ 	then
$		msg "Dismounting current LAD service device DAD$", lad_service
$		dismount/over=checks dad$'lad_service'
$ 	endif
$ endif
$ set noon
$ ladcp bind/system 'lad_service' 'lad_options'
$ ladcp_stat = $status
$ set on
$ if ladcp_stat then gosub getmount
$ if .not. ladcp_stat then -
  	msg "BIND error during LADCP processing ..."
$ return
$!
$!	Mount the LAD device for shared use
$!
$getmount:
$ msg "Temp mount LAD device DAD$", lad_service
$ set noon
$ mount/noassist/over=id DAD$'lad_service'
$ mount_stat = $status
$ set on
$ if mount_stat then goto mount_shared
$ msg "No disk detected at LAD Service ", lad_service
$ goto getm_xt
$mount_shared:
$ lad_vol = f$getdvi("DAD$''lad_service'","volnam")
$ msg "Found    LAD Volume ", lad_vol, " in device DAD$", lad_service
$ dismount/nounload DAD$'lad_service'
$ msg "Mounting LAD Volume ", lad_vol, " on device DAD$", lad_service
$ mount/system/nowrite/noassist DAD$'lad_service' 'lad_vol' 'lad_service'
$getm_xt:
$ return
$!
$!	Revision History
$!
$! 07/28/92 CCC Original version for node
$! 07/29/92 CCC Added selected service option
$! 09/16/92 CCC Revised bind/mount to test for device already mounted
$! 10/06/92 CCC Added /NOWRITE to mount command



