ODFU V3.0 !

DFU V3.0


1Previous. | Contents


Gis a valid command. Note that qualifiers will be used in a logical AND @manner, that is, SEARCH will only display files which match all !qualifiers and options specified. 




QUALIFIERS

/ACCESS=option(,option)

FThe /ACCESS qualifier is used to search files depending on their last 'ACCESS date. The possible options are :



/ACE=identifier

GSearch for files which have an ACE containing the specific identifier. EOnly ACE's of the format "IDENTIFIER=<identifier>,..." will be searched.

/ALLOCATED

BDefault action for DFU SEARCH is to use the actual file size. The G/ALLOCATED qualifier forces SEARCH to use the allocated filesize. This 5qualifier is only meaningfull if combined with /SIZE.

/APPEND=filename

AThis qualifier redirects the output to be appended to an already Fexisting file. If the output file does not exists it will be created. $Use /APPEND or /OUTPUT but not both.#

/ATTRIBUTE=option(,option)

DThe /ATTRIBUTE qualifier is used to search files depending on their 6last attribute change date. The possible options are :

/BACKUP=option(,option)

HThe /BACKUP qualifier is used to search files depending on their backup date. The possible options are :

HThe NONE option gives files which don't have a backup date recorded.The Bother 2 options can be used to get files which have a backup date Dbefore or after a specific date. The BEFORE and SINCE option can be combined in one command.!

/BAKFID=backlink-file-id

HUse this qualifier to look for a file with a specific backlink file id. FOnly the first part of the file id must be specified, that is, if the Gfile id is (x,y,z) one must specify 'x' as the file id. This qualifier Dcan be used to get files from a specific directory. If /BAKFID=0 is @used, DFU will report files not belonging to a directory (often temporary files).)

/CHARACTERISTIC=(char1,char2...)

7This qualifier is used to get files with specific file Bcharacteristics.The characteristics can have the following values:

FThe several characteristics can be combined in one command. When more Fthan one characteristic is specified DFU uses a logical AND, but this 7can be changed by using the special option MATCH=OR eg:

)  SEARCH disk/CHAR=(NOMOVE,DIR,MATCH=OR) 


!

/CREATED=option(,option)

BThe /CREATED qualifier is used to search files depending on their creation date. The options are :

DThese 2 options can be used to get files which have a creation date Dbefore or after a specific date. The BEFORE and SINCE option can be combined in one command."

/EXCLUDE=(file1,file2...)

BThis qualifier is used to exclude files from the search. Wildcard filenames are allowed.!

/EXPIRED=option(,option)

BThe /EXPIRED qualifier is used to search files depending on their "expiration date. The options are :

?The NONE option gives files which don't have a expiration date Crecorded.The other 2 options can be used to get files which have a Fexpiration date before or after a specific date. The BEFORE and SINCE &option can be combined in one command.

/FID=file-id

FThe /FID qualifier is a special function of SEARCH. It directs SEARCH Hto go directly to the specified file without processing the rest of the EIndex file. Therefore, this qualifier can not be combined with other Gsearch qualifiers such as /FILE. Normally a file-id consists is in the Hform (x,y,z) where x is the number of the file header within INDEXF.SYS Hy is the sequence number, and z is the Relative Volume Number. One only 4needs to specifiy the x value in the /FID qualifier.

/FILE=(file1,file2...)

FThis qualifier is used to search for files with a specific file name. Wildcard file names are allowed.

/FORMAT=format-string

FCreate an output file in a format described by the format string. The Gstring must contain the !AS directive (this must be uppercase). At the C!AS location the resultant filename will be filled in. The /OUTPUT qualifier is required.*

/FRAGMENT=(MINIMUM=nr,MAXIMUM=nr)

DThis qualifier displays the number of fragments and file headers of Feach file found. This can be further delimited by using the MINIMUM=n and MAXIMUM=m option. Example:
DFU> disk/FRAG DFU> disk/FRAG=min=10 #DFU> disk/FRAG=(min=10,max=100) 




/FULL

HIf this qualifier is used, SEARCH will give a full output for each file Gfound. This output is a look-alike of the output from a DIRECTORY/FULL Ccommand. This qualifier can not be combined with /SORT or /SUMMARY.

/HOME

