emacs-bug-tracker
[Top][All Lists]
Advanced

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

[debbugs-tracker] bug#31889: closed (Filesystems must not depend on devi


From: GNU bug Tracking System
Subject: [debbugs-tracker] bug#31889: closed (Filesystems must not depend on device mappings?)
Date: Thu, 21 Jun 2018 21:56:01 +0000

Your message dated Thu, 21 Jun 2018 23:55:27 +0200
with message-id <address@hidden>
and subject line Re: bug#31889: Filesystems must not depend on device mappings?
has caused the debbugs.gnu.org bug report #31889,
regarding Filesystems must not depend on device mappings?
to be marked as done.

(If you believe you have received this mail in error, please contact
address@hidden)


-- 
31889: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=31889
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: Filesystems must not depend on device mappings? Date: Mon, 18 Jun 2018 23:11:54 +0200
If in my OS config I define some luks mappings, and define the
corresponding filesystems with dependencies on the mapped devices,
I get an error on 'guix system reconfigure'.

Example:

  (operating-system
    ...
    (mapped-devices
      (list (mapped-device ... (target "root"))))
    (file-systems
      (list (file-system (mount-point "/")
                         ...
                         (dependencies mapped-devices))))
    ...)

This will yield an error like:

  file-system-/ depends on device-mapping-root, which is not
  provided by any service

Funnily enough, one only needs to remove the 'dependencies' field to
make it work.  But this contradicts the example at:

https://www.gnu.org/software/guix/manual/html_node/Using-the-Configuration-System.html


Taylan

--- End Message ---
--- Begin Message --- Subject: Re: bug#31889: Filesystems must not depend on device mappings? Date: Thu, 21 Jun 2018 23:55:27 +0200 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Hi,

Taylan Kammer <address@hidden> skribis:

>      (mapped-devices
>       (list (mapped-device
>              (source (uuid "b3d059f8-1c4f-4569-88dd-5485825b4373"))
>              (target "guixsd")
>              (type luks-device-mapping))
>             (mapped-device
>              (source (uuid "550d9258-bbbb-488c-af27-6b1fefa190ee"))
>              (target "home")
>              (type luks-device-mapping))))
>      
>      (file-systems
>       (append
>        (list (file-system
>               (device "/dev/mapper/guixsd")
>               (mount-point "/")
>               (type "ext4")
>               (dependencies mapped-devices))
>              (file-system
>               (device "/dev/mapper/home")
>               (mount-point "/home")
>               (type "ext4")
>               (dependencies mapped-devices)))
>        %base-file-systems))

[...]

> It results in the error message:
>
>     guix system: error: service 'file-system-/home' requires
>     'device-mapping-home', which is not provided by any service

[...]

> It works when both '(dependencies mapped-devices)' clauses are simply
> removed.

Yes, it’s “expected”: using “/dev/mapper/xyz” as the device is enough to
express the dependency.

When passing (dependencies mapped-devices), the effect was to each file
system depend on *both* mapped devices.  This leads to an inconsistency
because /dev/mapper/guixsd is “needed-for-boot” (i.e., set up from the
initrd), whereas /dev/mapper/home is not (i.e., set up as a Shepherd
service.)

The solution is to either use the /dev/mapper/xyz names in the ‘device’
field, or to specify only the relevant mapped device in ‘dependencies’.

Anyway, commit 68a58775e071d4b0e000b93ad121b6e64d161b79 fixes it by
doing exactly what this config asks for: setting up all the mapped
devices in the initrd.

Thanks,
Ludo’.


--- End Message ---

reply via email to

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