support for existing BTRFS subvolumes

Gene Czarcinski gene at czarc.net
Sat Oct 12 15:09:39 UTC 2013


I have complete creation and testing of a patch which adds kickstart 
support for existing BTRFS subvolumes to be added to the /etc/fstab when 
it is created.  This patch includes having each existing subvolume 
specified using the UUID of it parent BTRFS volume.  The patches are 
available as part of bugzilla report:
https://bugzilla.redhat.com/show_bug.cgi?id=892747

Each patch can be applied to anaconda in a git repository and used to 
create an updates disk for testing.  Therefore I have created two 
versions of the patch: Fedora 19 with anaconda-19.30.13-1 and Fedora 
20-beta-TC2 with anaconda-20.22-1.  The updates disk for Fedora 20 was 
build on a Fedora 20 TC1+ hardware system and then tested installing on 
kvm virtuals with F20-beta-TC2+all-repos.

That is all I can say is ... it works.

I sure would like to see this in Fedora 20!!

As I have currently implemented things, the patch changed things so that 
either --noformat or --useexisting can be specified for an existing 
BTRFS volume with the same results.  For an existing subvolume if 
--noformat is specified, then the patch adds code so that that subvolume 
will be added to the anaconda created /etc/fstab with the UUID of the 
subvolume's BTRFS volume.  For an existing subvolume if --useexisting is 
specified, then you get exactly the same thing that you get right now 
... nothing!

Proposal:  As I examined the code, it became obvious to me that it would 
be easy to add the equivalent of "reformat" for a BTRFS subvolume by 
simply deleting the current subvolume of the specified name and then 
recreating it.  Not only that but if "--useexisting" is used to specify 
that functionality, this would be consistent with what is done for 
logical volumes where --noformat is used to mean "leave it alone: and 
--useexisting to mean reformat.

I do not like cross-posts so I will be posting a duplicate of this 
message to the anaconda mailing list.

Gene




More information about the Kickstart-list mailing list