From: ludo@gnu.org (Ludovic Courtès)
To: Leo Famulari <leo@famulari.name>
Cc: 30298@debbugs.gnu.org
Subject: bug#30298: core-updates: Failure to find the guixbuild group
Date: Thu, 01 Feb 2018 10:06:07 +0100 [thread overview]
Message-ID: <87efm5nkow.fsf@gnu.org> (raw)
In-Reply-To: <20180131234717.GA32689@jasmine.lan> (Leo Famulari's message of "Wed, 31 Jan 2018 18:47:17 -0500")
Hello,
Leo Famulari <leo@famulari.name> skribis:
> On Thu, Feb 01, 2018 at 12:28:32AM +0100, Ludovic Courtès wrote:
>> I think you attached strace to the running guix-daemon process here.
>> What I meant is that we should trace it from the beginning of its
>> execution (so either run it by hand or modify the .service file to run
>> “strace -f guix-daemon …”.)
>
> Oh, right. The issue is that, starting in glibc 2.26, libnss_compat is
> not built unless the glibc build is configured with
> --enable-obsolete-nsl:
[...]
> And we can see the core-updates guix-daemon try and fail to open
> libnss_compat.so:
Yes, but in the trace I gave, it then goes on dlopening libnss_files,
which is the NSS module to read databases like /etc/groups directly, and
succeeds:
--8<---------------cut here---------------start------------->8---
connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3) = 0
open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=207, ...}) = 0
read(3, "group:\tcompat [NOTFOUND=return] "..., 4096) = 207
read(3, "", 4096) = 0
close(3) = 0
openat(AT_FDCWD, "/gnu/store/n6acaivs0jwiwpidjr551dhdni5kgpcr-glibc-2.26.105-g0890d5379c/lib/libnss_compat.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/gnu/store/n6acaivs0jwiwpidjr551dhdni5kgpcr-glibc-2.26.105-g0890d5379c/lib/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\"\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=56928, ...}) = 0
mmap(NULL, 2168632, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f420943d000
mprotect(0x7f4209448000, 2093056, PROT_NONE) = 0
mmap(0x7f4209647000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000) = 0x7f4209647000
mmap(0x7f4209649000, 22328, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4209649000
close(3) = 0
mprotect(0x7f4209647000, 4096, PROT_READ) = 0
open("/etc/group", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=666, ...}) = 0
read(3, "root:x:0:\nwheel:x:999:ludo\nusers"..., 4096) = 666
--8<---------------cut here---------------end--------------->8---
The problem in your case is that /etc/nsswitch.conf has this:
--8<---------------cut here---------------start------------->8---
passwd: compat
group: compat
shadow: compat
--8<---------------cut here---------------end--------------->8---
… meaning that it only tries libnss_compat, and fails if its missing.
If you replace these “compat” with “files”, I think it’ll work.
FWIW on GuixSD I have this:
--8<---------------cut here---------------start------------->8---
group: compat [NOTFOUND=return] files
hosts: files mdns_minimal [NOTFOUND=return] dns mdns
networks: files dns [!UNAVAIL=return]
passwd: compat [NOTFOUND=return] files
shadow: compat [NOTFOUND=return] files
--8<---------------cut here---------------end--------------->8---
The nsswitch.conf on GuixSD is based on the defaults defined in glibc,
as noted in (gnu system nss).
I’m not sure what can be done on our side. We already recommend
starting the nscd:
https://www.gnu.org/software/guix/manual/html_node/Application-Setup.html#Name-Service-Switch-1
Thoughts?
Ludo’.
next prev parent reply other threads:[~2018-02-01 9:07 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-31 2:56 bug#30298: core-updates: Failure to find the guixbuild group Leo Famulari
2018-01-31 3:03 ` Leo Famulari
2018-01-31 3:29 ` Leo Famulari
2018-01-31 22:38 ` Ludovic Courtès
2018-01-31 22:49 ` Leo Famulari
2018-01-31 22:52 ` Ludovic Courtès
2018-01-31 23:07 ` Leo Famulari
2018-01-31 23:28 ` Ludovic Courtès
2018-01-31 23:47 ` Leo Famulari
2018-02-01 9:06 ` Ludovic Courtès [this message]
2018-02-01 20:10 ` Leo Famulari
2018-01-31 22:54 ` Leo Famulari
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87efm5nkow.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=30298@debbugs.gnu.org \
--cc=leo@famulari.name \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.