Btrfs: Difference between revisions

From Alpine Linux
Line 17: Line 17:


  UUID=abcdef-0055-4958-990f-1413ed1186ec  /var/data  btrfs  defaults,nofail,subvol=@  0  0
  UUID=abcdef-0055-4958-990f-1413ed1186ec  /var/data  btrfs  defaults,nofail,subvol=@  0  0
If ypu use more specific mounting options like for example:
UUID=005f5994-f51c-4360-8c9b-589fa59ea6fc  /mnt/hddext  btrfs  nofail,rw,relatime,commit=64,nossd,autodefrag,compress=zstd:10  0 2
do not forget to install additional dependencies if you enabled on the fly compression you need to install dependencies:
apk add zstd


More information about mounting can be found in the official [https://btrfs.wiki.kernel.org/index.php/Main_Page Btrfs wiki]
More information about mounting can be found in the official [https://btrfs.wiki.kernel.org/index.php/Main_Page Btrfs wiki]

Revision as of 22:11, 20 May 2022

Documentation how to use Btrfs on Alpine Linux.

Install

Installing Btrfs is relatively straight forward. Install the package and tell Alpine to load the module on startup:

apk add btrfs-progs echo btrfs >> /etc/modules

To load the module right away, you can use the following command:

modprobe btrfs

Mounting a volume

To mount a volume on boot, add a new entry to your fstab:

UUID=abcdef-0055-4958-990f-1413ed1186ec  /var/data  btrfs   defaults,nofail,subvol=@  0  0

If ypu use more specific mounting options like for example:

UUID=005f5994-f51c-4360-8c9b-589fa59ea6fc  /mnt/hddext  btrfs  nofail,rw,relatime,commit=64,nossd,autodefrag,compress=zstd:10  0 2

do not forget to install additional dependencies if you enabled on the fly compression you need to install dependencies:

apk add zstd

More information about mounting can be found in the official Btrfs wiki

Troubleshooting

Mount failed

If you try mounting a Btrfs volume via your /etc/fstab and it doesn't show up, it could be because Btrfs does not know about the drives during boot.

To work around this, you can create an OpenRC service that runs a btrfs scan to detect the drives. To do so, create a new service under /etc/init.d/btrfs-scan with the following content:

#!/sbin/openrc-run

name="btrfs-scan"

depend() {
  before localmount
}

start() {
  /sbin/btrfs device scan
}

Make the service executable and register it:

chmod +x /etc/init.d/btrfs-scan rc-update add btrfs-scan boot

The volume should mount correctly after a reboot.

Other Resources

  1. BTRFS on Alpine Linux
  2. Using BTRFS on Alpine Linux
  3. Can't mount BTRFS volume using fstab