Gentoo Archives: gentoo-amd64

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-amd64@l.g.o
Subject: [gentoo-amd64] Re: having trouble running root off raid
Date: Sun, 01 Jul 2007 12:29:57
Message-Id: pan.2007.07.01.12.27.51@cox.net
In Reply to: Re: [gentoo-amd64] having trouble running root off raid by Richard Freeman
1 Richard Freeman <rich@××××××××××××××.net> posted
2 46871776.7020704@××××××××××××××.net, excerpted below, on Sat, 30 Jun 2007
3 22:54:46 -0400:
4
5 > It turns out it wasn't obvious, but I was missing all my device nodes in
6 > /dev. Apparently even with udev you need some stuff in there to get
7 > started.
8
9 OK, I see you've got it all working now, but FWIW...
10
11 Yes, there two specific device nodes that Gentoo's initscripts need
12 before udev is setup. However, with a newer baselayout, it should work
13 without them, you'll just not be able to see if anything's going wrong in
14 that section since there's no /dev/console to write to. (/dev/null is the
15 other required device node.) Actually, that's probably what was going
16 on... the problem below (udev not loading) wasn't showing up, because
17 there wasn't a /dev/console to write the error to.
18
19 So... sounds like you put all your device nodes in the rootfs /dev. You
20 can leave it that way if you wish, or remove all the devices except for
21 /dev/console and /dev/null. That's the way I'm running here, just those
22 two on the rootfs.
23
24 For the official word, see the Gentoo udev guide. It's listed in the big
25 Gentoo docs list, here: http://www.gentoo.org/doc/en/list.xml .
26
27 > However, I'm still getting stuck. Now I get an error from rc telling me
28 > that the system doesn't support UDEV. I'm using the EXACT same kernel
29 > as the one that works fine on a different root. Not quite sure what the
30 > problem is...
31
32 I see from your later reply that it was a missing /lib -> /lib64
33 symlink. Yes, that's required. /lib64 has the 64-bit libraries in it,
34 but /lib contains way more than just binary libraries. Among other
35 things, it's also the traditional location for non-binary system utility
36 scripts. Those designed to be run directly by the user/sysadmin are
37 generally in /bin and /sbin (and of course the initscripts in /etc/
38 init.d, symlinked in /etc/runlevels), while those normally only called by
39 other scripts, not designed to be run directly, are normally located in /
40 lib. Since they aren't actually binaries, they are bitness and arch
41 neutral, and are thus normally located in /lib, regardless of the arch.
42
43 FWIW, I ran into this one myself when I switched from multilib to 64-bit
44 only. I tried running separate /lib and /lib64 dirs, no symlink. If it
45 worked perfectly as explained above, that should have worked. However,
46 there's at least one place in baselayout where something placed
47 specifically in lib64 by the package installation, is then invoked
48 specifically from lib (not 64). Strictly speaking, that's broken, since
49 the path should be consistent, one or the other, not placed in one and
50 then invoked as if it's in the other, but I wasn't worried about it
51 enough to file a bug on it. I just moved everything from lib back under
52 lib64, and recreated the symlink.
53
54 > Oh, and line 329 of /sbin/rc calls clear, which is in /usr/bin. Not
55 > that it causes much trouble...
56
57 Now /that's/ something that should be bugged. There's a decently strict
58 policy not to put stuff in /usr that's needed before /usr may be mounted,
59 since it's relatively common to have /usr on a separate partition. This
60 breaks that policy, so it should be bugged. They need to either avoid
61 using clear, or move clear to /bin. (If there are packages that call it
62 using the absolute /usr/bin/clear, place a symlink -> /bin/clear there.
63 That's not a problem. What /is/ a problem is calling it from a script
64 that's run before /usr may be mounted. In this case it's not fatal, but
65 it's a policy issue that needs corrected none-the-less.)
66
67 --
68 Duncan - List replies preferred. No HTML msgs.
69 "Every nonfree program has a lord, a master --
70 and if you use the program, he is your master." Richard Stallman
71
72 --
73 gentoo-amd64@g.o mailing list