Skip to content

timeshift: "not enough disk space" when rsync destination is btrfs raid1 #37

@MikeB5027

Description

@MikeB5027

Describe the bug
When the destination filesystem is a btrfs raid1 disk array, selecting 'Settings - Location' in the Timeshift GUI results in a disk space error, despite there being plenty of space available.

To Reproduce
Steps to reproduce the behavior:

  1. Create a mirrored btrfs filesystem: mkfs.btrfs -d raid1 -m raid1 /dev/sdb /dev/sde
  2. Mount the primary disk on /backup: mount /dev/sdb /backup
  3. Configure Timeshift to use rsync with /dev/sdb as destination.
  4. Start Timeshift and select 'Settings - Location'
  5. Timeshift reports 'Not enough disk space (<1,000 MB)' even though there is plenty of space in the btrfs filesystem: (Image1)
  6. Click OK and it reports '0 B Available /dev/sde': (Image2)
  7. It has selected the mirror disk rather than the primary.
  8. Quit out of Timeshift, select 'No' to 'Select another device?' and restart it.
  9. It correctly reports '1.2 TB Available /dev/sdb': (Image3)
    The confusion probably arises from both disks having the same UUID, but they have different UUID_SUBs, as reported by blkid:
root@mint21:~# blkid /dev/sdb /dev/sde
/dev/sdb: UUID="6b5f43c8-e1c1-4aa8-8b9e-ea70936bdfda" UUID_SUB="f238470e-8b33-4a30-9d64-6b2d70ec2e79" TYPE="btrfs"
/dev/sde: UUID="6b5f43c8-e1c1-4aa8-8b9e-ea70936bdfda" UUID_SUB="b773913c-213f-4355-890a-6483137c9f42" TYPE="btrfs"

root@mint21:~# btrfs filesystem show /backup
Label: none  uuid: 6b5f43c8-e1c1-4aa8-8b9e-ea70936bdfda
    Total devices 2 FS bytes used 701.90GiB
    devid    1 size 1.82TiB used 764.01GiB path /dev/sdb
    devid    2 size 1.82TiB used 764.01GiB path /dev/sde

Expected behavior
Timeshift Settings - Location should show the correct filesystem available capacity.

Screenshots
Image1:
image
Image2:
image
Image3:
image

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions