| .\" -*- nroff -*- |
| .\" Copyright 1996-2004 Hans Reiser. |
| .\" |
| .TH REISERFSCK 8 "February 2004" "Reiserfsprogs-3.6.19" |
| .SH NAME |
| reiserfsck \- The checking tool for the ReiserFS filesystem. |
| .SH SYNOPSIS |
| .B reiserfsck |
| [ \fB-afprVy\fR ] |
| [ \fB--rebuild-sb\fR | \fB--check\fR | \fB--fix-fixable\fR |
| | \fB--rebuild-tree\fR | \fB--clean-attributes\fR ] |
| .\" [ \fB-i\fR | \fB--interactive\fR ] |
| [ \fB-j\fR | \fB--journal\fR \fIdevice\fR ] |
| [ \fB-z\fR | \fB--adjust-size\fR ] |
| [ \fB-n\fR | \fB--nolog\fR ] |
| [ \fB-B\fR | \fB--badblocks \fIfile\fR ] |
| [ \fB-l\fR | \fB--logfile \fIfile\fR ] |
| [ \fB-q\fR | \fB--quiet\fR ] |
| [ \fB-y\fR | \fB--yes\fR ] |
| .\" [ \fB-b\fR | \fB--scan-marked-in-bitmap \fIbitmap-filename\fR ] |
| .\" [ \fB-h\fR | \fB--hash \fIhash-name\fR ] |
| .\" [ \fB-g\fR | \fB--background\fR ] |
| [ \fB-S\fR | \fB--scan-whole-partition\fR ] |
| [ \fB--no-journal-available\fR ] |
| .I device |
| .SH DESCRIPTION |
| \fBReiserfsck\fR searches for a Reiserfs filesystem on a device, replays |
| any necessary transactions, and either checks or repairs the file system. |
| .TP |
| .I device |
| is the special file corresponding to a device or to a partition (e.g |
| /dev/hdXX for an IDE disk partition or /dev/sdXX for a SCSI disk partition). |
| .SH OPTIONS |
| .TP |
| .B --rebuild-sb |
| This option recovers the superblock on a Reiserfs partition. Normally you |
| only need this option if mount reports "read_super_block: can't find |
| a reiserfs file system" and you are sure that a Reiserfs file system is |
| there. But remember that if you have used some partition editor program and |
| now you cannot find a filesystem, probably something has gone wrong while |
| repartitioning and the start of the partition has been changed. If so, |
| instead of rebuilding the super block on a wrong place you should find the |
| correct start of the partition first. |
| .TP |
| .B --check |
| This default action checks filesystem consistency and reports, but |
| does not repair any corruption that it finds. This option may be |
| used on a read-only file system mount. |
| .TP |
| .B --fix-fixable |
| This option recovers certain kinds of corruption that do not require |
| rebuilding the entire file system tree (\fB--rebuild-tree\fR). Normally |
| you only need this option if the \fB--check\fR option reports |
| "corruption that can be fixed with \fB--fix-fixable\fR". This includes: |
| zeroing invalid data-block pointers, correcting st_size and st_blocks |
| for directories, and deleting invalid directory entries. |
| .TP |
| .B --rebuild-tree |
| This option rebuilds the entire filesystem tree using leaf nodes |
| found on the device. Normally you only need this option if the |
| \fBreiserfsck --check\fR reports "Running with \fB--rebuild-tree\fR |
| is required". You are strongly encouraged to make a backup copy |
| of the whole partition before attempting the \fB--rebuild-tree\fR |
| option. Once \fBreiserfsck --rebuild-tree\fR is started it must |
| finish its work (and you should not interrupt it), otherwise the |
| filesystem will be left in the unmountable state to avoid subsequent |
| data corruptions. |
| .TP |
| .B --clean-attributes |
| This option cleans reserved fields of Stat-Data items. There were days when |
| there were no extended attributes in reiserfs. When they were implemented old |
| partitions needed to be cleaned first -- reiserfs code in the kernel did not |
| care about not used fields in its strutures. Thus if you have used one of the |
| old (pre-attrbutes) kernels with a ReiserFS filesystem and you want to use |
| extented attribues there, you should clean the filesystem first. |
| .TP |
| .B \fB--journal \fIdevice \fR, \fB-j \fIdevice \fR |
| This option supplies the device name of the current file system journal. |
| This option is required when the journal resides on a separate device |
| from the main data device (although it can be avoided with the expert |
| option \fB--no-journal-available\fR). |
| .TP |
| .\" .B --interactive, -i |
| .\" This makes \fBreiserfsck\fR to stop after each pass completed. |
| .\" .TP |
| .B --adjust-size, -z |
| This option causes \fBreiserfsck\fR to correct file sizes that |
| are larger than the offset of the last discovered byte. This |
| implies that holes at the end of a file will be removed. File |
| sizes that are smaller than the offset of the last discovered |
| byte are corrected by \fB--fix-fixable\fR. |
| .TP |
| \fB--badblocks \fIfile\fR, \fB-B \fI file\fR |
| This option sets the badblock list to be the list of blocks specified in |
| the given `file`. The filesystem badblock list is cleared before the new |
| list is added. It can be used with \fB--fix-fixable\fR to fix the list of |
| badblocks (see \fBdebugreiserfs -B\fR). If the device has bad blocks, every |
| time it must be given with the \fB--rebuild-tree\fR option. |
| .TP |
| \fB--logfile \fIfile\fR, \fB-l \fI file\fR |
| This option causes \fBreiserfsck\fR to report any corruption it finds |
| to the specified log file rather than to stderr. |
| .TP |
| .B --nolog, -n |
| This option prevents \fBreiserfsck\fR from reporting any kinds of corruption. |
| .TP |
| .B --quiet, -q |
| This option prevents \fBreiserfsck\fR from reporting its rate of progress. |
| .TP |
| .B --yes, -y |
| This option inhibits \fBreiserfsck\fR from asking you for confirmation after |
| telling you what it is going to do. It will assuem you confirm. For safety, |
| it does not work with the \fB--rebuild-tree\fR option. |
| .TP |
| \fB-a\fR, \fB-p\fR |
| These options are usually passed by fsck -A during the automatic checking |
| of those partitions listed in /etc/fstab. These options cause \fBreiserfsck\fR |
| to print some information about the specified filesystem, to check if error |
| flags in the superblock are set and to do some light-weight checks. If these |
| checks reveal a corruption or the flag indicating a (possibly fixable) |
| corruption is found set in the superblock, then \fBreiserfsck\fR switches |
| to the fix-fixable mode. If the flag indicating a fatal corruption is found |
| set in the superblock, then \fBreiserfsck\fR finishes with an error. |
| .TP |
| .B -V |
| This option prints the reiserfsprogs version and then exit. |
| .TP |
| \fB-r\fR, \fB-f\fR |
| These options are not yet operational and therefore are ignored. |
| .SH EXPERT OPTIONS |
| DO NOT USE THESE OPTIONS UNLESS YOU KNOW WHAT YOU ARE DOING. |
| WE ARE NOT RESPONSIBLE IF YOU LOSE DATA AS A RESULT OF THESE |
| OPTIONS. |
| .TP |
| .B \fB\--no-journal-available\fR |
| This option allows \fBreiserfsck\fR to proceed when the journal device is |
| not available. This option has no effect when the journal is located on |
| the main data device. NOTE: after this operation you must use \fBreiserfstune\fR |
| to specify a new journal device. |
| .TP |
| .B --scan-whole-partition, -S |
| This option causes \fB--rebuild-tree\fR to scan the whole partition but not only |
| the used space on the partition. |
| .SH AN EXAMPLE OF USING reiserfsck |
| 1. You think something may be wrong with a reiserfs partition on /dev/hda1 |
| or you would just like to perform a periodic disk check. |
| |
| 2. Run \fBreiserfsck --check --logfile check.log /dev/hda1\fR. If \fBreiserfsck |
| --check\fR exits with status 0 it means no errors were discovered. |
| |
| 3. If \fBreiserfsck --check\fR exits with status 1 (and reports about fixable |
| corruptions) it means that you should run \fBreiserfsck --fix-fixable --logfile |
| fixable.log /dev/hda1\fR. |
| |
| 4. If \fBreiserfsck --check\fR exits with status 2 (and reports about fatal |
| corruptions) it means that you need to run \fBreiserfsck --rebuild-tree\fR. |
| If \fBreiserfsck --check\fR fails in some way you should also run \fBreiserfsck |
| --rebuild-tree\fR, but we also encourage you to submit this as a bug report. |
| |
| 5. Before running \fBreiserfsck --rebuild-tree\fR, please make a backup of |
| the whole partition before proceeding. Then run \fBreiserfsck --rebuild-tree |
| --logfile rebuild.log /dev/hda1\fR. |
| |
| 6. If the \fBreiserfsck --rebuild-tree\fR step fails or does not recover what |
| you expected, please submit this as a bug report. Try to provide as much |
| information as possible including your platform and Linux kernel version. We |
| will try to help solve the problem. |
| .SH EXIT CODES |
| \fBreiserfsck\fR uses the following exit codes: |
| .br |
| \ \fI0\fR \-\ No errors. |
| .br |
| \ \fI1\fR \-\ File system errors corrected. |
| .br |
| \ \fI2\fR \-\ Reboot is needed. |
| .br |
| \ \fI4\fR \-\ File system fatal errors left uncorrected, |
| .br |
| \ \fBreiserfsck --rebuild-tree\fR needs to be launched. |
| .br |
| \ \fI6\fR \-\ File system fixable errors left uncorrected, |
| .br |
| \ \fBreiserfsck --fix-fixable\fR needs to be launched. |
| .br |
| \ \fI8\fR \-\ Operational error. |
| .br |
| \ \fI16\fR \-\ Usage or syntax error. |
| .br |
| .SH AUTHOR |
| This version of \fBreiserfsck\fR has been written by Vitaly Fertman <vitaly@namesys.com>. |
| .SH BUGS |
| Please report bugs to the ReiserFS developers <reiserfs-dev@namesys.com>, providing |
| as much information as possible--your hardware, kernel, patches, settings, all printed |
| messages, the logfile; check the syslog file for any related information. |
| .SH TODO |
| Faster recovering, signal handling. |
| .SH SEE ALSO |
| .BR mkreiserfs (8), |
| .BR reiserfstune (8) |
| .BR resize_reiserfs (8), |
| .BR debugreiserfs (8), |