From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rutger Helling Subject: bug#29674: Ceph creates Btrfs subvolumes on Btrfs during tests. Date: Tue, 12 Dec 2017 14:23:56 +0100 Message-ID: <370b49eecdaf24eaf076fc9ef7479b61@mykolab.com> References: <87bmj4qfan.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49653) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eOkYT-0000oi-G6 for bug-guix@gnu.org; Tue, 12 Dec 2017 08:25:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eOkYQ-0007Hj-BL for bug-guix@gnu.org; Tue, 12 Dec 2017 08:25:05 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:49121) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eOkYQ-0007Hc-6i for bug-guix@gnu.org; Tue, 12 Dec 2017 08:25:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1eOkYQ-00074r-17 for bug-guix@gnu.org; Tue, 12 Dec 2017 08:25:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: ludo@gnu.org Cc: 29674@debbugs.gnu.org Actually, I just tested it with the following: $ cd /tmp $ sudo -s -u guixbuilder01 bash-4.4$ guix environment -C --ad-hoc btrfs-progs guixbuilder01@guixsd /tmp [env]# btrfs subvol create test-snapshot Create subvolume './test-snapshot' guixbuilder01@guixsd /tmp [env]# btrfs subvol del test-snapshot Delete subvolume (no-commit): '/tmp/test-snapshot' ERROR: cannot delete '/tmp/test-snapshot': Operation not permitted guixbuilder01@guixsd /tmp [env]# exit exit bash-4.4$ guix environment -C --ad-hoc coreutils guixbuilder01@guixsd /tmp [env]# rm -rfv test-snapshot/ rm: cannot remove 'test-snapshot/': Operation not permitted guixbuilder01@guixsd /tmp [env]# rmdir -v test-snapshot/ rmdir: removing directory, 'test-snapshot/' rmdir: failed to remove 'test-snapshot/': Operation not permitted guixbuilder01@guixsd /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, ludo@gnu.org wrote: > > Hi Rutger, > > Rutger Helling 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'.