guix-devel
[Top][All Lists]
Advanced

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

LVM support


From: Tomáš Čech
Subject: LVM support
Date: Wed, 15 Apr 2015 07:07:56 +0200
User-agent: Mutt/1.5.23 (2014-03-12)

Hi Guix,

as project for my Hackweek in SUSE I decided to spend my time on LVM
support in GuixSD - something I miss greatly. This also means that
I'll have much less time for that after this week :(

So far I spent time on reviving my GuixSD installation and preparing
staticly linked binaries for initrd. I have now lvm2 package with
extra output "static".
What next?

Now the simplest way would be to simply call

vgchange --activate y

Matching configuration could be one configuration option:
(use-lvm?)


That would scan all block devices and look for LVM signature.

Pros:
- it's super simple!
Cons:
- if LVM with filesystem required at boot-time is not found, error
 is not detected or returned by LVM itself



Slightly bit more complicated way could be

vgchange --activate y <volume_group_name>

for every volume group defined in system configuration. Matching configuration 
could be
(logical-volume-groups '("system" "data"))

e.g. specify list of volume group names used by system.

Pros:
- still simple
- if group activation fails, I can detect it and report it to user

Cons:
- some block devices with LVM may not be available at boot-time (like
 iSCSI devices accessible through network only or Luks devices
 available after entering password)

That is my current approach.



I could also specify whether it should be made available at boot time or not
(logical-volume-groups '('("system" #t)
                        '("data"   #f)))

(sorry for my poor Scheme taste here :)

Pros:
- with this I could say that volume group "system" should be activated
 at boot time, but "data" should be activated later.

Cons:
- starting to be more complicated - I need both initrd stage LVM
 activation and root filesystem stage LVM activation (implemented as
 service? which dependencies it has?)


Or do it in different way. I'd rather not propose here any wild ideas
for configuration but if you can devise something better, please tell
me...



S_W



reply via email to

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