How to Recover Data from a BtrFS Drive or RAID System
Tags: datascience
Published: 2021-06-09 06:59:59

From this article, you’ll learn how to recover data from a software BtrFS RAID on Linux. How to create a BtrFS RAID, replace a faulty disk, and how to recover lost data from a damaged disk array.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t7fnwt9upeqpzrq5vh0x.jpg)
Usually, mdadm and lvm are used to create a RAID system in Linux, and you can learn more about them from other videos on our channel.

{% youtube 8oBAVj9uuqQ %}

In addition to the tools described in this video, another helpful thing you can discover is the integrated RAID support in BtrFS file system. It uses its own means to build and manage disk arrays, so let’s have a closer look at all of its features.

## BtrFS file system
BtrFS is a modern file system with the integrated Copy on Write feature and RAID support. The core of this option is that old data does not have to be overwritten when copied. As a huge bonus, it makes file recovery after failures and crashes much easier, because an error or interruption during the copying process does not affect the previous condition of the files.

BtrFS stores metadata separately from the file system data, and its main advantage is that you can use various RAID levels for data and metadata. Another purpose of this journaled file system is to provide a more effective way to manage the storage system and improve data integrity features in Linux.

Before you can start using BtrFS, it is required to install several tools for file system management, by running the following command:

`sudo apt install btrfs-tools`

![sudo apt install btrfs-tools](https://hetmanrecovery.com/pic/blog/a260/01-linux.jpg)

## Create a mount point
You have to create a mount point directory for BtrFS file system before you can build a RAID array.

Let’s create the directory:

`Sudo mkdir –v /data`

Where “data” is the directory name.

![Sudo mkdir –v /data](https://hetmanrecovery.com/pic/blog/a260/02-linux.jpg)

Now let’s move on to create a disk array.

## How to create a RAID 5
When you create an array, you don’t have to divide drives into partitions, as this file system has no such requirement. You can unite both entire drives or specific partitions into a disk array, and even combine drives and partitions. For illustration, I’ll show you how to use five hard disks to create a RAID5 system.

To save the trouble of having to enter the root password every time, run the sudo -i command and type the password, and now you can run all commands as administrator.

![How to create a RAID 5](https://hetmanrecovery.com/pic/blog/a260/03-linux.jpg)

To build a RAID system, type this command in the terminal:

`sudo mkfs.btrfs -L data -m raid5 -d raid5 -f /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf`

where:

**L** is the mark or name of the file system

Index:

**d** sets the type of RAID5 for data.

**m** sets the type of RAID5 for metadata.

**f** forces creation of BtrFS even if any of the drives is already formatted into a different file system.

![Create a BTRFS RAID 5](https://hetmanrecovery.com/pic/blog/a260/04-linux.jpg)

See the [full article](https://hetmanrecovery.com/recovery_news/how-to-recover-data-from-btrfs-raid.htm) with all additional video tutorials. Also visit our [Youtube channel](https://www.youtube.com/channel/UCu-D9QnPsAPn7AtxL4HXLUg), there are over 400 video tutorials.