From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17636 invoked by uid 1002); 4 Jan 2003 22:20:52 -0000 Mailing-List: contact gentoo-dev-help@gentoo.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@gentoo.org Received: (qmail 23267 invoked from network); 4 Jan 2003 22:20:52 -0000 To: Stefan Jones Cc: gentoo-dev References: <200301022027.08364.zhen@gentoo.org> <23454.213.121.89.82.1041585748.squirrel@webmail.churchillrandoms.co.uk> <1041691556.1454.27.camel@localhost> X-URL: http://terje.kvernes.no/ Organization: do you Gentoo? From: Terje Kvernes Date: 04 Jan 2003 23:18:49 +0100 In-Reply-To: <1041691556.1454.27.camel@localhost> Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.1 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: Terje Kvernes Subject: Re: [gentoo-dev] Announcing new Prelinking Guide X-Archives-Salt: afb7fd6b-a3ca-4e2d-a3d7-cd68fd204f19 X-Archives-Hash: 0d6615b362ea0f1662710b19be6ebdb9 Stefan Jones writes: > On Fri, 2003-01-03 at 19:21, Terje Kvernes wrote: > > > I'm getting a lot of segfaults when I try to undo prelink. any > > suggestions to save me from rebuilding pretty much everything? > > I'm not sure how to find broken libraries even, so I'm just > > emergeing stuff that is broken when I find it to be so. > > Lots of problems here. ouch. you have my sympathy. thanks for testing, I hope you did so with careful planning? :-) > It seems that because of the disk space shortage some libraries must > of got corrupted and thus are unfixable, they probably got > truncated. good point. I thought that should be easy enough to check so I created a small logical volume directory for testing. I then ran prelink -v /mnt/prelink/*.so, and even if the partition was 100% full it ran okay. well, seemingly at least. nothing ended up as "data". I wonder what libraries cause massive space usage? > How much was the amount of space used up by prelink, details, so I > can update my howto, for I think as you say, that was the source of > the errors. I noticed the space on /usr having 50MiB free at one point, and dropping down to around 10MiB when I reran "prelink -u". I'd say that 100MiB should be plenty, and probably give us a bit of headspace as well. I'll try to reproduce the events under controlled circumstances. anyhow, since /etc/prelink.conf contains all the stuff that can be broken, this find everything that is broken, and then some: for build in $( for broken in $( for dir in $( grep -v '#' /etc/prelink.conf | cut -f2 -d' ' ); do file $dir/* | grep ":.*data"; done | cut -f1 -d: ); do qpkg -v -nc -f $broken; done | sort | uniq ); do echo "=$build"; done produces a nice list to feed emerge: =dev-util/guile-1.4-r3 =gnome-base/gnome-panel-1.4.1 =kde-base/kdebase-3.0.5a =kde-base/kdelibs-3.0.5a =kde-base/kdemultimedia-3.0.5a =media-video/transcode-0.6.0 =media-video/xawtv-3.80 =net-print/cups-1.1.18 =sys-libs/cracklib-2.7-r6 =sys-libs/db-1.85-r1 =x11-libs/qt-3.1.0-r1 emerge $( for ... ) works as it should, and grabs the proper versions. the only false positive I find comes from /usr/lib/cracklib_dict.hwm and will require a remerge of cracklib, which isn't that bad. one can of course just grep that away, if you know it's clean. there is also the issue that ORBit2 required me to delete the broken libraries by hand, and also that packages have to be built in the correct order. building kdelibs with a broken kdebase doesn't quite work. but, at least the above script should ease ones pain. -- Terje -- gentoo-dev@gentoo.org mailing list