|
|
1.1 ! root 1: .TH ICHECK 8 ! 2: .CT 1 sa_nonmortals ! 3: .SH NAME ! 4: icheck, dcheck, ncheck \- file system consistency check ! 5: .SH SYNOPSIS ! 6: .B /etc/icheck ! 7: [ ! 8: option ... ] ! 9: .I filesystem ... ! 10: .PP ! 11: .B /etc/dcheck ! 12: [ ! 13: option ... ] ! 14: .I filesystem ... ! 15: .PP ! 16: .B /etc/ncheck ! 17: [ ! 18: option ... ] ! 19: .I filesystem ... ! 20: .SH DESCRIPTION ! 21: These programs perform ! 22: consistency checks on file systems. ! 23: For normal file system maintenance, see ! 24: .IR fsck (8). ! 25: Common options are ! 26: .TP ! 27: .B -B ! 28: The file system is bitmapped. ! 29: If ! 30: .I filesystem ! 31: is a special file, this option is set automatically from ! 32: the minor device number. ! 33: .TP ! 34: .BI -i " number ... ! 35: Report only on specified inode ! 36: .I numbers ! 37: .RI ( dcheck ! 38: and ! 39: .I ncheck ! 40: only). ! 41: .PP ! 42: .I Icheck ! 43: examines each ! 44: .I filesystem, ! 45: builds a list of used blocks, ! 46: and compares this list against ! 47: the free list maintained on the file system. ! 48: The normal output of ! 49: .I icheck ! 50: includes a report of ! 51: .IP "" ! 52: The total number of files and the numbers of ! 53: regular, directory, block special and character special files. ! 54: .IP "" ! 55: The total number of blocks in use and the numbers of ! 56: single-, double-, and triple-indirect blocks and directory blocks. ! 57: .IP "" ! 58: The number of free blocks. ! 59: .IP "" ! 60: The number of blocks missing; ! 61: .I i.e.\& ! 62: not in any file ! 63: nor in the free list. ! 64: .PP ! 65: Other ! 66: .I icheck ! 67: options are ! 68: .TP ! 69: .B -s ! 70: Ignore the free list and reconstruct a new one ! 71: by rewriting the super-block of the file system. ! 72: The file system should be dismounted while this is done; ! 73: if this is not possible (for example if ! 74: the root file system has to be salvaged) ! 75: care should be taken that the system is quiescent. ! 76: The words in the super-block ! 77: which indicate the size of the free list and of the ! 78: i-list are believed. ! 79: If the super-block has been curdled ! 80: these words will have to be patched. ! 81: The normal output reports are suppressed. ! 82: .TP ! 83: .BI -b " number ... ! 84: Report each appearance of the selected block ! 85: .I numbers ! 86: in a file or on the free list. ! 87: .TP ! 88: .B -d ! 89: Report each duplicate block. ! 90: .TP ! 91: .B -m ! 92: Report each missing block. ! 93: .TP ! 94: .B -e ! 95: Print at most one diagnostic per file; ! 96: useful for badly curdled file systems. ! 97: .PP ! 98: .I Dcheck ! 99: reads the directories in each ! 100: .I filesystem ! 101: and compares ! 102: the link count in each inode with the number of directory ! 103: entries by which it is referenced. ! 104: .PP ! 105: .I Ncheck ! 106: generates a list of pathname vs i-number for each named ! 107: .I filesystem. ! 108: Other ! 109: .I ncheck ! 110: options are ! 111: .TP ! 112: .B -a ! 113: Report ! 114: .L . ! 115: and ! 116: .LR .. , ! 117: which are normally ignored. ! 118: .TP ! 119: .B -s ! 120: Report only special files, and files with ! 121: set-userid or set-groupid mode; ! 122: helpful in finding security breaches. ! 123: .SH "SEE ALSO" ! 124: .IR filsys (5), ! 125: .IR chuck (8), ! 126: .IR fsck (8), ! 127: .IR clri (8) ! 128: .SH DIAGNOSTICS ! 129: For duplicate blocks ! 130: and bad blocks (which lie outside the file system) ! 131: .I icheck ! 132: announces the difficulty, the i-number, and the kind of block involved. ! 133: If a read error is encountered, ! 134: the block number of the bad block is printed and ! 135: .I icheck ! 136: considers it to contain 0. ! 137: `Bad freeblock' means that ! 138: a block number outside the available space was encountered in the free list. ! 139: `Dups in free' ! 140: means that ! 141: blocks were found in the free list which ! 142: duplicate blocks either in some file or in the ! 143: earlier part of the free list. ! 144: .PP ! 145: When a file turns up for which the link-count and the number ! 146: of directory entries disagree, ! 147: .I dcheck ! 148: reports the relevant facts. ! 149: Allocated files which have 0 link-count and no entries are also ! 150: listed. ! 151: The only dangerous situation ! 152: occurs when there are more entries than links; ! 153: if entries are removed, ! 154: so the link-count drops to 0, ! 155: the remaining entries point to thin air. ! 156: They should be removed. ! 157: When there are more links than entries, or there is ! 158: an allocated file with neither links nor entries, ! 159: some disk space may be lost but the situation will not degenerate. ! 160: .PP ! 161: When the filesystem structure is improper, ! 162: .I ncheck ! 163: prints ! 164: .L ?? ! 165: to denote the `parent' of ! 166: a parentless file. ! 167: A pathname beginning with ! 168: .L ... ! 169: denotes a loop. ! 170: .SH BUGS ! 171: Extraneous diagnostics ! 172: may be produced if these commands are applied to ! 173: active file systems. ! 174: .br ! 175: They believe even preposterous super-blocks and ! 176: consequently can get core images. ! 177: .br ! 178: .I Ncheck's ! 179: report is in no useful ! 180: order, and probably should be sorted. ! 181: .I Ncheck ! 182: fails to report the root inode.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.