Erik Espinoza wrote:
Eric,
This will fail because your sandbox doesn't copy (link?) the /lib64
and /usr/lib64 directories which contain the 64 bit libs. Your script
is not 64-bit safe yet and will need some work and testing.
Thanks,
Erik
On 8/21/06, Eric Shubes <[EMAIL PROTECTED]> wrote:
Eric "Shubes" wrote:
> Ron Jones wrote:
>>
>>
>> Ok...
>> [EMAIL PROTECTED] qmt]# chroot /opt/qmt-sandbox
>> Returned:
>> "chroot: cannot run command '/bin/bash' : No such file or directory"
>>
>
> Ron,
>
> That's basically the same error I experienced during testing (I'm not
> getting it now, on two separate boxes). I expected such. At least now
> it's easily reproduced, so we should know when we get it fixed.
>
> /opt/qmt-sandbox exists, and /opt/qmt-sandbox/bin/bash does too, right?
>
> chroot should run the shell script by default, and it doesn't find that
> either (like it didn't find qmt-build-rpms.sh). There's something
> somewhere that's keeping chroot from doing its thing.
>
> Perhaps the sandbox isn't being created properly (I kinda doubt it, but
> I've been known to be wrong), so let's double check.
>
> Please verify:
>
> # ldd /bin/bash
> libtermcap.so.2 => /lib/libtermcap.so.2 (0x002bf000)
> libdl.so.2 => /lib/libdl.so.2 (0x00294000)
> libc.so.6 => /lib/tls/libc.so.6 (0x00168000)
> /lib/ld-linux.so.2 (0x0014f000)
>
> These are the dynamic modules bash needs to execute. Let's see what
they
> look like in the primary tree:
>
> # ls -l /bin/bash
> -rwxr-xr-x 1 root root 616184 Feb 21 2005 /bin/bash
>
> # ls -l /lib/libtermcap.so.2
> lrwxrwxrwx 1 root root 19 May 16 14:17 /lib/libtermcap.so.2 ->
> libtermcap.so.2.0.8
>
> # ls -l /lib/libdl.so.2
> lrwxrwxrwx 1 root root 14 May 16 14:17 /lib/libdl.so.2 ->
libdl-2.3.4.so
>
> # ls -l /lib/tls/libc.so.6
> lrwxrwxrwx 1 root root 13 May 16 14:17 /lib/tls/libc.so.6 ->
libc-2.3.4.so
>
> # ls -l /lib/ld-linux.so.2
> lrwxrwxrwx 1 root root 11 May 16 14:17 /lib/ld-linux.so.2 ->
ld-2.3.4.so
>
> Now let's verify that they look the same in the sandbox:
>
> # ls -l /opt/qmt-sandbox/bin/bash
> -rwxr-xr-x 1 root root 616184 Feb 21 2005 /opt/qmt-sandbox/bin/bash
>
> # ls -l /opt/qmt-sandbox/lib/libtermcap.so.2
> lrwxrwxrwx 1 root root 19 Jul 31 23:44
> /opt/qmt-sandbox/lib/libtermcap.so.2 -> libtermcap.so.2.0.8
>
> # ls -l /opt/qmt-sandbox/lib/libdl.so.2
> lrwxrwxrwx 1 root root 14 Jul 31 23:44 /opt/qmt-sandbox/lib/libdl.so.2
> -> libdl-2.3.4.so
>
> # ls -l /opt/qmt-sandbox/lib/tls/libc.so.6
> lrwxrwxrwx 1 root root 13 Jul 31 23:44
> /opt/qmt-sandbox/lib/tls/libc.so.6 -> libc-2.3.4.so
>
> # ls -l /opt/qmt-sandbox/lib/ld-linux.so.2
> lrwxrwxrwx 1 root root 11 Jul 31 23:44
> /opt/qmt-sandbox/lib/ld-linux.so.2 -> ld-2.3.4.so
>
> Does everything in the sandbox look ok? It should be identical to the
> main branch.
>
Ron, let's back up a bit. A straight 'chroot /opt/qmt-sandbox' should
work,
and give you a bash prompt.
Please do these commands on your machine and post the results. I'm
thinking
at this point that 64-bit might have something to do with it, but that's
just a guess since it's the only thing I see that's different (so far).
--
-Eric 'shubes'
Ok Ron. A 64-bit compatible (I hope) script is available now. Please
download it and give it a try. It shouldn't hurt anything if it doesn't work
(but you do have a backup, right?).
You'll need to recreate the sandbox when you run it. You should see the
/usr/lib64 and /lib64 directories created after all the others.
Note, as you seem to be the 64-bit guinea pig, you should probably browse
through the log after the packages are built (before updating) to verify
that there weren't any problems, even though the script should terminate if
there are errors.
Cross your fingers. ;)
--
-Eric 'shubes'
---------------------------------------------------------------------
QmailToaster hosted by: VR Hosted <http://www.vr.org>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]