On Mon, Aug 01, 2016 at 04:46:24PM +0100, Mick wrote
> On Monday 01 Aug 2016 11:23:03 waltd...@waltdnes.org wrote:
> 
> >   I recommend going with one of 3 "cheats"...
> > 
> > 1) A 32-bit chroot in a 64-bit machine
> > 
> > 2) A QEMU (or VirtualBox) 32-bit guest on a 64-bit host
> > 
> > 3) If you have a spare 64-bit machine, install 32-bit Gentoo on it
> > 
> >   I use option 2) both as my distccd server and to manually build Pale
> > Moon.  The target in both cases is an ancient 32-bit-only Atom netbook.
> 
> I'm trying your cheat (1) above, but I must be doing something wrong:
> 
> gentoo-32bit # linux32 chroot /mnt/iso/gentoo-32bit /bin/bash
> chroot: failed to run command ???/bin/bash???: No such file or directory
> 
> gentoo-32bit # ls -la /bin/bash
> -rwxr-xr-x 1 root root 705400 Jan  9  2016 /bin/bash
> 
> gentoo-32bit # ls -la ./bin/bash
> -rwxr-xr-x 1 root root 677244 Jan 16  2016 ./bin/bash
> 
> gentoo-32bit # linux32 chroot /mnt/iso/gentoo-32bit ./bin/bash
> chroot: failed to run command ???./bin/bash???: No such file or directory

  I believe that "/bin/bash" is the pathname after you switch to the
chroot environment.  So you would need a 32-bit bash located at
/mnt/iso/gentoo-32bit/bin/bash *BEFORE CHROOTING*.  See
https://lwn.net/Articles/252794/

> What chroot() actually does is fairly simple, it modifies pathname
> lookups for a process and its children so that any reference to a path
> starting '/' will effectively have the new root, which is passed as
> the single argument, prepended onto the path. The current working
> directory is left unchanged and relative paths can still refer to
> files outside of the new root.

-- 
Walter Dnes <waltd...@waltdnes.org>
I don't run "desktop environments"; I run useful applications

Reply via email to