BThis qualifier directs search to give output from the disk's home Dblock. SEARCH uses the home block for calculating the free and used file headers within INDEXF.SYS.%

/(NO)IDENT=identifier or uic

FSearch for files owned by a specific identifier or UIC. Any valid UIC @or identifier format may be used. Another way is the /OWNER_UIC Hqualifier; these 2 qualifiers cannot be combined in one SEARCH command. DIssueing /NOIDENT directs DFU to search for files NOT owned by this <IDENTIFIER, eg: DFU> SEARCH sys$sysdevice/NOIDENT=SYSTEM."

/LBN=logical-block-number

HThe /LBN qualifier is a special function of SEARCH. This allows to find Ga file which contains a specific LBN. This may be useful if bad blocks Hare logged in the error log. /LBN can not be combined with other search qualifiers such as /FILE.'

/LIMIT=(MINIMUM=n,MAXAXIMUM=m)

FSearches DIRECTORY files which have a default version limit between n Aand m (including n and m). Either MINIMUM or MAXIMUM is required.&

/NAME_TYPE=ODS2 | ISL1 | UCS2

GSearch for files which have the specified name type attribute. ODS2 if Ffor classic VMS file names, ISL1 is for Iso-Latin-1 names and UCS2 is Efor Unicode names. This qualifier is only meaningfull for ODS5 disks.)

/(NO)OWNER_UIC=uic or identifier

?This qualifier is used to get files owned by a specific UIC or Eidentifier. Any valid UIC or identifier format may be used. /UIC and F/IDENT can not be combined. Specifying /NOOWNER directs DFU to search .for files NOT owned by this UIC or identifier.

/NOSEARCH

FThis qualifier can only be used in combination with /HOME. It is used =to get the Homeblock info, without searching the entire disk.

/NOVOLSET

DThe default behaviour of SEARCH is to process an entire volume set. EThis can be changed with the /NOVOLSET qualifier. This may be useful when doing a /LBN search."

/MODIFIED=option(,option)

CThe /MODIFIED qualifier is used to search files depending on their $modification date. The options are :

HThese 2 options can be used to get files which have a modification date Dbefore or after a specific date. The BEFORE and SINCE option can be combined in one command.

/MULTIPLE

EThis qualifier searches for files which have more than 1 file header.?

/ORGANIZATION=INDEXED | SEQUENTIAL | RELATIVE | DIRECT

:Search for files with the specified RMS file organization.

/OUTPUT=file

GThis qualifier redirects the output from SEARCH to an output file.This Hfile can later be used as input to the DEFRAG, DIRECTORY or SET command.

/OVER_ALLOCATED=n

GSearches for files where the difference between the used and allocated size is at least 'n' blocks.

/PLACED

GChecks for files which have a placement control retrieval pointer.This :is sometimes set by non-DEC disk defragmentation programs.,

/SIZE=(minimum=size1,maximum=size2)

HThe /SIZE qualifier is used to limit files found by their file size.Use Dthe minimum=n or maximum=m or both. SEARCH will use the actual file Gsize for selecting files, except when the /ALLOCATED qualifier is used.

/SORT

=This qualifier will sort the files found before being output.

/STATISTICS

FThis qualifier displays the performance statistics: CPU time, Elapsed Time, I/O and PageFaults.

/SUMMARY

BThis qualifier will limit the output to the total number of files Efound, with their size (and optional the fragmentation when /FRAG is /used). /SUMMARY can not be combined with /FULL.

/TYPE=option

CThe /TYPE qualifier has 2 options : /TYPE=ODS2 or /TYPE=ODS5. This Dqualifier can be used to search for files with either an ODS2 or an EODS5 file header. This qualifier is only meaningfull on an ODS5 disk..

/VERSION_NUMBER=(minimum=n,maximum=m)

FThe /VERSION_NUMBER qualifier is used search for files within a range E(n thru m) of file version numbers. Logfiles which are produced with Dthe same name may pose problems when they reach the maximum version Enumber (32767). Using /VERSION=MIN=32000 is a quick way to find such files.


*

5.7 SET

GThis chapter describes the SET command with the related parameters and qualifiers.6

5.7.1 Description



