OpenVMS Undocumented Features
This is the most complete collection of undocumented features we can find for OpenVMS. Some of these have been around since the time when it was called VMS while others are more current and have been added to OpenVMS V8.n. These features:
- Are NOT documented (if they were, they wouldn't belong here)
- Are NOT supported by PARSEC Group or HP
- Are NOT guaranteed to work
- May NOT exist in all versions of OpenVMS; past, present and future
- Are subject to change, removal, enhancement or being documented at the whim of OpenVMS engineering
- May be fun to know the next time you play OpenVMS trivial pursuit
- May help you get your job done easier and faster
- May help you impress your boss with your knowledge of the obscure
EFI$CP Utility
According to the hp OpenVMS v8.3 Release Notes, the EFI$CP utility is documented to be undocumented. It was first available with OpenVMS I64 v8.2-1.
"The OpenVMS EFI$CP utility is presently considered undocumented and unsupported. HP recommends against using this utility. Certain privileged operations within this utility could render OpenVMS I64 unbootable."
This utility can be used to manage the File Allocation Table (FAT) structures associated with the booting of an OpenVMS Integrity Server. It works with FAT12 and FAT16, but does not work with FAT32. Help is available in the utility.
$ mcr efi$cp
OpenVMS EFI$CP version V5.2-6
EFI$CP> help
HELP
This is the help library for the EFI$CP utility.
EFI$CP is not supported for customer use.
This EFI$CP utility should only be used under the explicit
direction of HP Customer Services.
This utility can potentially render core OpenVMS I64 FAT volume
structures erased, invalid and/or otherwise corrupted, and can
potentially prevent OpenVMS I64 from bootstrapping.
EFI$CP is a utility that permits you to access the File
Allocation Table (FAT) volume structures associated with the
Extensible Firmware Initiative (EFI) console environment used
on HP Integrity systems. EFI$CP permits operations with FAT12
and FAT16 partition structures and FAT devices that are used for
bootstrapping OpenVMS I64 systems. (FAT32 is not supported.)
The HELP command available within the EFI$CP utility is used to
acquire an introduction to EFI$CP, to display information about
the available EFI$CP commands, and to obtain examples.
Format
HELP [topic]
Additional information available:
@ COPY CREATE DEBUG DELETE DIRECTORY DISMOUNT
EFI$CP ELSE ENDIF Error_Messages Examples
FAT_Filenames Further_Reading HELP IF
INITIALIZE MOUNT Release_Notes RENAME SET SHOW
SPAWN Version WRITE
Topic?
EFI$CP> exit
SET WATCH Command
A user with CMEXEC privilege may use the SET WATCH FILE command to monitor selected file activity. This command supports and requires one qualifier; that is /CLASS. This qualifier requires a keyword value identifying which class of activity to enable or disable. Placing NO in front of the keyword disable the specified activity monitoring.
ALL | Enable all file activity monitoring. |
ATTACHED | Undetermined |
ATTRIBUTE | Reading and writing of file attributes; such as done with the directory command. |
CONTROL_FUNCTION | Use of file system control functions. |
DIRECTORY_OPERATIONS | Modifications to directories by creating, deleting and renaming files. |
DUMP | Dump contents of File Information Blocks (FIB). |
MAJOR_FUNCTION | Log activities for major functions including file lookup, access and deaccess. |
NONE | Turn off all file activity monitoring. |
QUOTA_OPERATIONS | Activity associated with changes to disk quotas and usage. |
The SET WATCH command has it's history based in the days of TOPS-10. PARSEC used this command to successfully find an issue one of our customers had with TCP/IP.
$ set watch file/class=(all,nodump)
%XQP, Thread #0, Deaccess (930,5,0) Reads: 6, Writes: 0, Status: 00000001
$ directory /size=all /date /width=file=40 login.com;
%XQP, Thread #0, Volume protection: Access requested: 00000001, Status: 00000001, PrvUsd: 00000000
%XQP, Thread #0, File protection (19429,3,0): Access requested: 00000004, Status: 00000001, PrvUsd: 00000000
%XQP, Thread #0, Read only directory access (19429,3,0)
%XQP, Thread #0, Directory scan for: LOGIN.COM;0, Status: 00000001
%XQP, Thread #0, Lookup (28639,3,0) Status: 00000001
%XQP, Thread #0, Volume protection: Access requested: 00000001, Status: 00000001, PrvUsd: 00000000
%XQP, Thread #0, File protection (28639,3,0): Access requested: 00000001, Status: 00000001, PrvUsd: 00000000
%XQP, Thread #0, Read attributes: Record attributes LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Creation date LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Revision date LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Expiration date LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Backup date LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Statistics block LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Owner UIC LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: File protection LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: User file characteristics LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: ASCII dates LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Journal flags LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Find ACE by type LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Find ACE by type LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Find ACE by type LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: ACL length LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Find ACE by type LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: RU active LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Find ACE by type LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: Classification mask LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Read attributes: F64 caching options LOGIN.COM;55 (28639,3,0)
%XQP, Thread #0, Lookup LOGIN.COM;55 (28639,3,0) Status: 00000001
Directory $22$DKA300:[WILLIAMS]
LOGIN.COM;55 4/35 23-JAN-2007 16:40:36.66
Total of 1 file, 4/35 blocks.
Please enjoy these features at your own risk. If you are aware of other features in OpenVMS which are currently undocumented, you may use our inquiry form to inform us. We may then add it to our list.