From 464df1d5e5ab1322e2dd0a7796939fff1aeefa9a Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 17:49:25 +0200 Subject: Adding upstream version 1.47.0. Signed-off-by: Daniel Baumann --- e2fsck/e2fsck.8.in | 509 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 509 insertions(+) create mode 100644 e2fsck/e2fsck.8.in (limited to 'e2fsck/e2fsck.8.in') diff --git a/e2fsck/e2fsck.8.in b/e2fsck/e2fsck.8.in new file mode 100644 index 0000000..dc6a585 --- /dev/null +++ b/e2fsck/e2fsck.8.in @@ -0,0 +1,509 @@ +.\" -*- nroff -*- +.\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved. +.\" This file may be copied under the terms of the GNU Public License. +.\" +.TH E2FSCK 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" +.SH NAME +e2fsck \- check a Linux ext2/ext3/ext4 file system +.SH SYNOPSIS +.B e2fsck +[ +.B \-pacnyrdfkvtDFV +] +[ +.B \-b +.I superblock +] +[ +.B \-B +.I blocksize +] +[ +.BR \-l | \-L +.I bad_blocks_file +] +[ +.B \-C +.I fd +] +@JDEV@[ +@JDEV@.B \-j +@JDEV@.I external-journal +@JDEV@] +[ +.B \-E +.I extended_options +] +[ +.B \-z +.I undo_file +] +.I device +.SH DESCRIPTION +.B e2fsck +is used to check the ext2/ext3/ext4 family of file systems. +For ext3 and ext4 file systems that use a journal, if the system has been +shut down uncleanly without any errors, normally, after replaying the +committed transactions in the journal, the file system should be +marked as clean. Hence, for file systems that use journaling, +.B e2fsck +will normally replay the journal and exit, unless its superblock +indicates that further checking is required. +.PP +.I device +is a block device (e.g., +.IR /dev/sdc1 ) +or file containing the file system. +.PP +Note that in general it is not safe to run +.B e2fsck +on mounted file systems. The only exception is if the +.B \-n +option is specified, and +.BR \-c , +.BR \-l , +or +.B -L +options are +.I not +specified. However, even if it is safe to do so, the results printed by +.B e2fsck +are not valid if the file system is mounted. If +.B e2fsck +asks whether or not you should check a file system which is mounted, +the only correct answer is ``no''. Only experts who really know what +they are doing should consider answering this question in any other way. +.PP +If +.B e2fsck +is run in interactive mode (meaning that none of +.BR \-y , +.BR \-n , +or +.BR \-p +are specified), the program will ask the user to fix each problem found in the +file system. A response of 'y' will fix the error; 'n' will leave the error +unfixed; and 'a' will fix the problem and all subsequent problems; pressing +Enter will proceed with the default response, which is printed before the +question mark. Pressing Control-C terminates e2fsck immediately. +.SH OPTIONS +.TP +.B \-a +This option does the same thing as the +.B \-p +option. It is provided for backwards compatibility only; it is +suggested that people use +.B \-p +option whenever possible. +.TP +.BI \-b " superblock" +Instead of using the normal superblock, use an alternative superblock +specified by +.IR superblock . +This option is normally used when the primary superblock has been +corrupted. The location of backup superblocks is dependent on the +file system's blocksize, the number of blocks per group, and features +such as +.BR sparse_super . +.IP +Additional backup superblocks can be determined by using the +.B mke2fs +program using the +.B \-n +option to print out where the superblocks exist, supposing +.B mke2fs +is supplied with arguments that are consistent with the file system's layout +(e.g. blocksize, blocks per group, +.BR sparse_super , +etc.). +.IP +If an alternative superblock is specified and +the file system is not opened read-only, e2fsck will make sure that the +primary superblock is updated appropriately upon completion of the +file system check. +.TP +.BI \-B " blocksize" +Normally, +.B e2fsck +will search for the superblock at various different +block sizes in an attempt to find the appropriate block size. +This search can be fooled in some cases. This option forces +.B e2fsck +to only try locating the superblock at a particular blocksize. +If the superblock is not found, +.B e2fsck +will terminate with a fatal error. +.TP +.B \-c +This option causes +.B e2fsck +to use +.BR badblocks (8) +program to do a read-only scan of the device in order to find any bad +blocks. If any bad blocks are found, they are added to the bad block +inode to prevent them from being allocated to a file or directory. If +this option is specified twice, then the bad block scan will be done +using a non-destructive read-write test. +.TP +.BI \-C " fd" +This option causes +.B e2fsck +to write completion information to the specified file descriptor +so that the progress of the file system +check can be monitored. This option is typically used by programs +which are running +.BR e2fsck . +If the file descriptor number is negative, then absolute value of +the file descriptor will be used, and the progress information will be +suppressed initially. It can later be enabled by sending the +.B e2fsck +process a SIGUSR1 signal. +If the file descriptor specified is 0, +.B e2fsck +will print a completion bar as it goes about its business. This requires +that e2fsck is running on a video console or terminal. +.TP +.B \-d +Print debugging output (useless unless you are debugging +.BR e2fsck ). +.TP +.B \-D +Optimize directories in file system. This option causes e2fsck to +try to optimize all directories, either by re-indexing them if the +file system supports directory indexing, or by sorting and compressing +directories for smaller directories, or for file systems using +traditional linear directories. +.IP +Even without the +.B \-D +option, +.B e2fsck +may sometimes optimize a few directories --- for example, if +directory indexing is enabled and a directory is not indexed and would +benefit from being indexed, or if the index structures are corrupted +and need to be rebuilt. The +.B \-D +option forces all directories in the file system to be optimized. This can +sometimes make them a little smaller and slightly faster to search, but +in practice, you should rarely need to use this option. +.IP +The +.B \-D +option will detect directory entries with duplicate names in a single +directory, which e2fsck normally does not enforce for performance reasons. +.TP +.BI \-E " extended_options" +Set e2fsck extended options. Extended options are comma +separated, and may take an argument using the equals ('=') sign. The +following options are supported: +.RS 1.2i +.TP +.BI ea_ver= extended_attribute_version +Set the version of the extended attribute blocks which +.B e2fsck +will require while checking the file system. The version number may +be 1 or 2. The default extended attribute version format is 2. +.TP +.BI journal_only +Only replay the journal if required, but do not perform any further checks +or repairs. +.TP +.BI fragcheck +During pass 1, print a detailed report of any discontiguous blocks for +files in the file system. +.TP +.BI discard +Attempt to discard free blocks and unused inode blocks after the full +file system check (discarding blocks is useful on solid state devices and sparse +/ thin-provisioned storage). Note that discard is done in pass 5 AFTER the +file system has been fully checked and only if it does not contain recognizable +errors. However there might be cases where +.B e2fsck +does not fully recognize a problem and hence in this case this +option may prevent you from further manual data recovery. +.TP +.BI nodiscard +Do not attempt to discard free blocks and unused inode blocks. This option is +exactly the opposite of discard option. This is set as default. +.TP +.BI no_optimize_extents +Do not offer to optimize the extent tree by eliminating unnecessary +width or depth. This can also be enabled in the options section of +.BR /etc/e2fsck.conf . +.TP +.BI optimize_extents +Offer to optimize the extent tree by eliminating unnecessary +width or depth. This is the default unless otherwise specified in +.BR /etc/e2fsck.conf . +.TP +.BI inode_count_fullmap +Trade off using memory for speed when checking a file system with a +large number of hard-linked files. The amount of memory required is +proportional to the number of inodes in the file system. For large file +systems, this can be gigabytes of memory. (For example, a 40TB file system +with 2.8 billion inodes will consume an additional 5.7 GB memory if this +optimization is enabled.) This optimization can also be enabled in the +options section of +.BR /etc/e2fsck.conf . +.TP +.BI no_inode_count_fullmap +Disable the +.B inode_count_fullmap +optimization. This is the default unless otherwise specified in +.BR /etc/e2fsck.conf . +.TP +.BI readahead_kb +Use this many KiB of memory to pre-fetch metadata in the hopes of reducing +e2fsck runtime. By default, this is set to the size of two block groups' inode +tables (typically 4MiB on a regular ext4 file system); if this amount is more +than 1/50th of total physical memory, readahead is disabled. Set this to zero +to disable readahead entirely. +.TP +.BI bmap2extent +Convert block-mapped files to extent-mapped files. +.TP +.BI fixes_only +Only fix damaged metadata; do not optimize htree directories or compress +extent trees. This option is incompatible with the -D and -E bmap2extent +options. +.TP +.BI check_encoding +Force verification of encoded filenames in case-insensitive directories. +This is the default mode if the file system has the strict flag enabled. +.TP +.BI unshare_blocks +If the file system has shared blocks, with the shared blocks read-only feature +enabled, then this will unshare all shared blocks and unset the read-only +feature bit. If there is not enough free space then the operation will fail. +If the file system does not have the read-only feature bit, but has shared +blocks anyway, then this option will have no effect. Note when using this +option, if there is no free space to clone blocks, there is no prompt to +delete files and instead the operation will fail. +.IP +Note that unshare_blocks implies the "-f" option to ensure that all passes +are run. Additionally, if "-n" is also specified, e2fsck will simulate trying +to allocate enough space to deduplicate. If this fails, the exit code will +be non-zero. +.RE +.TP +.B \-f +Force checking even if the file system seems clean. +.TP +.B \-F +Flush the file system device's buffer caches before beginning. Only +really useful for doing +.B e2fsck +time trials. +@JDEV@.TP +@JDEV@.BI \-j " external-journal" +@JDEV@Set the pathname where the external-journal for this file system can be +@JDEV@found. +.TP +.BI \-k +When combined with the +.B \-c +option, any existing bad blocks in the bad blocks list are preserved, +and any new bad blocks found by running +.BR badblocks (8) +will be added to the existing bad blocks list. +.TP +.BI \-l " filename" +Add the block numbers listed in the file specified by +.I filename +to the list of bad blocks. The format of this file is the same as the +one generated by the +.BR badblocks (8) +program. Note that the block numbers are based on the blocksize +of the file system. Hence, +.BR badblocks (8) +must be given the blocksize of the file system in order to obtain correct +results. As a result, it is much simpler and safer to use the +.B -c +option to +.BR e2fsck , +since it will assure that the correct parameters are passed to the +.B badblocks +program. +.TP +.BI \-L " filename" +Set the bad blocks list to be the list of blocks specified by +.IR filename . +(This option is the same as the +.B \-l +option, except the bad blocks list is cleared before the blocks listed +in the file are added to the bad blocks list.) +.TP +.B \-n +Open the file system read-only, and assume an answer of `no' to all +questions. Allows +.B e2fsck +to be used non-interactively. This option +may not be specified at the same time as the +.B \-p +or +.B \-y +options. +.TP +.B \-p +Automatically repair ("preen") the file system. This option will cause +.B e2fsck +to automatically +fix any file system problems that can be safely fixed without human +intervention. If +.B e2fsck +discovers a problem which may require the system administrator +to take additional corrective action, +.B e2fsck +will print a description of the problem and then exit with the value 4 +logically or'ed into the exit code. (See the \fBEXIT CODE\fR section.) +This option is normally used by the system's boot scripts. It may not +be specified at the same time as the +.B \-n +or +.B \-y +options. +.TP +.B \-r +This option does nothing at all; it is provided only for backwards +compatibility. +.TP +.B \-t +Print timing statistics for +.BR e2fsck . +If this option is used twice, additional timing statistics are printed +on a pass by pass basis. +.TP +.B \-v +Verbose mode. +.TP +.B \-V +Print version information and exit. +.TP +.B \-y +Assume an answer of `yes' to all questions; allows +.B e2fsck +to be used non-interactively. This option +may not be specified at the same time as the +.B \-n +or +.B \-p +options. +.TP +.BI \-z " undo_file" +Before overwriting a file system block, write the old contents of the block to +an undo file. This undo file can be used with e2undo(8) to restore the old +contents of the file system should something go wrong. If the empty string is +passed as the undo_file argument, the undo file will be written to a file named +e2fsck-\fIdevice\fR.e2undo in the directory specified via the +\fIE2FSPROGS_UNDO_DIR\fR environment variable. + +WARNING: The undo file cannot be used to recover from a power or system crash. +.SH EXIT CODE +The exit code returned by +.B e2fsck +is the sum of the following conditions: +.br +\ 0\ \-\ No errors +.br +\ 1\ \-\ File system errors corrected +.br +\ 2\ \-\ File system errors corrected, system should +.br +\ \ \ \ be rebooted +.br +\ 4\ \-\ File system errors left uncorrected +.br +\ 8\ \-\ Operational error +.br +\ 16\ \-\ Usage or syntax error +.br +\ 32\ \-\ E2fsck canceled by user request +.br +\ 128\ \-\ Shared library error +.br +.SH SIGNALS +The following signals have the following effect when sent to +.BR e2fsck . +.TP +.B SIGUSR1 +This signal causes +.B e2fsck +to start displaying a completion bar or emitting progress information. +(See discussion of the +.B \-C +option.) +.TP +.B SIGUSR2 +This signal causes +.B e2fsck +to stop displaying a completion bar or emitting progress information. +.SH REPORTING BUGS +Almost any piece of software will have bugs. If you manage to find a +file system which causes +.B e2fsck +to crash, or which +.B e2fsck +is unable to repair, please report it to the author. +.PP +Please include as much information as possible in your bug report. +Ideally, include a complete transcript of the +.B e2fsck +run, so I can see exactly what error messages are displayed. (Make sure +the messages printed by +.B e2fsck +are in English; if your system has been +configured so that +.BR e2fsck 's +messages have been translated into another language, please set the the +.B LC_ALL +environment variable to +.B C +so that the transcript of e2fsck's output will be useful to me.) +If you +have a writable file system where the transcript can be stored, the +.BR script (1) +program is a handy way to save the output of +.B e2fsck +to a file. +.PP +It is also useful to send the output of +.BR dumpe2fs (8). +If a specific inode or inodes seems to be giving +.B e2fsck +trouble, try running the +.BR debugfs (8) +command and send the output of the +.BR stat (1u) +command run on the relevant inode(s). If the inode is a directory, the +.B debugfs +.I dump +command will allow you to extract the contents of the directory inode, +which can sent to me after being first run through +.BR uuencode (1). +The most useful data you can send to help reproduce +the bug is a compressed raw image dump of the file system, generated using +.BR e2image (8). +See the +.BR e2image (8) +man page for more details. +.PP +Always include the full version string which +.B e2fsck +displays when it is run, so I know which version you are running. +.SH ENVIRONMENT +.TP +.BI E2FSCK_CONFIG +Determines the location of the configuration file (see +.BR e2fsck.conf (5)). +.SH AUTHOR +This version of +.B e2fsck +was written by Theodore Ts'o . +.SH SEE ALSO +.BR e2fsck.conf (5), +.BR badblocks (8), +.BR dumpe2fs (8), +.BR debugfs (8), +.BR e2image (8), +.BR mke2fs (8), +.BR tune2fs (8) -- cgit v1.2.3