1 |
Kirk Lowery <empirical.humanist@×××××.com> posted |
2 |
e74dfca60906040548r3b0c1c89sf73c9f5e47119ede@××××××××××.com, excerpted |
3 |
below, on Thu, 04 Jun 2009 08:48:13 -0400: |
4 |
|
5 |
> I have a dual Opteron box that has successfully run a "nomultilib" |
6 |
> 64-bit only system for years. For various reasons, the box had not been |
7 |
> updated for a long time. I did a major upgrade over several days, |
8 |
> incrementally. Somewhere along the way, some ebuild clobbered my /lib |
9 |
> symlink to /lib64. My profile is "nomultilib" and my global USE flags |
10 |
> include "-multilib". I discovered the problem when I tried to restart |
11 |
> one of my servers, restored the symlink,and everything works fine. Happy |
12 |
> ending. |
13 |
> |
14 |
> My question: I have all the portage logs from the upgrade. Is there some |
15 |
> way I can determine which ebuild first changed the symlink? I need to |
16 |
> determine whether there is a bug in that ebuild, or it was simply a |
17 |
> glitch because of the massive set of upgrades. In the first case, I'd |
18 |
> like to file a bug on that package. On the other hand, it may not be |
19 |
> worth the time and effort. |
20 |
> |
21 |
> But I'm willing to devote a couple of hours of research to this in the |
22 |
> community interest. |
23 |
|
24 |
Very interesting. FWIW, the lib-lib64 symlink has flipped a time or two |
25 |
over the years, depending on what stage tarball the base install came |
26 |
from and possibly depending on the baselayout version. Thus, I'd |
27 |
investigate baselayout first. (Added later:) Also see |
28 |
http://bugs.gentoo.org/show_bug.cgi?id=132135, and check xorg and glibc |
29 |
(bug 122274) as well. |
30 |
|
31 |
equery belongs (with equery being part of gentoolkit) would be helpful in |
32 |
this sort of situation in /most/ cases, but here I'm not so sure, since a |
33 |
package is said to "own" a directory if it has any files in it, and |
34 |
portage only removes it on uninstall if there's nothing left in it after |
35 |
it removes the files the uninstalled package owns, thus saving the dir if |
36 |
other packages own it or if there's orphaned or non-package files in the |
37 |
dir. Since we're talking about the major /lib and /lib64 dirs here, a |
38 |
larger number of packages than normal are likely to own them. At least |
39 |
it's not /usr/lib and /usr/lib64 we're talking about, as a HUGE number of |
40 |
packages will own them! |
41 |
|
42 |
Still, you /might/ find something if you look for those that use the |
43 |
symlink form, since those should be far fewer and the package rather out |
44 |
of the ordinary. At least here, nothing reports the symlink form, and |
45 |
baselayout doesn't own either dir but openrc owns /lib64. However, as |
46 |
the openrc clue will indicate to many, I'm using ~amd64 keywords and thus |
47 |
baselayout v2 (2.0.1 to be exact), so that's not going to be |
48 |
representative of a stable amd64 baselayout v1 installation (which |
49 |
doesn't use openrc as it's effectively both packages in one) at all. |
50 |
|
51 |
But I doubt that'll turn up anything. |
52 |
|
53 |
Something that /might/ turn up something would be grepping the portage |
54 |
logs for references to /lib. Of course, depending on the grep, you may |
55 |
get ALL /lib references including the ones in /usr, both the plain lib |
56 |
and the lib64 versions, and even /usr/libexec and private lib subdirs |
57 |
such as /usr/kde/3.5/lib or whatever, so you may have to play with the |
58 |
grep/search a bit to reduce the number of false positives. For various |
59 |
technical reasons, such system-wide changes are often specifically |
60 |
scripted, outside the usual portage install uninstall operations, so it's |
61 |
possible you can trim the search by throwing in a reference to rm, as |
62 |
well. |
63 |
|
64 |
Meanwhile, I read the dev list and someone happened to mention something |
65 |
that sounded very much like what you are saying, a bug due to a removed |
66 |
/lib or /lib64 symlink. My eyes perked up (ears perked up is the usual |
67 |
phrase, but I was reading not listening in this case) at that, but it was |
68 |
merely a passing reference with basically no additional information, IIRC |
69 |
not even a bug number I could look at, so I haven't the foggiest whether |
70 |
it's actually related to this or not, nor do I remember now which thread |
71 |
or any other context, so finding who it was to mail them and ask would be |
72 |
difficult. It's really rather frustrating. However, that does indicate |
73 |
that there's a good chance they already know about it. Thus unless |
74 |
you're seriously curious (as I imagine I would be, when such things |
75 |
happen I want to know why and how, in ordered to determine how likely |
76 |
they are to occur again!), you might just decide they've probably caught |
77 |
the bug already based on the above, and leave it at that. |
78 |
|
79 |
Finally, if you're still interested in investigating the matter and given |
80 |
that we now know there's likely a bug filed on it, you can try searching |
81 |
filed bugs. In fact, I'm already curious enough about it to do one |
82 |
search... |
83 |
|
84 |
On Gentoo bugzilla I used the search "ALL /lib symlink", and came up with |
85 |
the above listed early bugs (at the "added later" note), but nothing as |
86 |
recent as I recall that dev list reference being. So I don't know... |
87 |
|
88 |
But the other possible method, assuming not /too/ many packages were |
89 |
updated and/or that you search against the system-wide packages like |
90 |
baselayout, glibc, gcc, xorg-server, etc that are most likely to cause |
91 |
the problem, first, and leave say codecs and such unlikely candidates for |
92 |
later, would be to do an ALL bugzilla search against each one, checking |
93 |
the bugs filed in say the last three months, and see what you come up |
94 |
with. |
95 |
|
96 |
If you figure out what it was, please do post an update, and/or link the |
97 |
bug or whatever. I'm curious, and as I said, as any good admin upon |
98 |
seeing an unsolved mystery such as this, wonder at the possibility of it |
99 |
hitting here, even if it's reasonably unlikely given that on ~amd64 and |
100 |
updating generally a couple times a week, I'm likely long past any danger. |
101 |
|
102 |
-- |
103 |
Duncan - List replies preferred. No HTML msgs. |
104 |
"Every nonfree program has a lord, a master -- |
105 |
and if you use the program, he is your master." Richard Stallman |