@The SET command allows to modify file attributes which can't be Hmodified through DCL commands. This command should be used with care to Davoid corrupting files. Most a the DFU SET command options are also Eavailable with the DCL command $SET FILE/ATTRIBUTES. Still DFU's SET Ehas a few more options which are not in SET FILE/ATTRIBUTES (such as setting a BACKUP date).

GThe qualifier /IGNORE=INTERLOCK allows setting file attributes even on open or locked files.


$

SET



Modify file attributes.



Format

#

SET file1,file2,...,@file




PARAMETERS



file1,file2,...,@file

FThe files to be modified. The attributes to be modified are specified Ewith qualifiers. Wildcards area allowed in the filename. An indirect Gfile can be used by using the @ sign. This allows processing of a file &list produced by a DFU SEARCH command.



QUALIFIERS



/ACCESS_DATE=date



/NOACCESS_DATE

EControls whether a new last-access date is assigned to the specified Ffiles. Specify the date according to the rules described in Chapter 1 Gof the VMS DCL Concepts Manual. Absolute date keywords are allowed. If Hthe date is specified as '0' today's date is used. If /NOACCESS_DATE is 6specified, the last access date field will be cleared.

/ATTRIBUTE_DATE=date



/NOATTRIBUTE_DATE

EControls whether a new last attribute change date is assigned to the Fspecified files. Specify the date according to the rules described in EChapter 1 of the VMS DCL Concepts Manual. Absolute date keywords are Ballowed. If the date is specified as '0' today's date is used. If E/NOATTRIBUTE_DATE is specified, the last attribute change date field will be cleared.

/BACKUP_DATE=date



/NOBACKUP_DATE

GControls whether a new backup date is assigned to the specified files. FSpecify the date according to the rules described in Chapter 1 of the DVMS DCL Concepts Manual. Absolute date keywords are allowed. If the Edate is specified as '0', today's date is used. If /NOBACKUP_DATE is 1specified, the Backup date field will be cleared.

/BADACL



/NOBADACL

