btrfs-rescue - Recover a damaged btrfs filesystem


   btrfs rescue <subcommand> <args>


   btrfs rescue is used to try to recover a damaged btrfs filesystem.


   chunk-recover [options] <device>
       Recover the chunk tree by scanning the devices


           assume an answer of yes to all questions.

           verbose mode.


       Since chunk-recover will scan the whole device, it will be VERY
       slow especially executed on a large device.

   super-recover [options] <device>
       Recover bad superblocks from good copies.


           assume an answer of yes to all questions.

           verbose mode.

   zero-log <device>
       clear the filesystem log tree

   This command will clear the filesystem log tree. This may fix a
   specific set of problem when the filesystem mount fails due to the log
   replay. See below for sample stacktraces that may show up in system

   The common case where this happens has been fixed a long time ago, so
   it is unlikely that you will see this particular problem, but the
   utility is kept around.

       clearing the log may lead to loss of changes that were made since
       the last transaction commit. This may be up to 30 seconds (default
       commit period) or less if the commit was implied by other
       filesystem activity.

   One can determine whether zero-log is needed according to the kernel

       ? replay_one_dir_item+0xb5/0xb5 [btrfs]
       ? walk_log_tree+0x9c/0x19d [btrfs]
       ? btrfs_read_fs_root_no_radix+0x169/0x1a1 [btrfs]
       ? btrfs_recover_log_trees+0x195/0x29c [btrfs]
       ? replay_one_dir_item+0xb5/0xb5 [btrfs]
       ? btree_read_extent_buffer_pages+0x76/0xbc [btrfs]
       ? open_ctree+0xff6/0x132c [btrfs]

   If the errors are like above, then zero-log should be used to clear the
   log and the filesystem may be mounted normally again. The keywords to
   look for are open_ctree which says that it’s during mount and function
   names that contain replay, recover or log_tree.


   btrfs rescue returns a zero exit status if it succeeds. Non zero is
   returned in case of failure.


   btrfs is part of btrfs-progs. Please refer to the btrfs wiki for further details.


   mkfs.btrfs(8), btrfs-scrub(8), btrfs-check(8)

More Linux Commands

Locale::Maketext::GutsLoader(3pm) - Deprecated module to loa
Previously Locale::Maketext::Guts performed some magic to load Locale::Maketext when utf8 was unavailable. The subs this module provided were merged back into L

__setfpucw(3) - set FPU control word on i386 architecture (o
__setfpucw() transfers control_word to the registers of the FPU (floating-point unit) on the i386 architecture. This was used to control floating-point precisio

wins_wch(3ncurses) - insert a complex character and renditio
These routines, insert the complex character wch with rendition before the character under the cursor. All characters to the right of the cursor are moved one s

unix_chkpwd(8) - Helper binary that verifies the password of
unix_chkpwd is a helper program for the pam_unix module that verifies the password of the current user. It also checks password and account expiration dates in

inndf(8) - Report free disk, inodes, and overview informatio
inndf was originally a replacement for df | awk in innwatch.ctl(5) and innstat(8), and now also reports various other usage information about INN s storage that

sane-mustek_pp(5) - SANE backend for Mustek parallel port fl
The sane-mustek_pp library implements a SANE (Scanner Access Now Easy) backend that provides access to Mustek parallel port flatbed scanners and OEM versions. T

ber_get_enum(3) - OpenLDAP LBER simplified Basic Encoding Ru
These routines provide a subroutine interface to a simplified implementation of the Basic Encoding Rules of ASN.1. The version of BER these routines support is

FileHandle(3pm) - supply object methods for filehandles.....
NOTE: This class is now a front-end to the IO::* classes. FileHandle::new creates a FileHandle, which is a reference to a newly created symbol (see the Symbol p

redland(3) - Resource Description Framework (RDF) Library...
redland is a library providing support for the Resource Description Framework ( RDF ) written in ANSI C with APIs in several other languages. This manual page l

usb_modeswitch(1) - switch mode of "multi-state" USB devices
Several new USB devices have their proprietary Windows drivers onboard, most of them WWAN and WLAN dongles. When plugged in for the first time, they act like a

btrfs-send(8) send data of subvolume(s) to stdout file......
Sends the subvolume(s) specified by &lt;subvol&gt; to stdout. By default, this will send the whole subvolume. To do an incremental send, use -p &lt;parent&gt;. If you want

s2p(1) - a stream editor (Commands - Linux manual page).....
A stream editor reads the input stream consisting of the specified files (or standard input, if none are given), processes is line by line by applying a script

We can't live, work or learn in freedom unless the software we use is free.