bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#29674: Ceph creates Btrfs subvolumes on Btrfs during tests.


From: Rutger Helling
Subject: bug#29674: Ceph creates Btrfs subvolumes on Btrfs during tests.
Date: Tue, 12 Dec 2017 14:23:56 +0100

Actually, I just tested it with the following:

$ cd /tmp
$ sudo -s -u guixbuilder01
bash-4.4$ guix environment -C --ad-hoc btrfs-progs
address@hidden /tmp [env]#  btrfs subvol create test-snapshot
Create subvolume './test-snapshot'
address@hidden /tmp [env]#  btrfs subvol del test-snapshot
Delete subvolume (no-commit): '/tmp/test-snapshot'
ERROR: cannot delete '/tmp/test-snapshot': Operation not permitted
address@hidden /tmp [env]# exit
exit
bash-4.4$ guix environment -C --ad-hoc coreutils
address@hidden /tmp [env]#  rm -rfv test-snapshot/
rm: cannot remove 'test-snapshot/': Operation not permitted
address@hidden /tmp [env]#  rmdir  -v test-snapshot/
rmdir: removing directory, 'test-snapshot/'
rmdir: failed to remove 'test-snapshot/': Operation not permitted
address@hidden /tmp [env]#

On 2017-12-12 14:10, Rutger Helling wrote:

Hi Ludo,

I'll try building again later (could be a while, Ceph takes a really long time to build), but I highly doubt that that's the case. Btrfs subvolumes cannot be deleted with tools such as rm/rmdir, even as root. You have to run 'btrfs subvolume delete /subvolume' as root. Although a regular user may create subvolumes, they cannot delete it (unless the USER_SUBVOL_RM_ALLOWED mount option is on). Since the building is done as a guixbuilder user, I don't see how that would work. And even if it did, if a build failed for example you'd still be left with a bunch of subvolumes in /tmp that can only be deleted as root.

On 2017-12-12 13:52, address@hidden wrote:

Hi Rutger,

Rutger Helling <address@hidden> skribis:

I was surprised to learn that Ceph creates Btrfs subvolumes during its
tests.
This is problematic because on Btrfs regular users can create
subvolumes, but they cannot delete them.
This means I had to manually delete the following subvolumes as root:

ID 1744 gen 819598 top level 257 path
tmp/guix-build-ceph-12.0.2.drv-0/td/t-7201/dev/osd0/current
ID 1745 gen 819598 top level 257 path
tmp/guix-build-ceph-12.0.2.drv-0/td/t-7201/dev/osd0/snap_1
Does that mean that wiping out /tmp/guix-build-ceph-*, as happens when
build finishes, isn't enough to get rid of those volumes?

Ludo'.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]