BSets or resets the 'BADACL' flag in the file header. This enables (deletion of a file with a corrupted ACL.

/BCK



/NOBCK

GClears or sets the files NOBACKUP bit. Setting a file to NOBACKUP with 5/NOBCK causes it to be skipped by a BACKUP operation.

/BUCKETSIZE=size

8Sets a new value for the bucket size in the file header.

/CONFIRM



/NOCONFIRM (default)

@Controls whether a request is issued before each individual SET Doperation to confirm that the operation should be performed on that Hfile. When the system issues the prompt, the following responses can be used:
  YES      NO     QUIT   TRUE     FALSE  CTRL/Z   1        0      ALL            <RET> 


HQUIT or CTRL/Z issues DFU to stop processing the command at that point. FWhen using ALL as the response, the command continues to process, but no further prompts are given.

/CONTIGUOUS_BEST_TRY



/NOCONTIGUOUS_BEST_TRY

@Sets or resets the 'CONTIGUOUS_BEST_TRY' bit in the file header.

/CREATION_DATE=date



/NOCREATION_DATE

BControls whether a new creation date is assigned to the specified Ffiles. Specify the date according to the rules described in Chapter 1 Gof the VMS DCL Concepts Manual. Absolute date keywords are allowed. If 3the date is specified as '0', today's date is used.

/DIRECTORY



/NODIRECTORY

HSets or resets the directory attribute of a file. This qualifier allows Fto set the directory bit of a file which was mistakingly reset by the G'SET FILE/NODIRECTORY' command. If it is done on a non-directory file, >then access to that directory will give a 'BADIRECTORY' error.

/EBLOCK[=block]

DThis qualifier will reset the end-of-file mark to the highest block Dallocated if no block has been specified. Otherwise the end-of-file (mark will be set to the specified block.

/EBYTE[=byte]

FThis qualifier will set the end-of-file byte mark to the highest byte Gif it has not been specified. Otherwise the end-of-file byte mark will be set to the specified byte.

/EXPIRATION_DATE=date



/NOEXPIRATION_DATE

HControls whether an expiration date is assigned to the specified files. FSpecify the date according to the rules described in Chapter 1 of the DVMS DCL Concepts Manual. Absolute date keywords are allowed. If the /date is specified as '0', today's date is used.!

/IDENT=identifier or uic

<Modify the file ownership. See also /OWNER_UIC. This allows Amodification of the file-ownership even if the file is open, eg. ;INDEXF.SYS. /IDENT and /OWNER_UIC can not be used together.

/IGNORE=INTERLOCK

BPerform the SET command on open or locked files. Default DFU will Creturn a %SYSTEM-E-ACCONFLICT on open files. The /IGNORE=INTERLOCK #option can overrule this behaviour.

/LOCKED



/NOLOCKED

FThis qualifier will lock a file for future use. Nothing else can then Dbe done with the file, until it is unlocked (which can also be done with the VMS 'UNLOCK' command.

/LOG (default)



/NOLOG

DControls whether the SET command displays the file specification of )each file after the modification is made.

/MAXREC=record

BSets a new value for the maximum record number in the file header.

/NOMOVE

FThis qualifier disables or enables (/NONOMOVE) the MoveFile attribute Don files. It is the same as the DCL command SET FILE/NOMOVE, but in Fconjunction with /IGNORE=INTERLOCK DFU can change the setting on Open or Locked files.

/ORGANIZATION=keyword

CThe following keywords are used as parameters for the ORGANIZATION Hqualifier: DIRECT, INDEXED, RELATIVE and SEQUENTIAL. This allows one to Emodify the file organization type in the file header. Of course this /won't change the real organization of the file.%

/OWNER_UIC=uic or identifier

DModify the file ownership to an UIC or identifier. See also /IDENT. CThis allows modification of the file-ownership even if the file is Eopen, eg. INDEXF.SYS. /IDENT and /OWNER_UIC can not be used together.

/RECATTRIBUTES=keyword

DThe following keywords are used as parameters for the RECATTRIBUTES Hqualifier: NONE, FORTRAN, IMPLIED, PRINT and NOSPAN. This allows one to Gmodify the file's record attributes in the file header. NONE, FORTRAN, =IMPLIED and PRINT are mutually exclusive, but can be used in Ecombination with NOSPAN. When NOSPAN is omitted SPAN is assumed (the 7default is to allow records to cross block boundaries).

/RECSIZE=size

8Sets a new value for the record size in the file header.

/RECTYPE=keyword

>The following keywords are used as parameters for the RECTYPE Fqualifier: FIXED, STREAM, STREAMCR, STREAMLF, UNDEFINED, VARIABLE and BVFC. This allows one to modify the file's record type in the file header.

/REVISION_DATE=date



/NOREVISION_DATE

EControls whether a revision date is assigned to the specified files. FSpecify the date according to the rules described in Chapter 1 of the DVMS DCL Concepts Manual. Absolute date keywords are allowed. If the /date is specified as '0', today's date is used.

/RVCOUNT=count

;Sets a new value for the revision count in the file header.

/UPDATE



/NOUPDATE (default)

<Normally the file's revision date will be updated after any Dmodification to it. SET however disables this update (otherwise the HREVISION date could not be set). Specify this qualifier if the revision date is to be updated.

/VFCSIZE=size

FSets a new value for the VFC size in the file header. This value will &only be used with the VFC record type.


/

5.8 UNDELETE

HThis chapter describes the UNDELETE command with the related parameters and qualifiers.6

5.8.1 Description



?The UNDELETE function is designed to recover deleted files, if Hpossible. UNDELETE operates in a safe mode such that it first checks if Dthe deleted file header and diskblocks are still available. Only in Hthat case will the file be recovered. Otherwise UNDELETE will leave the 5disk unmodified. UNDELETE has some powerfull options:



@

5.9 File specification syntax

FBecause a deleted file no longer 'knows' its parent directory, do NOT Benter a directory specification in the file name. Therefore , the &syntax to undelete a specific file is:
>   DFU> UNDELETE <device:>/file=<filename.ext>   eg:  *   DFU> UNDELETE $1$DIA1:/file=FOO.BAR 


EDFU will try to re-enter the file in its original directory; it that :fails the file will be entered in the [SYSLOST] directory.=

5.9.1 How Undelete works



*The UNDELETE command operates as follows :

    I
  1. Lock the volume. In the same manner as ANALYZE/DISK/REPAIR and SET I VOLUME /REBUILD Undelete locks the disk for other writers such that no @ modifications to the INDEXF, BITMAP or QUOTA file can be made.I
  2. Search the INDEXF.SYS file if the requested file is still there. A < check is made if it really is a valid deleted file header.C
  3. Checks if the deleted file header and all possible extension  headers are still valid.H
  4. Checks if the blocks previously owned by this file are still free.I
  5. If all these conditions are met DFU will display the file and asks  for a confirmation.I
  6. Rebuilds all of the deleted file headers and bitmaps in memory. If H no errors are found all the file headers and bitmaps are written back E to disk. The files original backlink is saved in a table in memory.I
  7. If appropiate the blocks and headers are charged against diskquota.E
  8. When all of INDEXF.SYS has been scanned the volume is unlocked.J
  9. The file(s) is (are) entered in the original directory if possible, A using the table build up in memory. If the enter command fails E (probably because the original directory is gone) the file will be A entered in [SYSLOST]. DFU will create this directory if needed.


CIf the /LIST qualifier is used, DFU will just list the recoverable Ffiles without performing any action on the disk. The disk will not be locked.

?It is important to note that during the bitmap and file header Fprocessing any error will immediately terminate the recovery process, Fand unlock the disk. Files which have been recovered up to that point ?will still be entered in the appropiate directory. As no wrong Dinformation has been written back to the disk this should leave the disk in a proper state.

DNOTE: The blocks recovered will NOT be subtracted from the Volume's :free block count. To get the actual freeblock count a SET FVOLUME/REBUILD=FORCE is necessary. Also a complete reMOUNT will reset the freeblock count.

FIMPORTANT: DFU takes care to recover only files whose original blocks Fare free. However these blocks may have been modified in the meantime Fby another file which also has been deleted. Therefore each recovered 5file must be checked manually to check its integrity.

Example of a Undelete session :

DFU> undel $1$dua102:/list  .Recoverable file [TEST]CHANGE_UIC.FOR;2 found ,Recoverable file [TEST]CHECK_ID.FOR;1 found -Recoverable file [TEST]CHKPRDIMG.FOR;1 found *Recoverable file [TEST]CHRLEN.FOR;1 found  $DFU> undel/file=*.for $1$DUA102:  '%DFU-I-READBMAP, Reading BITMAP.SYS... +%DFU-W-LOCKED, Volume now LOCKED for write )%DFU-I-UNDEL, Start search on $1$DUA102:  .Recoverable file [TEST]CHANGE_UIC.FOR;2 found !Recover this file? (Y/N) [N] : n ,Recoverable file [TEST]CHECK_ID.FOR;1 found !Recover this file? (Y/N) [N] : y +%DFU-S-RECOVER, File succesfully recovered '%DFU-I-ADDQUOTA, updating diskquota...  -Recoverable file [TEST]CHKPRDIMG.FOR;1 found !Recover this file? (Y/N) [N] : n *Recoverable file [TEST]CHRLEN.FOR;1 found !Recover this file? (Y/N) [N] : y  +%DFU-S-RECOVER, File succesfully recovered '%DFU-I-ADDQUOTA, updating diskquota... %DFU-I-UNLOCK, Volume unlocked /%DFU-I-ENTER, Entering file(s) in directory... @%DFU-S-ENTERED, File CHECK_ID.FOR entered in original directory >%DFU-S-ENTERED, File CHRLEN.FOR entered in original directory  
DFU> EXIT  


B

5.9.2 Files marked for delete

CNormally DFU does not undelete files marked for delete. To recover >files marked for delete, use the /MARKED qualifier. This will Hspecifically undelete files marked for delete. This allows the recovery Gof files which are deleted but still open, such as INSTALLed files, or Geven recovery of the system dump file SYSDUMP.DMP whenever such a file is accidentially deleted.
)

UNDELETE



.Recover one or more deleted files on a device.



Format



UNDELETE device[:]




PARAMETERS



device

FThe device on which to undelete one or more files. The device will be )write-locked during the undelete process.



