[buildd-tools-devel] Bug#815175: Bug#815175: sbuild-update fails to unmount schroots on failure

Johannes Schauer josch at debian.org
Fri Feb 19 22:59:33 UTC 2016


Control: reassign -1 schroot
Control: retitle -1 schroot fails to unmount chroot on failure in setup.d scripts

Hi Ryan,

Quoting Ryan Kavanagh (2016-02-19 23:30:13)
> On Fri, Feb 19, 2016 at 09:07:46PM +0100, Johannes Schauer wrote:
> > Quoting Ryan Kavanagh (2016-02-19 18:56:32)
> > > rak at zeta:~$ sbuild-update -udr source:jessie-amd64
> > > E: 15binfmt: update-binfmts: unable to open /var/run/schroot/mount/jessie-snap-a6a720c2-d20d-4251-b3a5-1e043da0e1e2/bin/sh: No such file or directory
> > > E: 20copyfiles: cp: cannot create regular file '/var/run/schroot/mount/jessie-snap-a6a720c2-d20d-4251-b3a5-1e043da0e1e2/etc/resolv.conf': No such file or directory
> > > E: jessie-snap-a6a720c2-d20d-4251-b3a5-1e043da0e1e2: Chroot setup failed: stage=setup-start
> > > Chroot setup failed
> > > Error setting up source:jessie-amd64 chroot
> > > Chroot setup failed at /usr/bin/sbuild-update line 170.
> > 
> > this error looks strange.
> > 
> > Can you tell me a way how I can reproduce the problem you have with
> > sbuild-update?
> 
> The above error is a classic case of PEBKAC. I accomplished it roughly
> as follows:
> 
> mkfs.ext4 /dev/wd/jessie-chroot
> mkdir /tmp/jessie
> mount /dev/wd/jessie-chroot /tmp/jessie
> sbuild-createchroot jessie /tmp/wd-jessie-chroot http://httpredir.debian.org/debian
> umount /tmp/jessie
> ... delete /etc/schroot/schroot.d/* and add the appropriate LVM snapshot
> ... config entry to /etc/schroot/schroot.conf
> suild-update -udr source:jessie-amd64
> 
> which then caused a snapshot of /dev/wd/jessie-chroot to get mounted,
> which was empty (I fed the wrong path to sbuild-createchroot), and so
> sbuild-update obviously couldn't find bin/sh under it :)
> 
> So, I suppose this should be considered a 'wishlist' bug, where
> sbuild-update should fail gracefully and umount stuff even on failure.

thanks, this allowed me to reproduce this. Though don't think that sbuild can
do anything about this problem, as I think it is schroot which fails to clean
up after failing to begin the session.

Steps to reproduce:

$ cat /etc/schroot/chroot.d/unstable-amd64-sbuild-Y0L33s
[unstable-amd64-sbuild]
type=file
description=Debian unstable/amd64 autobuilder
file=/srv/chroot/unstable-amd64.tar.gz
groups=root,sbuild
root-groups=root,sbuild
profile=sbuild
$ mkdir empty
$ tar -C empty -czf empty.tar.gz .
$ sudo mv empty.tar.gz /srv/chroot/unstable-amd64.tar.gz
$ sudo chown root:root /srv/chroot/unstable-amd64.tar.gz
$ schroot -c chroot:unstable-amd64-sbuild --begin-session
E: 15binfmt: update-binfmts: unable to open /var/run/schroot/mount/unstable-amd64-sbuild-ca29d966-e3e4-4196-b824-7e153b317c1d/bin/sh: No such file or directory
E: 20copyfiles: cp: cannot create regular file '/var/run/schroot/mount/unstable-amd64-sbuild-ca29d966-e3e4-4196-b824-7e153b317c1d/etc/resolv.conf': No such file or directory
E: unstable-amd64-sbuild-ca29d966-e3e4-4196-b824-7e153b317c1d: Chroot setup failed: stage=setup-start
$ mount | grep /run/schroot/mount/
tmpfs on /run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb type tmpfs (rw,nosuid,nodev,relatime,size=8388608k)
proc on /run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/var/run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/proc type proc (rw,nosuid,nodev,noexec,relatime)
sysfs on /run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/var/run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/sys type sysfs (rw,nosuid,nodev,noexec,relatime)
udev on /run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/var/run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=1497603,mode=755)
devpts on /run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/var/run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/var/run/schroot/mount/unstable-amd64-sbuild-3aab5ea7-86ae-4c30-b096-d58406f025bb/dev/shm type tmpfs (rw,relatime)



Thanks!

cheers, josch
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: signature
URL: <http://lists.alioth.debian.org/pipermail/buildd-tools-devel/attachments/20160219/5accfbeb/attachment.sig>


More information about the Buildd-tools-devel mailing list