Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 236606 - PXE, Genkernel, root=/dev/loop0 gives error that filesystem does not appear to be valid.
Summary: PXE, Genkernel, root=/dev/loop0 gives error that filesystem does not appear t...
Status: RESOLVED DUPLICATE of bug 246759
Alias: None
Product: Gentoo Hosted Projects
Classification: Unclassified
Component: genkernel (show other bugs)
Hardware: x86 Linux
: High major (vote)
Assignee: Gentoo Genkernel Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-03 19:39 UTC by Rich
Modified: 2010-12-10 10:47 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rich 2008-09-03 19:39:18 UTC
I have a PXE Genkernel squash image that was created using the instructions found on the Gentoo wiki (http://gentoo-wiki.com/HOWTO_build_a_LiveCD_from_scratch). This has been up and running for several years without a problem and has been updated frequently with negligible issues.

But recently within a month or two, after a few updates, including a genkernel kernel update the PXE bootable thinclient isn't working.

Genkernel version is 3.4.10-r1

Here is my pxelinux.cfg/default menu item for this thin client:
Code:

label dev
   menu label Gentoo (dev-only for testing)
   kernel /pookydev/boot/kernel-genkernel-x86-2.6.26-gentoo
   append initrd=/pookydev/boot/initramfs-genkernel-x86-2.6.26-gentoo looptype=squashfs root=/dev/loop0 nfsroot=172.16.4.23:/diskless/pookydev real_root=/dev/nfs ip=dhcp nodevfs cdroot panic=10


Reproducible: Always

Steps to Reproduce:
1.See description
2.
3.

Actual Results:  
Here is the error from booting into the thinclient.
Code:
>>Attempting to mount NFS CD image on 172.16.4.23:/diskless/pookydev
!!The filesystem mounted at /dev/nfs does not appear to be a valid /, try again
!!Could not find the root block device in .
   Please specify another value or: press Enter for the same, type "shell" for a shell, or "q" to skip...
root block device() ::

Expected Results:  
Booting normally.

This was solved by downgrading to 3.4.9.
Comment 1 Chris Gianelloni 2008-09-04 19:41:50 UTC
Is there a file called "livecd" at 172.16.4.23:/diskless/pookydev ?  If not, you shouldn't be using "cdroot" on your command line.
Comment 2 Rich 2008-09-04 19:56:39 UTC
Here are the files in /diskless/pookydev:
boot/
livecd
livecd.squashfs

There is in fact a file called livecd.  This format has not changed, and has been like this when it was working.  It was the change from genkernel 3.4.9 to 3.4.10-r1 that has caused my issue.  The problem has been solved by reinstalling 3.4.9 and using genkernel to rebuild the kernel and initrd. 

If you look at /usr/share/genkernel/generic/linuxrc ~line 410 you can see:
if [ -d ${NEW_ROOT}/dev -a -x ${NEW_ROOT}/sbin/init ]
                        then
                                break
                        else
                                bad_msg "The filesystem mounted at ${REAL_ROOT} does not appear to be a valid /, try again"
                                got_good_root=0
                                REAL_ROOT=''
                        fi 
(taken from Gentoo forums, http://forums.gentoo.org/viewtopic-p-5202867.html#5202867)

This seems to indicate the root of the issue as PXE/Squash genkernel thinclients do not have a /dev or /etc/init in the root directory.

I hope this helps.

 
Comment 3 Peter Carmichael 2008-09-16 02:23:37 UTC
I've just faced this.

This is a bug in the generic/linuxrc script.  After correctly mounting the nfsroot, it performs checks on the mounted nfs filesystem expecting to find a valid baselayout and ignoring the possibility of the nfs partition containing a cdroot image.

The script checks for the presence of /newroot/mnt/cdrom/dev as a directory and the existence of an executable /newroot/mnt/cdrom/sbin/init.  To get this working quickly I have just patched it to break out of the loop if the nfs mount succeeds with no error, leaving the other checks to the follow on script.
Comment 4 Chris Gianelloni 2008-11-03 13:01:50 UTC
We'll be looking into this for 3.4.11's release.
Comment 5 Andrew Gaffney (RETIRED) gentoo-dev 2008-11-15 15:55:36 UTC

*** This bug has been marked as a duplicate of bug 246759 ***
Comment 6 Rich 2008-11-17 14:24:15 UTC
(In reply to comment #5)
> 
> *** This bug has been marked as a duplicate of bug 246759 ***
> 

Actually, that bug is a duplicate of this one.  

When will this be released in portage?
Comment 7 Andrew Gaffney (RETIRED) gentoo-dev 2008-11-17 15:23:02 UTC
I know this one came first, but I don't really care. The resolution information is on that one, so this one gets marked as a DUPE. We'll do a new release when we do one. I don't have a date for you.

*** This bug has been marked as a duplicate of bug 246759 ***
Comment 8 Sebastian Pipping gentoo-dev 2010-12-10 10:47:28 UTC
I remove this bug from tracker bug #245389 "Features for inclusion by 3.4.11" as it does not seem related.