btrfs-progs: docs: mkfs, implications of DUP on devices
[platform/upstream/btrfs-progs.git] / Documentation / btrfs-scrub.asciidoc
1 btrfs-scrub(8)
2 ==============
3
4 NAME
5 ----
6 btrfs-scrub - scrub btrfs filesystem
7
8 SYNOPSIS
9 --------
10 *btrfs scrub* <subcommand> <args>
11
12 DESCRIPTION
13 -----------
14 *btrfs scrub* is used to scrub a btrfs filesystem, which will read all data
15 from all disks and verify checksums.
16
17 SUBCOMMAND
18 ----------
19 *cancel* <path>|<device>::
20 If a scrub is running on the filesystem identified by <path>, cancel it.
21 +
22 Progress is saved in the scrub progress file and scrubbing can be resumed later
23 using the scrub resume command.
24 If a <device> is given, the corresponding filesystem is found and
25 scrub cancel behaves as if it was called on that filesystem.
26
27 *resume* [-BdqrR] [-c <ioprio_class> -n <ioprio_classdata>] <path>|<device>::
28 Resume a canceled or interrupted scrub cycle on the filesystem identified by
29 <path> or on a given <device>.
30 +
31 Does not start a new scrub if the last scrub finished successfully.
32 +
33 `Options`
34 +
35 see *scrub start*.
36
37 *start* [-BdqrRf] [-c <ioprio_class> -n <ioprio_classdata>] <path>|<device>::
38 Start a scrub on all devices of the filesystem identified by <path> or on
39 a single <device>. If a scrub is already running, the new one fails.
40 +
41 Without options, scrub is started as a background process.
42 Progress can be obtained with the *scrub status* command. Scrubbing
43 involves reading all data from all disks and verifying checksums. Errors are
44 corrected along the way if possible.
45 +
46 The default IO priority of scrub is the idle class. The priority can be
47 configured similar to the `ionice`(1) syntax using '-c' and '-n' options.
48 +
49 `Options`
50 +
51 -B::::
52 Do not background and print scrub statistics when finished.
53 -d::::
54 Print separate statistics for each device of the filesystem (-B only).
55 -q::::
56 Quiet. Omit error messages and statistics.
57 -r::::
58 Read only mode. Do not attempt to correct anything.
59 -R::::
60 Raw print mode. Print full data instead of summary.
61 -c <ioprio_class>::::
62 Set IO priority class (see `ionice`(1) manpage).
63 -n <ioprio_classdata>::::
64 Set IO priority classdata (see `ionice`(1) manpage).
65 -f::::
66 Force starting new scrub even if a scrub is already running.
67 This is useful when scrub stat record file is damaged.
68
69 *status* [-d] <path>|<device>::
70 Show status of a running scrub for the filesystem identified by <path> or
71 for the specified <device>.
72 +
73 If no scrub is running, show statistics of the last finished or canceled scrub
74 for that filesystem or device.
75 +
76 `Options`
77 +
78 -d::::
79 Print separate statistics for each device of the filesystem.
80
81 EXIT STATUS
82 -----------
83 *btrfs scrub* returns a zero exit status if it succeeds. Non zero is
84 returned in case of failure.
85
86 AVAILABILITY
87 ------------
88 *btrfs* is part of btrfs-progs.
89 Please refer to the btrfs wiki http://btrfs.wiki.kernel.org for
90 further details.
91
92 SEE ALSO
93 --------
94 `mkfs.btrfs`(8),