[buildd-tools-devel] Bug#633671: Bug#633671: Bug#633671: Bug#633671: schroot behaves differently depending on cwd

Roger Leigh rleigh at codelibre.net
Sun Nov 27 20:46:21 UTC 2011


On Sun, Nov 27, 2011 at 07:43:08PM +0100, Thibaut VARENE wrote:
> On Sun, Nov 27, 2011 at 4:54 PM, Roger Leigh <rleigh at codelibre.net> wrote:
> > tags 63367 + fixed-upstream pending
> > thanks
> >
> > On Tue, Jul 12, 2011 at 11:08:13PM +0200, Thibaut VARENE wrote:
> >> On Tue, Jul 12, 2011 at 10:43 PM, Roger Leigh <rleigh at codelibre.net> wrote:
> 
> >> >> The thing is that the error message isn't really explicit, when you're
> >> >> unaware of this "design choice"... I don't how it could be improved
> >> >> though.
> >> >
> >> > We could add an additional information message e.g.
> >> >
> >> > E: Failed to change to directory ‘/tmp/syscheck’: No such file or directory
> >> > I: Does this directory exist inside the chroot?
> >> > I: Use the --directory option to run the command in a different directory.
> >>
> >> Well, the problem is that when I first saw the error message, I didn't
> >> realize it was talking about the chroot, but I quickly suspected it
> >> (it wouldn't have made /any/ sense otherwise). This clarifies the
> >> situation. What remains unclear to the average user unaware of the
> >> implications of a fallback policy for commands is /why/ the directory
> >> needs to be in the chroot. Put another way, at some point I started
> >> believing schroot wouldn't work unless the whole /home/buildd was
> >> loop-mounted into the chroot. I didn't realize it only need the
> >> specific directory it was executed from. I suppose some extra
> >> documentation in the manpages regarding the behaviour of schroot when
> >> executing shells vs commands might be helpful to clarify this.
> >
> > I've written a new section into the manual page (Directory Fallbacks)
> > to properly document this (attached).  Is this OK with you?
> 
> Looks good to me, thanks!
> 
> Did you also implement the more elaborate error message as quoted
> above? The combination of both changes would certainly clear up any
> possible misunderstanding :)

That's now also done:

% schroot -c sid -d /invalid
E: Failed to change to directory ‘/invalid’: 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.

% mkdir /tmp/invalid
% cd /tmp/invalid
% schroot -c sid
W: Failed to change to directory ‘/tmp/invalid’: 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.
W: Falling back to directory ‘/home/rleigh’
W: Shell ‘/usr/bin/zsh’ not available: /usr/bin/zsh: Failed to stat file: No such file or directory
W: Falling back to shell ‘/bin/sh’
$

Is this OK for you?


Regards,
Roger

-- 
  .''`.  Roger Leigh
 : :' :  Debian GNU/Linux             http://people.debian.org/~rleigh/
 `. `'   Printing on GNU/Linux?       http://gutenprint.sourceforge.net/
   `-    GPG Public Key: 0x25BFB848   Please GPG sign your mail.





More information about the Buildd-tools-devel mailing list