QUALIFIERS



/FILE=filename

GThe file to be recovered. Wildcards may be used. If a matching file is Hfound Undelete will ask a confirmation. If a certain file is confirmed, Fthat file will be recovered if possible, and control will be returned Bto the DFU> prompt. If the /FILE qualifier is omitted DFU will assume *.*;* .!

/IDENT=identifier or uic

HUsed to search for files owned by a specific identifier or UIC. Another Gway is the /OWNER_UIC qualifier; these 2 qualifier can not be combined in one UNDELETE command.!

/LIST(=output-file-name)

GGenerate a list of recoverable files. No undelete will take place, and =the disk will not be locked. The defaultoutput is SYS$OUTPUT.

/MARKED

EConsider only files marked-for-delete. Such files are usuallly still Fopen by some utility, such as INSTALLed files or the system dump file.%

/OWNER_UIC=uic or identifier

EThis qualifier is used to select files by a UIC or identifier . This *qualifier can not be combined with /IDENT.

/STATISTICS

FThis qualifier displays the performance statistics: CPU time, Elapsed Time, I/O and PageFaults.


.

5.10 SPAWN

CThe SPAWN command creates an interactive subprocess. This allows a Cquick escape to the DCL level from an interactive DFU session. The )subprocess has a default prompt DFU_sub$./

