William Immendorf wrote:
> There are two problems with the lfs-initramfs package (distributed as
>  part of Root_FS_on_RAID+encryption+LVM hint)
> 
> The first is easy to fix: On Pure64 systems, /lib64 is a symlink to 
> /lib. As it is created as a directory in the mkinitramfs hint,

In the script?  That only applies inside the initramfs, so it's not like
it matters...

> this causes problems as 64-bit programs look in /lib64 for the linker
> and other libraries, and if the system is a Pure64 system, it won't
> find the libraries it needs.

Since I don't run pure64 (but rather run gcc and glibc the way the
maintainers expect on a 64-bit system -- but I've commented on that just
about every time multilib has come up on lfs-dev :-P), I'm not sure why
this matters.  The dynamic linker is found in /lib64, as the ABI
requires.  Other libraries will be found in the linker's default search
path.  (Since there's no ld.so.conf.)

When the initramfs image is built, they'll be copied to whatever path
ldd reported they were found at, on the host.  And since the host used
the same dynamic linker to find them, it'll have the same default search
path, so it should be able to find them again.

Which library wasn't found?  Where did the various files involved go,
when they were put into the cpio archive?

> The way to fix this is to first check if /lib64 is a symlink, or if
> it is a directory, and behave appropriately.

What's "appropriately" in this context?  I don't think it's doing
anything wrong, but please explain what it should be doing.  :-)

> The second is harder to fix: The RootFS hint and the Pkgusr hint 
> (more_control_and_pkg_man.txt) do not mix.

Interesting that you say that, since I use both every day...

This system is starting to get old though.  Maybe something changed.

> When the bootscripts attempt to mount the root filesystem, it can't
> find it, even through the initramfs could.

If I had to guess, I'd say something is wrong with udev.  What udev
version, and what kernel?  What happens if you boot with init=/bin/bash
and run each bootscript manually in the proper order, from the resulting
shell?  (Specifically, what happens during the checkfs and mountfs
script runs?  Exact error?)

If you can reproduce the error at this point (after udev has started, in
a manual run), what's in /dev compared to /etc/fstab for the rootfs?

> It worked without the pkgusrs hint, but I would like to use that and
> an intramfs. I think the problem has something to do with
> premissions.
> 
> Either way, I'd like fixes for these problems.

Hard without knowing what the problem is yet.  :-P

Attachment: signature.asc
Description: OpenPGP digital signature

-- 
http://linuxfromscratch.org/mailman/listinfo/hints
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to