Hello! My disk space was out of space left, so I decided to remove some snapper snapshot. snapper list
listed over 360 snapshots. I removed them, and freed 50Gb of space. One of these hasn’t been deleted successfully:
Cannot delete snapshot 166 since it is the next to be mounted snapshot.
it’s description is writable copy of #156
. How can I remove it? should I do it using btrfs subvolume delete
?
here’s the output of sudo btrfs subvolume list -t /
:
ID gen top level path
-- --- --------- ----
256 178487 5 timeshift-btrfs/snapshots/2023-09-18_18-25-33/@
257 341688 5 @home
258 341680 5 @cache
259 341688 5 @log
260 26 256 timeshift-btrfs/snapshots/2023-09-18_18-25-33/@/var/lib/portables
261 27 256 timeshift-btrfs/snapshots/2023-09-18_18-25-33/@/var/lib/machines
708 341688 5 @
710 341680 708 .snapshots
2781 178991 5 timeshift-btrfs/snapshots/2024-05-07_12-20-43/@
2968 326034 710 .snapshots/166/snapshot
2969 341679 710 .snapshots/167/snapshot
all those timeshift subvolumes are there because before snapper, I used to use timeshift. I tried to remove them:
sudo btrfs subvolume delete timeshift-btrfs/snapshots/2023-09-18_18-25-33/@/var/lib/machines
ERROR: Could not statfs: No such file or directory
If I understand correctly, it means that I should give an actual “system” path instead of the path in the table, but I don’t understand which path
thanks in advance to everyone!
sudo mount -o subvolid=5 /dev/<your disk here> /mnt
This will give you full access to the filesystem, then you can identify the full path of snapshots and delete them ie.sudo btrfs subvolume delete /mnt/...
In openSUSE, snapper works by booting to a snapshot. “mount” command will reveal which subvolume you are booted from.Thanks for the answer! I mounted it and removed all the timeshift-btrfs stuff. now, after a reboot,
sudo btrfs subvolume list -t /
does not show timeshift stuffs anymore, but if I mount againsudo mount -o subvolid=5 /dev/nvme0n1p2 /mnt
andls /mnt/
I get:@ @cache @home @log timeshift-btrfs
how can I remove
timeshift-btrfs
from there? can i justrm -rf
it?In openSUSE
(sorry I forgot to mention, I’m running EndeavourOS)
Make sure it doesn’t have anything valuable. Use rm -rf
It worked, thank you very much for your help man! Now the only remaining problem is the snapshot 166, that snapper does not let me remove. I assume I should remove in a similar way as timeshift:
$ sudo btrfs subvolume delete /.snapshots/166/snapshot WARNING: not deleting default subvolume id 2968 '/.snapshots/166/snapshot'
I think there’s something I’m missing about how these snapshot works
The snapshot may be mounted to root. In the output of “mount” command, if there isn’t a subvolid= or subvol= parameter for root mount, snapshot 166 is currently mounted to root.
I would run a check, then balance, then see if it’s still throwing errors. It sounds like something has caught, but if there’s an errant snapshot I wouldn’t worry about it.