diff options
Diffstat (limited to 'upstream/opensuse-leap-15-6/man8/btrfs-scrub.8')
-rw-r--r-- | upstream/opensuse-leap-15-6/man8/btrfs-scrub.8 | 274 |
1 files changed, 274 insertions, 0 deletions
diff --git a/upstream/opensuse-leap-15-6/man8/btrfs-scrub.8 b/upstream/opensuse-leap-15-6/man8/btrfs-scrub.8 new file mode 100644 index 00000000..20556828 --- /dev/null +++ b/upstream/opensuse-leap-15-6/man8/btrfs-scrub.8 @@ -0,0 +1,274 @@ +.\" Man page generated from reStructuredText. +. +. +.nr rst2man-indent-level 0 +. +.de1 rstReportMargin +\\$1 \\n[an-margin] +level \\n[rst2man-indent-level] +level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] +- +\\n[rst2man-indent0] +\\n[rst2man-indent1] +\\n[rst2man-indent2] +.. +.de1 INDENT +.\" .rstReportMargin pre: +. RS \\$1 +. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] +. nr rst2man-indent-level +1 +.\" .rstReportMargin post: +.. +.de UNINDENT +. RE +.\" indent \\n[an-margin] +.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] +.nr rst2man-indent-level -1 +.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] +.in \\n[rst2man-indent\\n[rst2man-indent-level]]u +.. +.TH "BTRFS-SCRUB" "8" "Sep 13, 2023" "6.5.1" "BTRFS" +.SH NAME +btrfs-scrub \- scrub btrfs filesystem, verify block checksums +.SH SYNOPSIS +.sp +\fBbtrfs scrub\fP <subcommand> <args> +.SH DESCRIPTION +.sp +Scrub is a pass over all filesystem data and metadata and verifying the +checksums. If a valid copy is available (replicated block group profiles) then +the damaged one is repaired. All copies of the replicated profiles are validated. +.sp +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +Scrub is not a filesystem checker (fsck) and does not verify nor repair +structural damage in the filesystem. It really only checks checksums of data +and tree blocks, it doesn\(aqt ensure the content of tree blocks is valid and +consistent. There\(aqs some validation performed when metadata blocks are read +from disk but it\(aqs not extensive and cannot substitute full \fBbtrfs check\fP +run. +.UNINDENT +.UNINDENT +.sp +The user is supposed to run it manually or via a periodic system service. The +recommended period is a month but could be less. The estimated device bandwidth +utilization is about 80% on an idle filesystem. The IO priority class is by +default \fIidle\fP so background scrub should not significantly interfere with +normal filesystem operation. The IO scheduler set for the device(s) might not +support the priority classes though. +.sp +The scrubbing status is recorded in \fB/var/lib/btrfs/\fP in textual files named +\fIscrub.status.UUID\fP for a filesystem identified by the given UUID. (Progress +state is communicated through a named pipe in file \fIscrub.progress.UUID\fP in the +same directory.) The status file is updated every 5 seconds. A resumed scrub +will continue from the last saved position. +.sp +Scrub can be started only on a mounted filesystem, though it\(aqs possible to +scrub only a selected device. See \fI\%btrfs scrub start\fP for more. +.SH SUBCOMMAND +.INDENT 0.0 +.TP +.B cancel <path>|<device> +If a scrub is running on the filesystem identified by \fIpath\fP or +\fIdevice\fP, cancel it. +.sp +If a \fIdevice\fP is specified, the corresponding filesystem is found and +\fBbtrfs scrub cancel\fP behaves as if it was called on that filesystem. +The progress is saved in the status file so \fBbtrfs scrub resume\fP can +continue from the last position. +.TP +.B resume [\-BdqrR] <path>|<device> +Resume a cancelled or interrupted scrub on the filesystem identified by +\fIpath\fP or on a given \fIdevice\fP\&. The starting point is read from the +status file if it exists. +.sp +This does not start a new scrub if the last scrub finished successfully. +.sp +\fBOptions\fP +.sp +see \fBscrub start\fP\&. +.UNINDENT +.INDENT 0.0 +.TP +.B start [\-BdrRf] <path>|<device> +Start a scrub on all devices of the mounted filesystem identified by +\fIpath\fP or on a single \fIdevice\fP\&. If a scrub is already running, the new +one will not start. A device of an unmounted filesystem cannot be +scrubbed this way. +.sp +Without options, scrub is started as a background process. The +automatic repairs of damaged copies are performed by default for block +group profiles with redundancy. No\-repair can be enabled by option \fI\-r\fP\&. +.sp +\fBOptions\fP +.INDENT 7.0 +.TP +.B \-B +do not background and print scrub statistics when finished +.TP +.B \-d +print separate statistics for each device of the filesystem +(\fI\-B\fP only) at the end +.TP +.B \-r +run in read\-only mode, do not attempt to correct anything, can +be run on a read\-only filesystem +.TP +.B \-R +raw print mode, print full data instead of summary +.TP +.B \-f +force starting new scrub even if a scrub is already running, +this can useful when scrub status file is damaged and reports a +running scrub although it is not, but should not normally be +necessary +.UNINDENT +.sp +\fBDeprecated options\fP +.INDENT 7.0 +.TP +.BI \-c \ <ioprio_class> +set IO priority class (see \fBionice(1)\fP manpage) if the IO +scheduler configured for the device supports ionice. This is +not supported byg BFQ or Kyber but is \fInot\fP supported by +mq\-deadline. +.TP +.BI \-n \ <ioprio_classdata> +set IO priority classdata (see \fBionice(1)\fP manpage) +.TP +.B \-q +(deprecated) alias for global \fI\-q\fP option +.UNINDENT +.TP +.B status [options] <path>|<device> +.INDENT 7.0 +.INDENT 3.5 +Show status of a running scrub for the filesystem identified by \fIpath\fP +or for the specified \fIdevice\fP\&. +.sp +If no scrub is running, show statistics of the last finished or +cancelled scrub for that filesystem or device. +.sp +\fBOptions\fP +.INDENT 0.0 +.TP +.B \-d +print separate statistics for each device of the filesystem +.TP +.B \-R +print all raw statistics without postprocessing as returned by +the status ioctl +.TP +.B \-\-raw +print all numbers raw values in bytes without the \fIB\fP suffix +.TP +.B \-\-human\-readable +print human friendly numbers, base 1024, this is the default +.TP +.B \-\-iec +select the 1024 base for the following options, according to +the IEC standard +.TP +.B \-\-si +select the 1000 base for the following options, according to the SI standard +.TP +.B \-\-kbytes +show sizes in KiB, or kB with \-\-si +.TP +.B \-\-mbytes +show sizes in MiB, or MB with \-\-si +.TP +.B \-\-gbytes +show sizes in GiB, or GB with \-\-si +.TP +.B \-\-tbytes +show sizes in TiB, or TB with \-\-si +.UNINDENT +.sp +A status on a filesystem without any error looks like the following: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +# btrfs scrub start / +# btrfs scrub status / +UUID: 76fac721\-2294\-4f89\-a1af\-620cde7a1980 +Scrub started: Wed Apr 10 12:34:56 2023 +Status: running +Duration: 0:00:05 +Time left: 0:00:05 +ETA: Wed Apr 10 12:35:01 2023 +Total to scrub: 28.32GiB +Bytes scrubbed: 13.76GiB (48.59%) +Rate: 2.75GiB/s +Error summary: no errors found +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +With some errors found: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +Error summary: csum=72 + Corrected: 2 + Uncorrectable: 72 + Unverified: 0 +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 7.0 +.IP \(bu 2 +\fICorrected\fP \-\- number of bad blocks that were repaired from another copy +.IP \(bu 2 +\fIUncorrectable\fP \-\- errors detected at read time but not possible to repair from other copy +.IP \(bu 2 +\fIUnverified\fP \-\- transient errors, first read failed but a retry +succeeded, may be affected by lower layers that group or split IO requests +.IP \(bu 2 +\fIError summary\fP \-\- followed by a more detailed list of errors found +.INDENT 2.0 +.IP \(bu 2 +\fIcsum\fP \-\- checksum mismatch +.IP \(bu 2 +\fIsuper\fP \-\- super block errors, unless the error is fixed +immediately, the next commit will overwrite superblock +.IP \(bu 2 +\fIverify\fP \-\- metadata block header errors +.IP \(bu 2 +\fIread\fP \-\- blocks can\(aqt be read due to IO errors +.UNINDENT +.UNINDENT +.UNINDENT +.SH EXIT STATUS +.sp +\fBbtrfs scrub\fP returns a zero exit status if it succeeds. Non zero is +returned in case of failure: +.INDENT 0.0 +.TP +.B 1 +scrub couldn\(aqt be performed +.TP +.B 2 +there is nothing to resume +.TP +.B 3 +scrub found uncorrectable errors +.UNINDENT +.SH AVAILABILITY +.sp +\fBbtrfs\fP is part of btrfs\-progs. Please refer to the documentation at +\fI\%https://btrfs.readthedocs.io\fP\&. +.SH SEE ALSO +.sp +\fI\%mkfs.btrfs(8)\fP +.\" Generated by docutils manpage writer. +. |