5.11 VERIFY



FThis chapter describes the VERIFY command with the related parameters and qualifiers.8

5.11.1 Description



HThe VERIFY command makes an analysis of the disk, scanning for file and @disk structure errors. VERIFY performs almost all of the checks Enormally done by a ANALYZE/DISK command. But VERIFY is several times 2faster than ANALYZE/DISK, and uses less resources.

/VERIFY checks and reports the following errors:



A

5.11.2 Basic repair actions

EThe /FIX qualifier can be used to perform some basic repair actions. EUnlike ANALYZE/DISK/REPAIR this does not lock the disk! /FIX repairs the following errors:

D

5.11.3 Advanced repair actions

HThe /REBUILD qualifier can be used to perform some more repair actions. FThis will however lock the disk (like a DCL $SET VOLUME/REBUILD=FORCE Dcommand) for a short period of time. /REBUILD repairs the following errors :

?Note that /REBUILD does NOT change the disk's free block count.

?

5.11.4 Directory scanning

GThe /DIRECTORY_SCAN qualifier will force DFU to also verify and repair D(when using /FIX) directory problems. This qualifier directs DFU to <scan all directories on the disk. This has some advantages :

GPlease note that a complete directory scan may take several minutes to complete.@

5.11.5 Interpreting errors



?On a system (cluster) wide mounted disk there will probably be Econcurrent disk activity during the VERIFY command. Therefore VERIFY Gmay report some errors which are not really errors. Try running VERIFY F2 or 3 times to see if the errors are reported again. To get a really Aconsistent report from VERIFY use the /LOCK qualifier. This will Gwrite-lock the disk during the VERIFY run, so it is not recommended to Euse this qualifier too often. (The /REPAIR qualifier of ANALYZE/DISK also write-locks the disk).<

5.11.6 Error reporting



+An example of a typical VERIFY run follows:

DFU> VERIFY mydisk !%DFU-I-VERIFY, Verifying MYDISK: ,%DFU-S-CHKHOME, Home block info verified OK '%DFU-I-IFSCAN, Scanning INDEXF.SYS ... )%DFU-I-CHKBITMAP, Checking BITMAP.SYS... +%DFU-I-CHKLOST, Checking for lost files... '%DFU-I-CHKQUOTA, Checking QUOTA.SYS...   %DFU> VERIFY/REBUILD sys$sysdevice '%DFU-W-LOCKED, Volume now write locked (%DFU=I-VERIFY, Verifying SYS$SYSDEVICE: ,%DFU-S-CHKHOME, Home block info verified OK A%DFU-W-DELETED, file (620,351,1) RSF_DI_RSF_SERVER0.TMP;3 marked  for delete ;%DFU-W-DELETED, file (6349,173,1) DCLTABLES.EXE;937 marked  for delete B%DFU-W-DELETED, file (19745,35,1) RSF_DI_RSF_SERVER0.TMP;3 marked  for delete )%DFU-I-CHKBITMAP, Checking BITMAP.SYS... @%DFU-E-ALLOCCLR, blocks LBN 2667141 through 2667143 incorrectly  marked allocated @%DFU-E-ALLOCCLR, blocks LBN 2667153 through 2667161 incorrectly  marked allocated   .   . 1%DFU-S-RBDBITMAP, BITMAP.SYS succesfully rebuild +%DFU-I-CHKLOST, Checking for lost files... %DFU-I-UNLOCK, Volume unlocked  DFU> 
 




1Previous% | Next. | Contents