mirror of
https://github.com/fdiskyou/Zines.git
synced 2025-03-09 00:00:00 +01:00
588 lines
25 KiB
Text
588 lines
25 KiB
Text
![]() |
<:=--=:><:=--=:><:=--=:><:=--=:>\|/<:=--=:><:=--=:><:=--=:><:=--=:>
|
||
|
<:=--=:> <:=--=:>
|
||
|
<:=--=:> >>>>>=-* Users Guide to VAX/VMS *-=<<<<< <:=--=:>
|
||
|
<:=--=:> <:=--=:>
|
||
|
<:=--=:> Part II of III <:=--=:>
|
||
|
<:=--=:> <:=--=:>
|
||
|
<:=--=:> Part C: Using the Utilities <:=--=:>
|
||
|
<:=--=:> Part D: Advanced Guide to VAX/VMS <:=--=:>
|
||
|
<:=--=:> <:=--=:>
|
||
|
<:=--=:> By Black Kat <:=--=:>
|
||
|
<:=--=:> <:=--=:>
|
||
|
<:=--=:><:=--=:><:=--=:><:=--=:>/|\<:=--=:><:=--=:><:=--=:><:=--=:>
|
||
|
|
||
|
Index
|
||
|
~~~~~
|
||
|
Part C contains information on the following topics:
|
||
|
|
||
|
o Help Utility o Phone Utility
|
||
|
o Backup Utility o Library Utility
|
||
|
o Mail Utility o Sort Utility
|
||
|
|
||
|
Part D contains information on the following topics:
|
||
|
|
||
|
o Subprocesses o DECnet
|
||
|
o Attaching to a Process o Proxy Access
|
||
|
o Interrupting a Process o Task-to-Task Communication
|
||
|
o Batch Processing o Remote Printing
|
||
|
o Controlling Batch Jobs o VAXclusters
|
||
|
|
||
|
<:=- Part C : Using the Utilities -=:>
|
||
|
|
||
|
Help Utility
|
||
|
~~~~~~~~~~~~
|
||
|
The VAX/VMS Help Utility is almost like having a DCL dictionary online. It
|
||
|
includes an explanation of each DCL command and can optionally explain valid
|
||
|
command parameters. Help also provides information about other VAX/VMS
|
||
|
utilities and system services.
|
||
|
|
||
|
There are two modes available for the help utility. If you know the DCL
|
||
|
command, utility or system service you want more information about, use direct
|
||
|
mode. If you don't know the command, use query mode. Query mode can also be
|
||
|
used to see which other commands and other subjects are referenced by the help
|
||
|
utility.
|
||
|
|
||
|
To use query mode, just type HELP <enter> at the DCL command level. Help will
|
||
|
display an alphabetical listing of all DCL commands and other topics for which
|
||
|
information is available and you will be prompted with: "Topic?"
|
||
|
|
||
|
You can exit Help by pressing <enter> or <Ctrl-C> or <Ctrl-Z> or get
|
||
|
information by typing in the command or subject name followed by <enter>. When
|
||
|
you request information on a command, Help will display details including how
|
||
|
the command is invoked, what it does and the default values. Most topics will
|
||
|
have subtopics available which will be listed alphabetically followed by the
|
||
|
prompt: "COMMAND-NAME Subtopic?"
|
||
|
|
||
|
You can select subtopic help or press <enter> to return to the "Topic?" prompt.
|
||
|
If you want to see all the information available on a command, type in "HELP
|
||
|
command_name ..." or "HELP command_name *".
|
||
|
|
||
|
To use direct mode, enter HELP topic_name <enter>. This will bypass the
|
||
|
listing of available topic. Additionally, you can enter a valid DCL command
|
||
|
with or without qualifiers in this mode. For example, to get information on
|
||
|
the DCL SET command /TERMINAL qualifier, you could enter $ HELP SET TERMINAL.
|
||
|
The help utility will provide information on the SET/TERMINAL command and
|
||
|
prompt you for another subtopic since information on other qualifiers is
|
||
|
available.
|
||
|
|
||
|
For more information and details on the help utility, you can use:
|
||
|
$ HELP HINTS or $ HELP HELP/INSTRUCTIONS.
|
||
|
|
||
|
|
||
|
Backup Utility
|
||
|
~~~~~~~~~~~~~~
|
||
|
The backup utility is usually used by system managers to back up system disks,
|
||
|
insuring a recent copy of data should the system disks become unreliable.
|
||
|
Generally, the system disks are backed up to magnetic tape or removable disk
|
||
|
packs, which are then removed and stored in a save location offline. Users may
|
||
|
use the backup utility on files in their own accounts to make copies for safe
|
||
|
keeping, transferring to another system, or for offline storage.
|
||
|
|
||
|
To use the backup utility, you have to decide what you want to back up, and how
|
||
|
you want it done. You have the following options:
|
||
|
|
||
|
Selective : Files are backed up according to a specified criteria.
|
||
|
Qualifiers (e.g. /DATE) and file specifications (e.g. *.TXT)
|
||
|
are used for specifying these criteria.
|
||
|
File by File: Individual files or entire file directories are backed up.
|
||
|
Directories are created when copying, unlike the copy command.
|
||
|
Incremental : Saves file created since the most recent backup. Usually
|
||
|
performed by system operators.
|
||
|
Physical : An exact duplicate of a volume is saved. All file structures
|
||
|
are ignored and the copy is a bit-by-bit duplicate.
|
||
|
Image : A functionally equivalent copy of the original volume is
|
||
|
created. Typically done on bootable volumes and system disks.
|
||
|
|
||
|
|
||
|
To back up files to a subdirectory: $ BACKUP F1.TXT,F2.TXT,*.DAT [BY.JUNK]
|
||
|
|
||
|
To copy a directory tree: $ BACKUP [dir...]file_spec [dir...]file_spec
|
||
|
|
||
|
To copy disk volumes: $ MOUNT/FOREIGN DJA1:
|
||
|
$ BACKUP/IMAGE DUA2: DUA1:
|
||
|
|
||
|
To copy to tape: $ INITIALIXE MUA0: TAPE (the first time its used)
|
||
|
$ MOUNT/FOREIGH MUA0:
|
||
|
MOUNT-I-MOUNTED, TAPE mounted on __MUA0:
|
||
|
$ BACKUP [.DRV]MV_DYDRV.MAR MUA0:[]MV_DYDRV.MAR
|
||
|
|
||
|
A save set is a single file containing multiple files that have been backed up.
|
||
|
To make a save set:
|
||
|
|
||
|
$ MOUNT/FOREIGN MUA0:
|
||
|
MOUNT-I-MOUNTED, TAPE mounted on __MUA0:
|
||
|
$ BACKUP DUB1:[BY.JUNK]*.*;* MUA0:08JUN.BAK/SAVE_SET
|
||
|
|
||
|
A single file can be retrieved from a save set by using the /SELECT qualifier.
|
||
|
For example, to restore the file LOGIN.COM from the previously backed up save
|
||
|
set:
|
||
|
|
||
|
$ MOUNT/FOREIGH MUA0:
|
||
|
MOUNT-I-MOUNTED, TAPE mounted on __MUA0:
|
||
|
$ BACKUP
|
||
|
__From: MUA0:08:JUN.BAK/SAVE_SET/SELECT=[BY.JUNK]LOGIN.COM
|
||
|
__To: *.*
|
||
|
|
||
|
Listing a save set: $ MOUNT/FOREIGN MUA0:
|
||
|
MOUNT-I-MOUNTED, TAPE mounted on __MUA0:
|
||
|
$ BACKUP/LIST MUA0:08JUN.BAK/SAVE_SET
|
||
|
|
||
|
Selective backups: $ BACKUP *.*/SINCE=12-APR-1988 MUA0:08JUN.BAK/SAVE_SET
|
||
|
$ BACKUP
|
||
|
__From: *.*/SINCE=12-APR-1988/EXCLUDE=[*.TMP,*.LOG]
|
||
|
__To: MUA0:08JUN.BAK/SAVE_SET
|
||
|
|
||
|
|
||
|
The following is a list of some other qualifiers you'll find useful.
|
||
|
|
||
|
Qualifier Function
|
||
|
~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
/LOG Writes log message to terminal as each backup file is written.
|
||
|
/VERIFY Verifies the copy or save set with the original after copy.
|
||
|
/CONFIRM Display each filename and ask for confirmation before copy.
|
||
|
/DELETE Deletes source file after destination file written.
|
||
|
|
||
|
|
||
|
Mail Utility
|
||
|
~~~~~~~~~~~~
|
||
|
When you receive new mail, a message will be sent to your terminal unless the
|
||
|
/NOBROATCAST qualifier has been specified with the SET TERMINAL command. Mail
|
||
|
is an interactive utility that understands many commands in a format identical
|
||
|
to DCL commands. The utility is invoked by typing "$ MAIL" at the DCL command
|
||
|
level. Mail has a built in help feature which works the same way as the
|
||
|
VAX/VMS Help Utility. Mail may be sent interactively or directly.
|
||
|
|
||
|
Interactive implies the use of the mail utility in conversational mode by
|
||
|
invoking mail at the DCL command level. After invoking the mail utility, use
|
||
|
the SEND command, and mail will prompt you for the name of the user(s) you want
|
||
|
to send the mail to, your name, the subject, and the message text which you
|
||
|
will terminate with <Ctrl-Z>. When you press <Ctrl-Z> the message is sent and
|
||
|
you are returned to the mail prompt where you can type EXIT to quit.
|
||
|
|
||
|
To send mail in direct mode from the DCL command line, use the following
|
||
|
format: $ MAIL file_spec user /SUBJECT="character string" where "file_spec"
|
||
|
is a valid VAX/VMS file specification containing the body of your mail message
|
||
|
and "user" is the name of a user on your local system or remote node. The
|
||
|
/SUBJECT qualifier is optional.
|
||
|
|
||
|
To send mail to multiple users (like a mailing list) create a file with a list
|
||
|
of the account names of every user you want to receive the message. Then enter
|
||
|
@FILENAME at the "To:" prompt and each user listed in the distribution list
|
||
|
will receive a copy of your mail. A distribution list may also contain another
|
||
|
distribution list by preceeding the second name with an at sign (@). Comments
|
||
|
are included by using an exclamation point (!). The following is a sample
|
||
|
distribution list:
|
||
|
|
||
|
! VAX.DIS
|
||
|
!
|
||
|
! Staff
|
||
|
JONES
|
||
|
OPER
|
||
|
BYNON
|
||
|
!
|
||
|
! Accounting personnel
|
||
|
@ACTLIST
|
||
|
|
||
|
To read your mail, just type MAIL <enter> and you will be told how many
|
||
|
messages you have waiting. Read is the default command, so you can just
|
||
|
press <enter> to start reading them. To reply to a message, use the REPLY or
|
||
|
ANSWER commands and the mail utility will fill out the header information
|
||
|
automatically. You can store your mail in folders for later reference. The
|
||
|
system has three default folders (MAIL, NEWMAIL, and WASTEBASKET).
|
||
|
|
||
|
MAIL is the default mail folder and always exists. It is used to store mail
|
||
|
messages after you've read them unless you file these messages in other folders
|
||
|
you've created.
|
||
|
|
||
|
The NEWMAIL folder stores mail messages before you read them, like a mailbox.
|
||
|
They're automatically moved to the MAIL folder after you've read them unless
|
||
|
you specify a different destination folder with the MOVE command.
|
||
|
|
||
|
The WASTEBASKET folder is a temporary folder used to store messages that have
|
||
|
been deleted. These messages remain in the WASTEBASKET folder until you exit
|
||
|
the mail utility, at which time they're thrown out permanently.
|
||
|
|
||
|
To create new folders, select a message and enter the MOVE command. If you
|
||
|
attempt to move a message to a nonexistent folder, you'll be asked if you want
|
||
|
to create a new folder. For example:
|
||
|
|
||
|
MAIL> 11
|
||
|
MAIL> MOVE MEMOS
|
||
|
Folder MEMOS does not exist. Create it (Y/N, default is N)? Y
|
||
|
MAIL-NEWFOLDER, folder MEMOS created MAIL>
|
||
|
|
||
|
The SELECT command allows you to move from one folder to another. For example,
|
||
|
if you type SELECT JUNK at the "MAIL>" prompt, you will be moved to the JUNK
|
||
|
folder, and mail will respond with the number of messages contained in the new
|
||
|
folder.
|
||
|
|
||
|
The DELETE command accepts a message number as a parameter or deletes the
|
||
|
current message if a message number is not supplied. To delete a folder, just
|
||
|
delete all the messages in that folder with the DELETE qualifier /ALL.
|
||
|
|
||
|
To log a mail message to a file, use the EXTRACT qualifier. If the /NOHEADER
|
||
|
qualifier is used, the header information will not be included. For example:
|
||
|
EXTRACT/NOHEADER MEMO.TXT will save the currently selected message to a file
|
||
|
named MEMO.TXT.
|
||
|
|
||
|
For more information on the mail utility, use mail's HELP command.
|
||
|
|
||
|
|
||
|
Phone Utility
|
||
|
~~~~~~~~~~~~~
|
||
|
The VAX/VMS Phone Utility allows you to talk to other users on your system. It
|
||
|
simulates a real telephone with such features as call holding, conference calls
|
||
|
and telephone directories. The Phone utility only works with VT100, VT200 or
|
||
|
compatible terminals.
|
||
|
|
||
|
To call someone with the phone utility, enter "$ PHONE username" where username
|
||
|
is the person you want to talk to. Your screen will split horizontally in half
|
||
|
and indicate that the phone utility is ringing the other person. Your half of
|
||
|
the conversation will be displayed on the top of the screen and the other
|
||
|
person's will appear on the lower half.
|
||
|
|
||
|
The phone utility may also be used interactively by entering "$ PHONE", and you
|
||
|
will now be given the phone prompt (%). You can enter commands directly now
|
||
|
(e.g. "% DIRECTORY"). The phone utility has an online help facility just like
|
||
|
the mail utility.
|
||
|
|
||
|
|
||
|
Library Utility
|
||
|
~~~~~~~~~~~~~~~
|
||
|
Sometimes its easier to maintain a single file instead of a group of related
|
||
|
files. The VAX/VMS Library Utility lets you create and maintain a specially
|
||
|
formatted file called a library in which you can store groups of single files
|
||
|
called modules. Predefined libraries include text, help, object, sharable
|
||
|
image and macro. Many VAX/VMS utilities such as HELP and LINK are capable of
|
||
|
processing library files. Unless you're a programmer or system manager,
|
||
|
you'll probably only use text and help libraries.
|
||
|
|
||
|
To create a library use the LIBRARY command's /type qualifier and the /CREATE
|
||
|
qualifier. The /type qualifiers are: /TEXT, /SHARE, /HELP, /OBJECT, /MACRO.
|
||
|
For example to create a text library named BOOK.TLB:
|
||
|
|
||
|
$ LIBRARY/TEXT/CREATE BOOK.
|
||
|
|
||
|
You may optionally specify a list of files to be included in a library when it
|
||
|
is created. For example:
|
||
|
|
||
|
$ LIBRARY/TEXT/CREATE BOOK TOC,C1,C2,INDEX
|
||
|
|
||
|
To list the names of modules in a library, use the /LIST qualifier:
|
||
|
|
||
|
$ LIBRARY/TEXT/LIST BOOK
|
||
|
Directory of TEXT library BOOK.TLB;1 on 12-JUN-1989 14:12:07
|
||
|
TOC
|
||
|
C1
|
||
|
C2
|
||
|
INDEX
|
||
|
|
||
|
You can also display a history of updates made to the library by using the
|
||
|
/HISTORY qualifier with the /LIST qualifier.
|
||
|
|
||
|
To add modules to an existing library, use the /INSERT qualifier:
|
||
|
|
||
|
$ LIBRARY/TEXT/INSERT BOOK CH3
|
||
|
|
||
|
To update a module in a library, do the following:
|
||
|
|
||
|
o Extract the module to be updated with the /EXTRACT qualifier.
|
||
|
o Make the necessary changes.
|
||
|
o Write over the old module with the /REPLACE qualifier.
|
||
|
|
||
|
For example: $ LIBRARY/TEXT/EXTRACT BOOK CH2
|
||
|
$ EDIT CHAP2.TXT
|
||
|
.
|
||
|
. (edit the file)
|
||
|
.
|
||
|
$ LIBRARY/TEXT/REPLACE BOOK CH2
|
||
|
|
||
|
|
||
|
Sort Utility
|
||
|
~~~~~~~~~~~~
|
||
|
The VAX/VMS Sort Utility will reorganize records within a file. The simplest
|
||
|
form of the sort command will organize records in ascending alphabetical order.
|
||
|
For example, to sort BOOK.TXT, you could issue the command:
|
||
|
|
||
|
$ SORT BOOK.TXT SORTED.TXT
|
||
|
|
||
|
The Sort utility sorts on the first character of the field in each record in
|
||
|
the input file. If there is more than one field or column in a record, the
|
||
|
entire record is ordered, not just the first field.
|
||
|
|
||
|
Here's an example of sorting in descending order numerically with multiple
|
||
|
fields. The sample data file JUNK.TXT contains two fields of data. The first
|
||
|
field contains a name, and the second field, starting in column 9 contains the
|
||
|
two-digit number we're sorting by:
|
||
|
|
||
|
PAT 47
|
||
|
PAT 47
|
||
|
JIM 09
|
||
|
TOM 23
|
||
|
RICH 43
|
||
|
GARY 02
|
||
|
KURT 13
|
||
|
KEVIN 27
|
||
|
|
||
|
Sort the file: $ SORT/KEY=(POSITION=9,SIZE=2,DESCENDING) JUNK.TXT SORTED.TXT
|
||
|
|
||
|
The sorted file (SORTED.TXT) will now look like this:
|
||
|
|
||
|
PAT 47
|
||
|
RICH 43
|
||
|
KEVIN 27
|
||
|
TOM 23
|
||
|
KURT 13
|
||
|
JIM 09
|
||
|
GARY 02
|
||
|
|
||
|
|
||
|
<:=- Part D : Advanced Guide to VAX/VMS -=:>
|
||
|
|
||
|
Subprocesses
|
||
|
~~~~~~~~~~~~
|
||
|
A major benefit of the VAX/VMS operating system is its support of multi-
|
||
|
processing. This is not restricted to multiple users logged into different
|
||
|
terminals however. VAX/VMS users may create multiple processes known as
|
||
|
subprocesses from within their main processes.
|
||
|
|
||
|
The DCL SPAWN command is used to create a subprocess. The SPAWN command will
|
||
|
create a subprocess with the attributes (default directory, privileges, memory,
|
||
|
etc.) of its parent process unless otherwise specified. For example:
|
||
|
|
||
|
$ SPAWN
|
||
|
% DCL-S-SPAWNED, process BYNON_1 spawned
|
||
|
% DCL-S-ATTACHED, terminal now attached to process BYNON_1
|
||
|
|
||
|
In this case, the parent process is put into hibernation, the subprocess is
|
||
|
given control of the keyboard, and we are left at the DCL prompt. You can now
|
||
|
enter any DCL commands, utilities, or other programs. To return to the parent
|
||
|
process, just $ LOGOUT of the subprocess:
|
||
|
|
||
|
$ LOGOUT
|
||
|
Process BYNON_1 logged out at 12-JUL-1981 13:04:17.10
|
||
|
$ DCL-S-RETURNED, control returned to process BYNON
|
||
|
|
||
|
The SPAWN qualifier /NOLOG can be used to suppress the informational messages
|
||
|
generated when a subprocess is created or logged out. DCL Commands, procedures
|
||
|
and VAX/VMS images (utilities and programs) may be executed directly with SPAWN
|
||
|
by entering the correct syntax for the command or procedure after the SPAWN
|
||
|
command. For example: $ SPAWN/NOLOG MAIL
|
||
|
|
||
|
If you have a task that can execute without user intervention (e.g. a program
|
||
|
compiler), you can spawn a task to run as a background process to your current
|
||
|
process. For example: $ SPAWN/NOWAIT FORTRAN VAXBBS
|
||
|
|
||
|
The SPAWN qualifier /NOWAIT spawns the task to run concurrently (parallel) to
|
||
|
the parent process. Both processes will share the terminal and any messages
|
||
|
>from the background task will be displayed at the terminal. To avoid possible
|
||
|
conflicts, use the /OUTPUT qualifier:
|
||
|
|
||
|
$ SPAWN/NOWAIT/OUTPUT=COMPILE.LOG FORTRAN.VAXBBS
|
||
|
|
||
|
When the job in the subprocess is complete it will terminate and be removed
|
||
|
>from the system.
|
||
|
|
||
|
|
||
|
ATTACHing to a Process
|
||
|
~~~~~~~~~~~~~~~~~~~~~~
|
||
|
You can use the DCL ATTACH command to connect your keyboard to any process or
|
||
|
subprocess you've created. To exit from BYNON_1 back to BYNON with the ATTACH
|
||
|
command, enter "$ ATTACH BYNON" and the subprocess hibernates while you are
|
||
|
returned to the parent process.
|
||
|
|
||
|
|
||
|
Interrupting a Process
|
||
|
~~~~~~~~~~~~~~~~~~~~~~
|
||
|
You can interrupt a process at anytime to create a subprocess by pressing
|
||
|
<Ctrl-Y> and then using the SPAWN command. When you're done working with the
|
||
|
subprocess and have returned to the interrupted process, type CONTINUE to start
|
||
|
processing again where you left off. Some VAX/VMS utilities, such as MAIL,
|
||
|
support SPAWN intrinsically, so you can spawn a process within these utilities
|
||
|
by entering the SPAWN command without pressing <Ctrl-Y> first.
|
||
|
|
||
|
|
||
|
Batch Processing
|
||
|
~~~~~~~~~~~~~~~~
|
||
|
The SUBMIT command was briefly discussed in Part II: Programming the VAX. A
|
||
|
batch job is one or more DCL command procedures that execute from a detached
|
||
|
process with your privileges and quotas. The controller of the process is the
|
||
|
batch queue which accepts jobs via the SUBMIT command. Batch jobs execute
|
||
|
without user interaction, permitting you to use your terminal for interactive
|
||
|
work while the system executes the batch job (command procedure). Batch jobs
|
||
|
are used to execute tasks that take a long time to run, use many system
|
||
|
resources, or need to be scheduled to execute at a specific time.
|
||
|
|
||
|
The SUBMIT command will enter a command procedure to the default batch queue
|
||
|
(SYS$BATCH) if a specific queue is not provided. A command procedure submitted
|
||
|
for batch execution is given a job name which defaults to the command procedure
|
||
|
name unless otherwise specified. The entry number given to the job is used to
|
||
|
control it (delete, rename, etc.)
|
||
|
|
||
|
|
||
|
Controlling Batch Jobs
|
||
|
~~~~~~~~~~~~~~~~~~~~~~
|
||
|
You can specify a name for a batch job with the /NAME qualifier:
|
||
|
|
||
|
$ SUBMIT BACKUP /NAME=DAILY_BACK
|
||
|
|
||
|
You may also execute more than one command procedure by separating the
|
||
|
procedure names with a comma:
|
||
|
|
||
|
$ SUMBIT SORT_DATA,REPORT /NAME=WEEKLY_REPORT
|
||
|
|
||
|
To schedule a batch job to execute after a specific time:
|
||
|
|
||
|
$ SUMBIT CLEANUP /AFTER=11:40
|
||
|
Job CLEANUP (queue SYS$BATCH, entry 39) holding until 1-JUN-1989 11:40
|
||
|
|
||
|
To hold a job in the queue to be released later:
|
||
|
|
||
|
$ SUMBIT REMINDER /HOLD
|
||
|
Job REMINDER (queue SYS$BATCH, entry 12) holding
|
||
|
$
|
||
|
$ SET QUEUE/ENTRY=32/RELEASE SYS$BATCH
|
||
|
|
||
|
To submit a job to a different queue: $ SUBMIT TESTJOB /QUEUE=SLOW
|
||
|
|
||
|
To lower the priority (e.g. if it's CPU intensive):
|
||
|
|
||
|
$ SUBMIT CRUNCH /PRIORITY=2
|
||
|
|
||
|
To pass parameters: $ SUBMIT COMPILE / PARAMETERS=(WINDOWS,MISC,DISP_IO)
|
||
|
|
||
|
To disable the automatic printing of the batch job's log (file instead):
|
||
|
|
||
|
$ SUBMIT GOJOB /NOPRINT /LOG_FILE=DUA2:[BYNON]
|
||
|
|
||
|
This will create a file DUA2:[BYNON]GOJOB.LOG. If the /NOPRINT qualifier is
|
||
|
not specified, the log file will be printed and deleted. To print and keep the
|
||
|
log file, use the /KEEP qualifier with the /LOG_FILE qualifier.
|
||
|
|
||
|
After you submit a procedure to a batch queue, you can monitor its status and
|
||
|
job characteristics by using the SHOW QUEUE command. This will display the
|
||
|
name, entry number and status of all the jobs you have in queue. The /ALL
|
||
|
qualifier will display all jobs you have enough privilege to see, and the /FULL
|
||
|
qualifier provides more information about jobs, such as operating
|
||
|
characteristics and submission time.
|
||
|
|
||
|
You can use the SET QUEUE/ENTRY command to modify a job's priority
|
||
|
(/PRIORITY), name (/NAME), or status (/RELEASE or /AFTER). For example:
|
||
|
|
||
|
$ SET QUEUE /ENTRY=217 /PRIORITY=2 SYS$BATCH
|
||
|
|
||
|
Use the DELETE /ENTRY command to delete jobs: $ DELETE /ENTRY=18 SYS$BATCH
|
||
|
|
||
|
|
||
|
Using DECnet
|
||
|
~~~~~~~~~~~~
|
||
|
DECnet uses the standard VAX/VMS file specifications for remote file access.
|
||
|
In addition to a node specification, you may also include access control
|
||
|
information (username and password) in quotes. For example:
|
||
|
|
||
|
BURG"JONES MYPW"::DUA2:JUNK.TXT
|
||
|
| | | | |
|
||
|
| | | | +---- Filename.Extension
|
||
|
| | | |
|
||
|
| | | +---------- Device name
|
||
|
| | |
|
||
|
| | +------------------ Password
|
||
|
| |
|
||
|
| +----------------------- Username
|
||
|
|
|
||
|
+----------------------------- Node name
|
||
|
|
||
|
Unless a specific DECnet account exists on the host node, or proxy exists, you
|
||
|
must supply access control information to execute a command on a remote system.
|
||
|
(e.g. $ TYPE BURG""JONES MYPW"::DUA2:JUNK.TXT)
|
||
|
|
||
|
|
||
|
Proxy Access
|
||
|
~~~~~~~~~~~~
|
||
|
Because including access control information in a command string is a security
|
||
|
risk, Digital provides proxy access, which works by keeping a database of users
|
||
|
and hosts who may gain access to the system via DECnet. The format of the
|
||
|
database is: SYSTEM::REMOTE_USERNAME LOCAL_USERNAME.
|
||
|
|
||
|
|
||
|
Task-to-Task Communication
|
||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||
|
This is a feature of DECnet which allows programs on one system to communicate
|
||
|
with programs on another (e.g. the DCL TYPE command) To execute a procedure on
|
||
|
a remote system, use the TYPE command with the TASK=xxx parameter. For
|
||
|
example:
|
||
|
|
||
|
$ TYPE VAX1::"TASK=SHOW_USERS"
|
||
|
|
||
|
To show the users on a remote system you would write a command procedure
|
||
|
something like this:
|
||
|
|
||
|
$! Show_Users.Com
|
||
|
$!
|
||
|
$ IF FMODE() .EQS. "NETWORK" THEN GOTO NETWORK
|
||
|
$ SHOW USERS
|
||
|
$ EXIT
|
||
|
$ NETWORK:
|
||
|
$ DEFINE/USER_MODE SYS$OUTPUT SYS$NET
|
||
|
$ SHOW USERS
|
||
|
$ EXIT
|
||
|
|
||
|
Since SYS$OUTPUT is redirected to SYS$NET, the output is redirected to your
|
||
|
terminal over DECnet. Task-to-Task communication can be simple (like
|
||
|
Show_Users) or complicated (like programs passing data back and forth).
|
||
|
|
||
|
|
||
|
Remote Printing
|
||
|
~~~~~~~~~~~~~~~
|
||
|
If your DECnet network contains a LAN such as Ethernet, you'll probably have to
|
||
|
share printers with other nodes on the network. The easiest way to print a
|
||
|
file is to copy it directly to the print device. This works fine as long as
|
||
|
the device is spooled and set up with world write privileges. For example: $
|
||
|
COPY JUNK.TXT BURG::LCA0: will copy the file JUNK.TXT to the device LCA0: on
|
||
|
node BURG.
|
||
|
|
||
|
Another way to print is to use the DCL PRINT/REMOTE command. However, the file
|
||
|
must be located on the remote system to use this, which is inconvenient if the
|
||
|
file you're printing is on the local system. You can still do it though:
|
||
|
|
||
|
$ COPY JUNK.TXT BURG::[BYNON]
|
||
|
$ PRINT /REMOTE BURG::[BYNON]JUNK.TXT
|
||
|
Job JUNK (queue SYS$PRINT, entry 512) started on LCA0
|
||
|
$ DELETE BURG::[BYNON]JUNK.TXT
|
||
|
|
||
|
VAXclusters
|
||
|
~~~~~~~~~~~
|
||
|
The main purpose of a VAXcluster is high processor ability, shared resources,
|
||
|
and a single security and management area. There are two basic type of
|
||
|
VAXclusters, heterogeneous and homogeneous, but a mix of the two is possible.
|
||
|
The main difference between these types is how they share resources,
|
||
|
specifically the VAX/VMS OS environment.
|
||
|
|
||
|
The VAX/VMS OS environment is identical on each cluster in a homogeneous
|
||
|
VAXcluster. This is done by using a common system disk for all the nodes.
|
||
|
User accounts, system files, queues and storage devices are shared, and all of
|
||
|
the computers behave the same way.
|
||
|
|
||
|
In a heterogeneous VAXcluster, the environment on each system is different.
|
||
|
Each VAX has its own system disk, user accounts and system files. Queues and
|
||
|
storage devices may or may not be shared. Users can work in different
|
||
|
operating environments, depending on the system they're using.
|
||
|
|
||
|
Usually a VAXcluster is accessed by an Ethernet-based terminal server. Using
|
||
|
a terminal server, a user can establish a session with any VAXcluster member,
|
||
|
and the connection is identical to that of a directly connected terminal.
|
||
|
However, terminal sessions can support multiple simultaneous sessions to
|
||
|
different nodes. In the unlikely event that a VAXcluster is set up with
|
||
|
directly connected terminals and you need to access a different system, you
|
||
|
can DECnet via the SET HOST facility. All VAXcluster systems support DECnet
|
||
|
within the cluster.
|
||
|
|
||
|
VAXcluster members (nodes) often share processing resources through the use
|
||
|
of print and batch queues known as cluster-wide queues, which are used the
|
||
|
same as a normal queue. The only extra information you need is the queue
|
||
|
name. A list of all the queues in a cluster can be called up with the DCL
|
||
|
SHOW QUEUE command. If you submit a job to a cluster-wide queue, you must
|
||
|
insure that the node on which it resides has access to the file you want to
|
||
|
print or the command procedure you want processed.
|
||
|
|