|
|
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.