Need help?

Our experts have had an average response time of 13.52 minutes in October 2021 to fix urgent issues.

We will keep your servers stable, secure, and fast at all times for one fixed price.

Resize btrfs File System | A quick guide

by | Nov 14, 2021

Resize btrfs File System with this handy guide from the experts at Bobcares

At Bobcares, we offer solutions for every query, big and small, as a part of our Server Management Service.

Let’s take a look at how our Support Team recently helped out a customer with a workaround solution to resize their btrfs File System.

How to resize the btrfs file system

Although it is not possible to resize a btrfs file system, we can still resize each of the devices it uses. This stands true even if there is only one device in use. According to our Support Team, manually resizing the devices enables us to achieve the desired result.

Before we dive into the resizing process, our Support Techs would like to point out that the unit size is not size specific.

Furthermore, the command accepts ‘k’, ‘m’, and ‘g; for kilobytes, megabytes, and gigabytes respectively. It does not accept ‘t’ or ‘p’ for terabytes and petabytes.

How to enlarge a btrfs file system

Here is the command to enlarge the file system on a single system:

# btrfs filesystem resize amount mount-point

For instance:

# btrfs filesystem resize +200M /btrfssingle 
Resize '/btrfssingle' of '+200M'

In order to resize a multi-device file system, we have to specify the device to be enlarged. According to our Support Engineers, we have to first show all the devices with the btrfs file system at the specified mount point:

# btrfs filesystem show mount-point

For instance:

# btrfs filesystem show /btrfstest 
Label: none uuid: 755b41b7-7a20-4a24-abb3-45fdbed1ab39 
	Total devices 4 FS bytes used 192.00KiB 
	devid 1 size 1.00GiB used 224.75MiB path /dev/vdc 
	devid 2 size 524.00MiB used 204.75MiB path /dev/vdd 
	devid 3 size 1.00GiB used 8.00MiB path /dev/vde 
	devid 4 size 1.00GiB used 8.00MiB path /dev/vdf 
Btrfs v3.16.2

Once we identify the devid of the specific device we are enlarging, we will execute this command:

# btrfs filesystem resize devid:amount mount-point

For instance:

# btrfs filesystem resize 2:+200M /btrfstest 
Resize '/btrfstest/' of '2:+200M'

Moreover, we can set amount as max instead of a specific amount. This uses up the remaining free space available on the device.

How to shrink a btrfs file system

We will use the following command in order to shrink the file system on a single device:

# btrfs filesystem resize amount mount-point

For instance:

# btrfs filesystem resize -200M /btrfssingle 
Resize '/btrfssingle' of '-200M'

Before shrinking a multi-device file system, we have to specify the device to be shrunk. In other words, first, we will show all the devices with btrfs file system at the specified mount point as seen below:

# btrfs filesystem show mount-point

For instance:

# btrfs filesystem show /btrfstest 
Label: none uuid: 755b41b7-7a20-4a24-abb3-45fdbed1ab39 
	Total devices 4 FS bytes used 192.00KiB 
	devid 1 size 1.00GiB used 224.75MiB path /dev/vdc 
	devid 2 size 524.00MiB used 204.75MiB path /dev/vdd 
	devid 3 size 1.00GiB used 8.00MiB path /dev/vde 
	devid 4 size 1.00GiB used 8.00MiB path /dev/vdf 
Btrfs v3.16.2

Once we identify the device to be shrunk, we will use this command:

# btrfs filesystem resize devid:amount mount-point

For instance:

# btrfs filesystem resize 2:-200M /btrfstest 
Resize '/btrfstest' of '2:-200M'

How to set the file system size

According to our Support Team, the following command comes in handy in setting the file system to a certain size on a specific device:

# btrfs filesystem resize amount mount-point

For instance:

# btrfs filesystem resize 700M /btrfssingle 
Resize '/btrfssingle' of '700M'

Before setting the file system size in a multi-device file system, we have to specify the device. In other words, first, we will show all the devices with the btrfs file system at the specified mount point as seen below:

# btrfs filesystem show mount-point
For instance:
# btrfs filesystem show /btrfstest 
Label: none uuid: 755b41b7-7a20-4a24-abb3-45fdbed1ab39 
	Total devices 4 FS bytes used 192.00KiB 
	devid 1 size 1.00GiB used 224.75MiB path /dev/vdc 
	devid 2 size 724.00MiB used 204.75MiB path /dev/vdd 
	devid 3 size 1.00GiB used 8.00MiB path /dev/vde 
	devid 4 size 1.00GiB used 8.00MiB path /dev/vdf

Btrfs v3.16.2

Once we identify the device to be changed, we will use this command:

# btrfs filesystem resize devid:amount mount-point

For instance:

# btrfs filesystem resize 2:300M /btrfstest 
Resize '/btrfstest' of '2:300M'

[Looking for help with another query? We are just a click away.]

Conclusion

To conclude, the proficient Support Engineers at Bobcares showed us how to resize the btrfs file system without too much trouble.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF