Hi, answering in a linear fashion, but you may want to read the comment at the bottom first… (see arrow: →)
Roger Leigh <rle...@codelibre.net> (2013-11-06): > The failure is trying to run > > getent group sbuild >> ${chroot}/etc/group > > However, this only works as root, and it's only used as a fallback > in the unusual case that the passwd/group databases in the chroot > are out of sync with the base system. The real question here is > why the system databases weren't copied over during the session > setup. > > I would suggest trying to run schroot without sbuild and see that > if you start a new session with > > schroot -b -n test -c sid-amd64-sbuild -v --debug=notice I've recreated a new chroot ("under systemd"), named experimental-amd64-sbuild, still using sid as the distribution. sbuild-update -udcar experimental-amd64-sbuild fails the same way. > and see if there is anything group-related in the output. Let's see (2>&1): | kibi@arya:~$ grep -i group /tmp/schroot.log | D(2): Getting keyfile group=experimental-amd64-sbuild, key=type | D(2): Getting keyfile group=experimental-amd64-sbuild, key=active | D(2): Getting keyfile group=experimental-amd64-sbuild, key=run-setup-scripts | D(2): Getting keyfile group=experimental-amd64-sbuild, key=run-session-scripts | D(2): Getting keyfile group=experimental-amd64-sbuild, key=run-exec-scripts | D(2): Getting keyfile group=experimental-amd64-sbuild, key=profile | D(2): Getting keyfile group=experimental-amd64-sbuild, key=script-config | D(2): Getting keyfile group=experimental-amd64-sbuild, key=priority | D(2): Getting keyfile group=experimental-amd64-sbuild, key=aliases | D(2): Getting keyfile group=experimental-amd64-sbuild, key=environment-filter | D(2): Getting keyfile group=experimental-amd64-sbuild, key=description | D(2): Getting keyfile group=experimental-amd64-sbuild, key=users | D(2): Getting keyfile group=experimental-amd64-sbuild, key=groups | D(2): Getting keyfile group=experimental-amd64-sbuild, key=root-users | D(2): Getting keyfile group=experimental-amd64-sbuild, key=root-groups | D(2): Getting keyfile group=experimental-amd64-sbuild, key=mount-location | D(2): Getting keyfile group=experimental-amd64-sbuild, key=name | D(2): Getting keyfile group=experimental-amd64-sbuild, key=command-prefix | D(2): Getting keyfile group=experimental-amd64-sbuild, key=message-verbosity | D(2): Getting keyfile group=experimental-amd64-sbuild, key=preserve-environment | D(2): Getting keyfile group=experimental-amd64-sbuild, key=shell | D(2): Getting keyfile group=experimental-amd64-sbuild, key=directory | D(2): Getting keyfile group=experimental-amd64-sbuild, key=location | D(2): Getting keyfile group=experimental-amd64-sbuild, key=personality | D(2): Getting keyfile group=experimental-amd64-sbuild, key=user-modifiable-keys | D(2): Getting keyfile group=experimental-amd64-sbuild, key=root-modifiable-keys | D(2): Getting keyfile group=experimental-amd64-sbuild, key=union-type | D(2): Getting keyfile group=experimental-amd64-sbuild, key=union-mount-options | D(2): Getting keyfile group=experimental-amd64-sbuild, key=union-overlay-directory | D(2): Getting keyfile group=experimental-amd64-sbuild, key=union-underlay-directory | D(2): Getting keyfile group=sid-amd64-sbuild, key=type | D(2): Getting keyfile group=sid-amd64-sbuild, key=active | D(2): Getting keyfile group=sid-amd64-sbuild, key=run-setup-scripts | D(2): Getting keyfile group=sid-amd64-sbuild, key=run-session-scripts | D(2): Getting keyfile group=sid-amd64-sbuild, key=run-exec-scripts | D(2): Getting keyfile group=sid-amd64-sbuild, key=profile | D(2): Getting keyfile group=sid-amd64-sbuild, key=script-config | D(2): Getting keyfile group=sid-amd64-sbuild, key=priority | D(2): Getting keyfile group=sid-amd64-sbuild, key=aliases | D(2): Getting keyfile group=sid-amd64-sbuild, key=environment-filter | D(2): Getting keyfile group=sid-amd64-sbuild, key=description | D(2): Getting keyfile group=sid-amd64-sbuild, key=users | D(2): Getting keyfile group=sid-amd64-sbuild, key=groups | D(2): Getting keyfile group=sid-amd64-sbuild, key=root-users | D(2): Getting keyfile group=sid-amd64-sbuild, key=root-groups | D(2): Getting keyfile group=sid-amd64-sbuild, key=mount-location | D(2): Getting keyfile group=sid-amd64-sbuild, key=name | D(2): Getting keyfile group=sid-amd64-sbuild, key=command-prefix | D(2): Getting keyfile group=sid-amd64-sbuild, key=message-verbosity | D(2): Getting keyfile group=sid-amd64-sbuild, key=preserve-environment | D(2): Getting keyfile group=sid-amd64-sbuild, key=shell | D(2): Getting keyfile group=sid-amd64-sbuild, key=directory | D(2): Getting keyfile group=sid-amd64-sbuild, key=location | D(2): Getting keyfile group=sid-amd64-sbuild, key=personality | D(2): Getting keyfile group=sid-amd64-sbuild, key=user-modifiable-keys | D(2): Getting keyfile group=sid-amd64-sbuild, key=root-modifiable-keys | D(2): Getting keyfile group=sid-amd64-sbuild, key=union-type | D(2): Getting keyfile group=sid-amd64-sbuild, key=union-mount-options | D(2): Getting keyfile group=sid-amd64-sbuild, key=union-overlay-directory | D(2): Getting keyfile group=sid-amd64-sbuild, key=union-underlay-directory | In groups: 1 | In root-groups: 1 | In groups: 1 | In root-groups: 1 | D(1): Inserted into environment: AUTH_RGROUP=kibi | I: 00check: AUTH_RGROUP=kibi | I: 20nssdatabases: Copying group database to /var/lib/schroot/mount/test/etc/group > After this completes, is there a group file in the schroot > directory? Yes: -rw-r--r-- 1 root root 941 Nov 8 22:18 /var/lib/schroot/mount/test/etc/group That's a copy of /etc/group on the host. > Does > > schroot -r -c test -- getent group sbuild > > succeed or fail? Fail: | kibi@arya:~$ schroot -r -c test -- getent group sbuild | E: Failed to change to directory ‘/home/kibi’: No such file or directory | I: The directory does not exist inside the chroot. Use the --directory option to run the command in a different directory. | Hangup | kibi@arya:~$ echo $? | 129 > Does "getent group sbuild" work correctly on the base system when > systemd is running? How about "getent group"? Both work: | kibi@arya:~$ getent group sbuild | sbuild:x:127:kibi | [ longer output for getent group ] > sbuild and schroot don't really do anything which should be > affected by the init system in use. Both just make use of > standard POSIX interfaces, and if systemd causes changes in > how these basic libc calls function, that's a bit worrying. > The schroot db copy is as simple as > > getent $db >> $chroot/etc/$db → Reading the log again, and checking the initial output, the error is EPERM, not exactly a getent failure? Something cgroup-ish could explain some strange user/group issues, when running and storing things in the chroot, maybe? > Any more information you could provide regarding the above would > be much appreciated. Feel free to ask other questions, but I'm pretty sure I purged everything related to schroot and sbuild, and that I never configured anything under /etc for those (except for the file created by sbuild-createchroot and the sid/experimental rename above). Mraw, KiBi.
signature.asc
Description: Digital signature