The ODS-2 Disk and File Utilities is a high performance utility developed to perform routine maintenance and special purpose operations on disks, files and directories. The functionality offered by DFU is not or partly available through other DCL commands or VMS utilities. DFU has the following functions: o DEFRAGMENT : defragment individual files o DELETE : delete files by file-id, and delete directory(trees) fast o DIRECTORY functions : COMPRESS , DUMP or RECOVER directories : search directories for files with multiple versions , alias files , or empty directories o INDEXF : analyze , defragment truncate and extend INDEXF.SYS o REPORT : reports disk fragmentation o SEARCH : search for files o SET : set file attributes o UNDELETE : recover deleted files o VERIFY : analyze (and repair) the disk structure
1 – Restrictions
- DFU cannot handle volume sets with more than 32 disks. - DFU V3.2 runs on Alpha architecture, OpenVMS V7.3-1 or higher. - DFU V3.2 runs on Itanium architecture, OpenVMS 8.2 or higher. - DFU V3.2 handles files names as case-blind. There is no support for case-sensitive filenames.
2 – DEFRAG
The defrag option is used to defragment a single file or files Syntax: DEFRAG file1,file2,...,@file3 (/DEVICE=<device>/BESTTRY)
2.1 – Parameters
file1,file2,...,@file3 Specify a file (or list of files) with a full file specification or a logical name. Also use an indirect command file may be used, eg.: DEFRAG @DEFRAG.COM(/device=<device>). Thus it is possible to generate a list with SEARCH device/OUTPUT=file and use that file as input to the DEFRAG command. The list generated by DFU SEARCH will contain the device name in the file specification. If there is a filelist from another source which does not contain the device name, the
2.1.1 /DEVICE qualifier must be used to append the device name to the file.
2.2 – Qualifiers
2.2.1 /BESTTRY
This qualifier directs DFU to create a file using the contiguous-best-try method. Default DFU tries to make a completely contiguous file. On highly fragmented or used disks this may be impossible.
2.2.2 /DEVICE=device_name
Append the device-name to the filename.
2.2.3 /LBN=<logical-block-number>
Move a single file to the target logical block number. This is faster than having the file system search for a new LBN location. Caution: Use this qualifier only for processing a single file, not a list of files. If there is not enough contiguous free space available at the target LBN Defrag will fail with a DEVICEFULL error.
2.2.4 /STATISTICS
/STATISTICS /NOSTATISTICS (default) Controls whether CPU and I/O consumption of the command are shown.
2.2.5 /WRITECHECK
/WRITECHECK /NOWRITECHECK (default) Performs a write check on the resultant file after the defragment operation.
3 – DELETE
The Delete command serves 2 purposes : o Delete files by File-id o Delete complete directories and directory trees very fast Deleting files by file id's (with the /FILE qualifier) can be usefull in removing files which are no longer in a directory (eg. files marked for delete). Deleting a directory (with the /DIRECTORY qualifier) is many times faster than the normal DCL delete command, especially for large directories. The /TREE qualifier can be used to delete a complete directory tree with just one command. The /FILE and /DIRECTORY command cannot be combined. Syntax : (1) DELETE <device>/FILE=<file-id> (2) DELETE <full-directory-file-name>/DIRECTORY(/Qualifiers)
3.1 – Qualifiers
3.1.1 /DIRECTORY
This qualifier directs DFU to delete the complete contents of the specified directory, followed by a delete of the directory file itself. See also the /TREE qualifier. The parameter must specify a full directory file name. Wildcards may be used. Examples : DFU> DELETE mydisk:[000000]gone.dir/DIRECTORY gone.dir will be deleted with its contents. DFU> DELETE/DIRECTORY mydisk:[maindir.subdir]removethis.dir removethis.dir will be deleted with its contents.
3.1.2 /FILE
/FILE=<file-id> The full 3 number file-id of the file to be deleted. In combination with the required device parameter this results in a unique file. To avoid possible errors a full file id is required. Example : DFU> DELETE mydisk/FILE=(234,567,1)
3.1.3 /KEEP
/NOKEEP (default) Used with DELETE/DIRECTORY(/TREE). This qualifier directs DFU to delete the contents of the directory(tree) but to preserve the directory files.
3.1.4 /NOLOG
/LOG (default) This qualifier is used only with the /DIRECTORY qualifier. Default DFU will report each deleted file. This can be suppressed with /NOLOG.
3.1.5 /NOREMOVE
/REMOVE (default) This qualifier can only be used with /FILE. Default DFU will also try to remove the file from the parent directory. For lost or marked-for-delete files this is not possible, and the DELETE command will probably fail. The /NOREMOVE qualifier will override the default behaviour.
3.1.6 /STATISTICS
/STATISTICS /NOSTATISTICS (default) Controls whether CPU and I/O consumption of the command are shown.
3.1.7 /TREE
This qualifier is only used in combination with /DIRECTORY. Starting with the specified directory all (sub)directory contents and all (sub)directory files will be deleted.
4 – DIRECTORY
The DIRECTORY command provides 7 different functions depending on the qualifiers used. Syntax: DIRECTORY/COMPRESS <file> Compresses one or more directories. DIRECTORY/DUMP <file> Provides a block level dump of a directory DIRECTORY/REBUILD_MFD <device> Recovers a corrupted MFD directory (000000.DIR) DIRECTORY/RECOVER <file> Recovers a corrupted directory DIRECTORY/ALIAS <device> Searches all directories on the device for alias file entries DIRECTORY/EMPTY <device> Searches the disk for empty directories. DIRECTORY/VERSION=n <device> Searches all directories on the device for files which have at least n versions. The qualifiers /ALIAS, /EMPTY, and /VERSION can be combined in one command. Other combinations of qualifiers are not possible.
4.1 – Parameters
file,(@file) The /COMPRESS , /DUMP and /RECOVER qualifier require a directory-file name as a parameter. A logical name or an indirect command file can also be used as a parameter eg.: DIR/COMPRESS @DIR.COM . Thus it is possible to generate a list with SEARCH device/OUTPUT=file and use that file as input to the DIRECTORY command. The list generated by DFU SEARCH will contain the device name in the file specification. If a filelist is used from another source which does not contain the device name, the /DEVICE must be used to append the device name to the file. device The /ALIAS, /EMPTY , /REBUILD_MFD and /VERSION qualifier require a device name as a parameter.
4.2 – Qualifiers
4.2.1 /ALIAS
Scan all directories on a disk for alias files.
4.2.2 /COMPRESS
Recreates and compresses the directory. Because directories are alphabetically sorted files, deleting and entering files randomly will create 'holes' in directory files. /COMPRESS will remove these holes by rebuilding and truncating the directory.
4.2.3 /DEVICE=device-name
Append the device name to the directory-file name. Can only be used with /COMPRESS or /DUMP
4.2.4 /DUMP
Produces a dump of the directory file block by block. This command may be usefull for debugging corrupted or suspected directories.
4.2.5 /EMPTY
Scan the disk for empty directories.
4.2.6 /FILL_FACTOR
/FILL_FACTOR=percentage This qualifier is only valid in combination with /COMPRESS. Default behaviour for DFU is to compress a directory as tight as possible; this is equivalent to /FILL_FACTOR=100. By choosing a lower fill_factor DFU will leave some free space in each directory block. /FILL_FACTOR may be between 50 and 100 %. Caution : choosing a fill_factor lower than 100% may fail if the directory file is not large enough. In that case DFU will signal an error and advise using a higher fill_factor.
4.2.7 /FORMAT
/FORMAT=format_string Used with /VERSION and /OUTPUT. Create an output file using the format as described in formatstring. The format string MUST contains the !AS directive; DFU fills in the resultant file there. Example : DFU> DIR/VERSION=3/OUT=P.COM/FORMAT="$purge !AS"
4.2.8 /OUTPUT
/OUTPUT=filename This qualifier redirects the output from DFU to an output file.
4.2.9 /REBUILD_MFD
/REBUILD_MFD Rebuilds the disk's 000000.DIR directory and makes sure the file backlinks to itself.
4.2.10 /RECOVER
/RECOVER Rebuilds a corrupted directory file. Do not use this command on critical (system)directories!
4.2.11 /STATISTICS
/STATISTICS /NOSTATISTICS (default) Controls whether CPU and I/O consumption of the command are shown.
4.2.12 /TEST
This qualifier can be used only in conjunction with /COMPRESS. When /TEST is specified DFU will show the results of a directory compression without actually performing a compress operation.
4.2.13 /TRUNCATE
/TRUNCATE(=n) This qualifier is only valid in combination with /COMPRESS. After compressing a directory DFU will NOT truncate the empty blocks at the end of the directory , unless /TRUNCATE is specified. A number 'n' may be specified to let DFU truncate no further than 'n' blocks. ('n' will be rounded up to a multiple of the disks cluster size.) Example: a 60 block directory A.DIR can be compressed to 20 blocks. The results are: DIR/COMPRESS --> A.DIR size 20/60 blocks. DIR/COMPRESS/TRUNCATE --> A.DIR size 20/20 blocks. DIR/COMPRESS/TRUNCATE=40 --> A.DIR size 20/40 blocks.
4.2.14 /VERSION
/VERSION=n Scan all directories of a given device for files which have at least 'n' versions.
5 – EXIT
Leave DFU (return to DCL)
6 – HELP
Displays this text
7 – INDEXF
The INDEXF command is used to analyze ,defragment ,truncate or extend the INDEXF.SYS file. The analyze option reports the current fragmentation state, whereas the defragment and extend option allows defragmentation or pre-extending of INDEXF.SYS. Truncate is an option which trims down INDEXF.SYS to the end-of-file size. To perform a defragment truncate or extend operation the disk must be completely dismounted. NOTE: defragment truncate and extend require VOLPRO privilege. : defragment truncate and extend can not be done on the system disk. Syntax : INDEXF <device>/Qualifiers
7.1 – Qualifiers
7.1.1 /ANALYZE
Displays information about the number of fragments in INDEXF.SYS and the largest contiguous free space. If INDEXF.SYS can not be defragmented a "%DFU-W-NOOPT" message will be displayed.
7.1.2 /DEFRAG
Starts a defragment operation on INDEXF.SYS. The disk must be clusterwide dismounted before starting a defragment operation.
7.1.3 /EXTEND
/EXTEND=n (number of blocks) Extends INDEXF.SYS with 'n' blocks in 1 new fragment. This is equivalent to 'n' extra file headers. The disk must be clusterwide dismounted before starting an extend operation. The 'n' value will be rounded up to be a multiple of the device cluster size.
7.1.4 /SHADOW_MEMBER
/SHADOW_MEMBER=device: The physical member of the shadowset on which to perform an EXTEND or DEFRAG operation. This qualifier is only required in combination with /DEFRAG and /EXTEND. Example : DFU> INDEXF/DEFRAG DSA0:/SHADOW_MEMBER=$1$DUA104:
7.1.5 /SHOW_POINTERS
Displays all mapping pointer information during the analyze phase.
7.1.6 /STATISTICS
/STATISTICS /NOSTATISTICS (default) Controls whether cpu and I/O consumption of the command are shown.
7.1.7 /TRUNCATE
If possible the INDEXF.SYS file will be truncated back to the end-of-file size. The disk must be dismounted to perform this operation.
8 – REPORT
The report option generates a file and free space report of the disk. Also a graph table is made which gives a quick overview on the free space distribution of the disk. Syntax : REPORT <device>/Qualifiers
8.1 – Qualifiers
8.1.1 /APPEND
/APPEND=filename Same as /OUTPUT, but the output will be appended to the file if it already exists. Thus output from multiple DFU commands can be put in the same output file. If the file does not exists it will be created.
8.1.2 /GRAPH
/GRAPH /NOGRAPH (default) This qualifier enables the graph output of the free space distribution for the disk. The default behaviour is not to display the graph output.
8.1.3 /OUTPUT
/OUTPUT=filename This qualifier redirects the output from DFU to an output file.
8.1.4 /NOBITMAP
Skip the bitmap statistics report.
8.1.5 /NOFILE
Skip the file statistics report.
8.1.6 /NOVOLUME
Skip the volume info report.
8.1.7 /STATISTICS
/STATISTICS /NOSTATISTICS (default) Controls whether cpu and I/O consumption of the command are shown.
8.1.8 /UNIT
/UNIT=BYTES | BLOCKS /UNIT=BLOCKS (default) Report sizes in units of bytes. The default behaviour is to report sizes as block units.
8.1.9 /USAGE(=uic or identifier)
Generate a diskblock usage report. DFU will report per UIC/Identifier the blocks used/allocated, and the number of file headers used. If diskquota is enabled a third column will be added to the report with the blocks used according to QUOTA.SYS. If an UIC or Identifier is entered then only that UIC will be reported. The diskquota used must satisfy the rule : QUOTA used = blocks allocated + # of file headers.
9 – Screen Management
This version of DFU uses Screen Management (SMG) routines to perform output. DFU will automatically select SMG unless the terminal does not have SMG capabilities, if DFU is executed in a batch job or if the logical DFU$NOSMG is defined. In any of these 3 cases DFU will switch to normal line oriented output.
9.1 – Line Mode
DFU can be forced to line mode output by defining the logical DFU$NOSMG to any value.
9.2 – Special Keys
In SMG mode the following keys perform special functions (Keys between () are keys on a PC keyboard) : o CTRL/W : Redraws the screen o HELP or PF2 (/) : Invokes the help facility o PF4 (-) : Dumps the screen contents to file DFU_SCREEN.TXT o PREV_SCREEN (PageUp) : Scrolls the output window back (one screen) o NEXT_SCREEN (PageDown): Scrolls the output window forward (one screen) o INSERTHERE (Insert) : Scrolls the output window back (one line) o REMOVE (Delete) : Scrolls the output window forward (one line) o SELECT (End) : Toggle between 80/132 columns o UP/DOWN : Recall command buffer
9.3 – Paging-output
In SMG mode the /PAGE qualifier will present output page by page. This may be handy for some commands which produce a large amount of output (SEARCH, REPORT).
10 – SEARCH
The SEARCH option searches for specific files on a device. Syntax : SEARCH <device>/Qualifiers
10.1 – Qualifiers
10.1.1 /ACCESS
/ACCESS=keyword(=value) This qualifier is used in combination with 3 possible keywords : BEFORE=date, SINCE=date or NONE. The last access date is used for selecting files. Use SINCE and BEFORE or NONE , but not both. The NONE keyword returns files which don't have a last access date set. Examples : o /ACCESS=BEFORE=date o /ACCESS=(BEFORE=date,SINCE=anotherdate) o /ACCESS=NONE
10.1.2 /ACE
/ACE=identifier Searches for files containing an ACL list with an ACE for this identifier.
10.1.3 /ALLOCATED
When using the /SIZE qualifier, the default size used for comparison is the actual file size. Use /ALLOCATED to force DFU to use the allocated filesize for comparison.
10.1.4 /APPEND
/APPEND=filename Same as /OUTPUT, but the output will be appended to the file if it already exists. Thus output from multiple DFU commands can be put in the same output file. If the file does not exists it will be created.
10.1.5 /ATTRIBUTE
/ATTRIBUTE=keyword(=value) This qualifier is used in combination with 3 possible keywords : BEFORE=date, SINCE=date or NONE. The last attribute change date is used in for selecting files. Use SINCE and BEFORE or NONE , but not both. The NONE keyword returns files which don't have a last attribute change date set. Examples : o /ATTRIBUTE=BEFORE=date o /ATTRIBUTE=(BEFORE=date,SINCE=anotherdate) o /ATTRIBUTE=NONE
10.1.6 /BACKUP
/BACKUP=keyword(=value) This qualifier is used in combination with 3 possible keywords : BEFORE=date, SINCE=date or NONE. The backup date is used in for selecting files. Use SINCE and BEFORE or NONE, but not both. The NONE keyword returns files which don't have a backup date recorded. Examples : o /BACKUP=BEFORE=date o /BACKUP=(BEFORE=date,SINCE=anotherdate) o /BACKUP=NONE
10.1.7 /BAKFID
/BAKFID=backlink-file-id Use this qualifier to look for a file with a specific backlink. Only the first part of the file id must be specified, that is, if the File id is (x,y,z) one must specifiy 'x' as the file-id. Use this qualifier to get files from a specific directory. If /BAKFID=0 is used, DFU returns files not belonging to a directory (often temporary files).
10.1.8 /CHARACTERISTICS
/CHARACTERISTICS=(characteristic,...) This qualifier is used to select files by their characteristics. The possible characteristics are : o BADACL : files marked with a bad ACL list o BADBLOCK : files marked with Bad Blocks o BESTTRY : files marked contiguous-best-try o CONTIGUOUS : files which are contiguous o DIRECTORY : files marked as a directory file o ERASE : erase file before deletion o LOCKED : files with the deacces lock bit set o MARKED : files marked for deletion o NOBACKUP : files marked as NoBackup o NOCHARGE : files marked as NOCHARGE o NOMOVE : files marked as NOMOVE o SPOOL : spool files o SCRATCH : files marked as scratch files o NOSHELVABLE: files marked a noshelvable o ISSHELVED : files which are shelved DFU will use a logical AND to select files, that is if several characteristics are specified DFU will only return files which have all these characteristics set. To overrule this, use the MATCH=OR keyword, eg: SEARCH device/CHAR=(DIRECTORY,NOBACKUP,MATCH=OR)
10.1.9 /CREATED
/CREATED=keyword=value This qualifier is used in combination with 2 possible keywords : BEFORE=date or SINCE=date. The creation date is used in for selecting files. Examples: o /CREATED=BEFORE=date o /CREATED=(BEFORE=date,SINCE=anotherdate)
10.1.10 /EXCLUDE
/EXCLUDE=filename Use this qualifier to exclude filenames from the selction. Eg.: /EXCLUDE=*.SYS will force DFU to not select filenames matching *.SYS.
10.1.11 /EXPIRED
/EXPIRED=keyword(=value) This qualifier is used in combination with 3 possible keywords BEFORE=date, SINCE=date or NONE. The expiration date is used in for selecting files. Either use SINCE and BEFORE or NONE , but not both. The NONE keyword returns files which don't have a expiration date recorded. Examples : o /EXPIRED=BEFORE=date o /EXPIRED=(BEFORE=date,SINCE=anotherdate) o /EXPIRED=NONE
10.1.12 /FID
/FID=file-id Use this qualifier to look for a specific file. Only the first part of the file id must be specified, that is , if the File id is (x,y,z) one must specifiy 'x' as the file-id. If this qualifier is used, DFU does not scan INDEXF.SYS but just looks up the specific file header. Therefore, this qualifier can not be combined with other search qualifiers such as /SIZE or /FILE.
10.1.13 /FILE
/FILE=filename DFU selects only file names which match the 'filename'. Wildcards may be used, eg: /FILE=*.SYS or /FILE=LOGIN.*.
10.1.14 /FORMAT
/FORMAT=format_string Used with /OUTPUT. Create an output file using the format as described in formatstring. The format string MUST contains the !AS directive; DFU fills in the resultant file there. Example : DFU> SEARCH/FILE=*.TMP/FORMAT="$delete/confirm !AS"
10.1.15 /FRAGMENT
/FRAGMENT [=option] Shows the numbers of headers/fragments of the file. Available options: o /FRAGMENT Don't select files, but show fragmentation info o /FRAGMENT=MINUMUM=fragments DFU selects files with at least 'fragments' fragments o /FRAGMENT=MAXIMUM=fragments DFU selects files with at most 'fragments' fragments Both options can be combined, eg.: /FRAGMENT=(MIN=4,MAX=10) will select all files with between 4 and 10 fragments.
10.1.16 /FULL
Gives a full output for each found file. The output contains directory, filename, File ID, Virtual Block Number within INDEXF.SYS, filesize, owner, creation date, revision date. Note that default is to produce a 'short' output.
10.1.17 /HOME
Displays information about the home block of the disk. DFU uses the home block to calculate the actual used and free file headers in INDEXF.SYS.
10.1.18 /IDENT
/IDENT=identifier /NOIDENT=identifier DFU Selects files owned by this identifier. Another way is to use the /OWNER=uic qualifier. /IDENT and /UIC can not be used in the same DFU command. Using /NOIDENT causes DFU to search for all files NOT owned by this identifier.
10.1.19 /LBN
/LBN=logical-block-number The /LBN option is a special qualifier which allows to find a file which contains a specific logical block number. Note that this qualifier cannot be combined with other search qualifiers (such as /FILE=).
10.1.20 /LIMIT
/LIMIT=(minimum=n,maximum=m) Searches all directory files for a default version limit between 'n' and 'm'.
10.1.21 /NAME_TYPE
/NAME_TYPE=ODS2 | ISL1 | UCS2 Searches for files with ODS2 (classic VMS), Iso-Latin1 or Unicode name type. This command is only meaningfull for ODS5 disks.
10.1.22 /NOSEARCH
Do not search the volume. This qualifier can only be used with /HOME. It is used to display only the home block info of the device.
10.1.23 /NOVOLSET
The /NOVOLSET qualifier overrides default Volume set processing by DFU. This is usefull eg. when doing a /LBN search on a specific disk.
10.1.24 /MODIFIED
/MODIFIED=keyword=value This qualifier is used in combination with 2 possible keywords : BEFORE=date or SINCE=date. The revision date is used in for selecting files. Examples : o /MODIFIED=BEFORE=date o /MODIFIED=(BEFORE=date,SINCE=anotherdate)
10.1.25 /MULTIPLE
This qualifier displays files which have extension headers. This gives an indication about possible fragmentation of the disk. Note that these headers can also be a result of large ACL lists.
10.1.26 /ORGANIZATION
/ORGANIZATION=INDEXED | RELATIVE | SEQUENTIAL | DIRECT This qualifier searches for files with the specified RMS file organization
10.1.27 /OUTPUT
/OUTPUT=filename This qualifier redirects the output from DFU about all found files to an output file.
10.1.28 /OVER_ALLOCATED
/OVER_ALLOCATED=n Select files for which the difference between blocks used and allocated is greater than or equal to 'n' blocks.
10.1.29 /OWNER
/OWNER=uic /NOOWNER=uic Selects all files owned by the specified uic. This qualifier cannot be used in combination with /IDENT. The uic must be specified in a standard [grp,mem] format. Using /NOOWNER causes DFU to search for all files NOT owned by this uic.
10.1.30 /PLACED
Cheks for placed files.
10.1.31 /SIZE
/SIZE=option The following options exist: o /SIZE=MINUMUM=blocksize DFU selects files at least blocksize blocks in size o /SIZE=MAXIMUM=blocksize DFU selects files at most blocksize blocks in size. Both options can be combined, eg.: /SIZE=(MIN=1000,MAX=10000) will select all files between 1000 and 10000 blocks in size.
10.1.32 /SORT
This qualifier will sort the results of DFU to the output file specified in /OUTPUT. /SORT can not be used with /FULL or /SUMMARY.
10.1.33 /STATISTICS
/STATISTICS /NOSTATISTICS (default) Controls whether cpu and I/O consumption of the command are shown.
10.1.34 /SUMMARY
Gives a summary of the total number of files found, and the number of blocks occupied by these files.
10.1.35 /TYPE
/TYPE=ODS2 | ODS5 Searches for files with ODS2 or ODS5 file headers. Only usefull on ODS5 disks.
10.1.36 /VERSION_NUMBER
/VERSION_NUMBER=option Use at least one of the following options: o /VERSION_NUMBER=MINUMUM=file_version DFU selects files whose version number in the file name is at least 'file_version'. o /VERSION_NUMBER=MAXIMUM=file_version DFU selects files whose version number in the file name is at most 'file_version'. Both options can be combined, eg.: /VERSION=(MIN=1000,MAX=10000) will select all files with a version_number between 1000 and 10000 inclusive.
11 – SET
Modifies the characteristics of one or more files. It handles all attributes which 'SET FILE' can't handle. Format: SET file-spec[,...],@file
11.1 – Parameters
file-spec[,...],@file Specifies one or more files to be modified. If two or more files are specified, separate them with commas. A filelist may be used by specifying @file. Thus, an output file generated by a DFU SEARCH command can be used to be processed with SET. Wildcard characters are allowed in the file specifications.
11.2 – Qualifiers
11.2.1 /ACCESS_DATE
/ACCESS_DATE=date /NOACCESS_DATE Controls whether a new file access date is assigned to the specified files. Specify the date according to the rules described in Chapter 1 of the VMS DCL Concepts Manual. Absolute date keywords are allowed.
11.2.2 /ATTRIBUTE_DATE
/ATTRIBUTE_DATE=date /NOATTRIBUTE_DATE Controls whether a new lats attribute change date is assigned to the specified files. Specify the date according to the rules described in Chapter 1 of the VMS DCL Concepts Manual. Absolute date keywords are allowed.
11.2.3 /BACKUP_DATE
/BACKUP_DATE=date /NOBACKUP_DATE Controls whether a new backup date is assigned to the specified files. Specify the date according to the rules described in Chapter 1 of the VMS DCL Concepts Manual. Absolute date keywords are allowed. Use of this qualifier requires ownership of the file or access control.
11.2.4 /BADACL
/BADACL /NOBADACL Sets or resets the 'BAD ACL' flag in the file header. This enables deletion of a file with a corrupted ACL.
11.2.5 /BCK
/BCK /NOBCK Clears or sets the file's nobackup bit. (/BCK clears the bit, /NOBCK sets the bit).
11.2.6 /BUCKETSIZE
/BUCKETSIZE=size Sets a new value for the bucket size in the file header.
11.2.7 /CONFIRM
/CONFIRM /NOCONFIRM (default) Controls whether a request is issued before each individual SET operation to confirm that the operation should be performed on that file. When the system issues the prompt, issue any of the following responses: YES NO QUIT TRUE FALSE <CTRL/Z> 1 0 ALL <RET>
11.2.8 /CONTIGUOUS_BEST_TRY
/CONTIGUOUS_BEST_TRY /NOCONTIGUOUS_BEST_TRY Sets or resets the 'CONTIGUOUS_BEST_TRY' bit in the file header.
11.2.9 /CREATION_DATE
/CREATION_DATE=date /NOCREATION_DATE Controls whether a new creation date is assigned to the specified files. Specify the date according to the rules described in Chapter 1 of the VMS DCL Concepts Manual. Absolute date keywords are allowed. Use of this qualifier requires ownership of the file or access control.
11.2.10 /DIRECTORY
/DIRECTORY /NODIRECTORY Sets or resets the directory attribute of a file. This qualifier allows to set the directory bit of a file which was mistakingly reset by the 'SET FILE/NODIRECTORY' command. If it is done on a non- directory file, then access to that directory will give a 'BADIRECTORY' error.
11.2.11 /EBLOCK
/EBLOCK[=block] This qualifier will reset the end-of-file mark to the highest block allocated if no block has been specified. Otherwise the end-of-file mark will be set to the specified block.
11.2.12 /EBYTE
/EBYTE[=byte] This qualifier will set the end-of-file byte mark to the highest byte if it has not been specified. Otherwise the end-of-file byte mark will be set to the specified byte.
11.2.13 /EXPIRATION_DATE
/EXPIRATION_DATE=date /NOEXPIRATION_DATE Controls whether an expiration date is assigned to the specified files. Specify the date according to the rules described in Chapter 1 of the VMS DCL Concepts Manual. Absolute date keywords are allowed. Use of this qualifier requires ownership of the file or access control.
11.2.14 /IDENT
/IDENT=identifier or uic Modifies the file-owner. This command can also be used on open files (such as INDEXF.SYS). /IDENT cannot be combined with /OWNER_UIC
11.2.15 /IGNORE
/IGNORE=INTERLOCK Set the file attributes even if the file is open or locked.
11.2.16 /LOCKED
/LOCKED /NOLOCKED This qualifier will lock a file for future use. Nothing else can then be done with the file, until it is unlocked (which can also be done with the VMS 'UNLOCK' command.
11.2.17 /LOG
/LOG (default) /NOLOG Controls whether the SET command displays the file specification of each file after the modification is made.
11.2.18 /MAXREC
/MAXREC=record Sets a new value for the maximum record number in the file header.
11.2.19 /NOMOVE
/NOMOVE /NONOMOVE Disables or enables the MoveFile attribute.
11.2.20 /ORGANIZATION
/ORGANIZATION=keyword The following keywords are used as parameters for the ORGANIZATION qualifier: DIRECT, INDEXED, RELATIVE and SEQUENTIAL. This will allow to modify the file organization type in the file header. Of course this won't change the real organization of the file.
11.2.21 /OWNER_UIC
/OWNER_UIC=uic or identifier Modifies the file-owner. This command can also be used on open files (such as INDEXF.SYS). /OWNER_UIC can not be combined with /IDENT.
11.2.22 /RECATTRIBUTES
/RECATTRIBUTES=keyword The following keywords are used as parameters for the RECATTRIBUTES qualifier: NONE, FORTRAN, IMPLIED, PRINT and NOSPAN. This will allow to modify the file's record attributes in the file header. NONE, FORTRAN, IMPLIED and PRINT are mutually exclusive, but can be used in combination with NOSPAN. When NOSPAN is omitted SPAN is assumed (the default is to allow records to cross block boundaries).
11.2.23 /RECSIZE
/RECSIZE=size Sets a new value for the record size in the file header.
11.2.24 /RECTYPE
/RECTYPE=keyword The following keywords are used as parameters for the RECTYPE qualifier: FIXED, STREAM, STREAMCR, STREAMLF, UNDEFINED, VARIABLE and VFC. This will allow to modify the file's record type in the file header.
11.2.25 /REVISION_DATE
/REVISION_DATE=date /NOREVISION_DATE Controls whether a revision date is assigned to the specified files. Specify the date according to the rules described in Chapter 1 of the VMS DCL Concepts Manual. Absolute date keywords are allowed. Use of this qualifier requires ownership of the file or access control.
11.2.26 /RVCOUNT
/RVCOUNT=count Sets a new value for the revision count in the file header.
11.2.27 /UPDATE
/UPDATE /NOUPDATE (default) Normally the file's revision date will be updated after any modification to it. SET however disables this update (otherwise the REVISION date could not be set). Specify this qualifier if the revision date must be updated.
11.2.28 /VERSION_LIMIT
/VERSION_LIMIT=limit Change the file's version limit. Can be used with /IGNORE=INTERLOCK to change the version limit of an open file. However: this will only work when the filename specified is the highest existing version of that file (this will be automatic when the version limit is not specified on the command line). The specified version limit must be between 0 and 32767. This command has no effect on directory files.
11.2.29 /VFCSIZE
/VFCSIZE=size Sets a new value for the VFC size in the file header. This value will only be used with the VFC record type.
12 – SPAWN
Spawns a subprocess.
13 – UNDELETE
The Undelete command recovers deleted files. It is done as safely as possible. If undelete discovers that the file header or blocks of the deleted file have been reused, the undelete process will stop. The /FILE, /IDENTIFIER or /OWNER qualifier can be used to select specific files. The /LIST qualifier can be used to generate a list of recoverable files without actually undeleting files. If a matching filename is found undelete will ask for a confirmation before undeleting the file. Multiple files can be undeleted with just one UNDELETE command. After a succesful undelete the file will be entered in the original directory if possible or in the [SYSLOST] directory. NOTE: The volume (set) will be locked for other users during the undelete command unless the /LIST qualifier is used. Syntax: UNDELETE <device>/Qualifiers
13.1 – Qualifiers
13.1.1 /IDENT=identifier
Select file by identifier. This qualifier cannot be used in conjunction with /OWNER.
13.1.2 /FILE=<filename>
Select file by filename. Wildcards may be used in the filename. If the /FILE qualifier is omitted DFU will use *.*;* as the filename.
13.1.3 /LIST(=output_file)
Generate a list of recoverable files. This command will not lock the volume, and will not undelete any file.
13.1.4 /MARKED
Select only files marked for delete.
13.1.5 /OWNER=<uic>
Select file by owner uic. This qualifier cannot be used in conjunction with /IDENT.
13.1.6 /STATISTICS
/STATISTICS /NOSTATISTICS (default) Controls whether cpu and I/O consumption of the command are shown.
14 – VERIFY
The Verify option provides a function equivalent to ANALYZE/DISK, but many times faster. Verify will report files with invalid backlinks, lost files, and blocks which are allocated by more than 1 file. Also the BITMAP and QUOTA files are checked. The /FIX qualifier allows some basic repair actions without locking the disk. The /REBUILD qualifier will rebuild INDEXF.SYS, BITMAP.SYS and QUOTA.SYS if necessary. Note that /REBUILD will lock the disk for a short period of time. Syntax : VERIFY <device>(/OUTPUT=<filename>/LOCK/FIX/REBUILD)
14.1 – Qualifiers
14.1.1 /APPEND
/APPEND=filename Same as /OUTPUT, but the output will be appended to the file if it already exists. Thus output from multiple DFU commands can be put in the same output file. If the file does not exists it will be created.
14.1.2 /DIRECTORY_SCAN
This optional qualifier directs DFU to make a full directory scan. This allows better detection of some cases of lost files, and detection of some directory corruptions. Use /FIX to repair such errors. Warning: using /DIRECTORY_SCAN can take several minutes
14.1.3 /FIX
/FIX /NOFIX (default) This qualifier repairs the following errors: o Deletes files marked for delete o Moves lost files and directories to [SYSLOST] o Repairs a wrong backlink for VMS$COMMON.DIR (system disk) The /FIX qualifier does not lock the disk!
14.1.4 /LOCK
/LOCK /NOLOCK (default) Locks the volume for allocation. To get a consistent view of the disk one must stall all allocation changes of the disk. Otherwise VERIFY may report errors which are caused by concurrent disk activity during execution of the VERIFY command. Trade off is that the disk is locked for the duration of the VERIFY command.
14.1.5 /OUTPUT
Redirects the output from verify to a file.
14.1.6 /REBUILD
/REBUILD /NOREBUILD (default) This qualifier repairs structure errors and mismatches in INDEXF.SYS, BITMAP.SYS and QUOTA.SYS. Note that /REBUILD will temporarily lock the device for other users.
14.1.7 /STATISTICS
/STATISTICS /NOSTATISTICS (default) Controls whether cpu and I/O consumption of the command are shown.