Date: Fri, 01 Jun 2007 13:45:46 -0700 From: Doug Barton <dougb@FreeBSD.org> To: Warner Losh <imp@bsdimp.com> Cc: ports@freebsd.org, ade@freebsd.org, kris@obsecurity.org Subject: Re: Uggg! Message-ID: <4660857A.2030701@FreeBSD.org> In-Reply-To: <20070601.131415.74663752.imp@bsdimp.com> References: <20070601083345.GA48323@rot13.obsecurity.org> <10723ADA-FD53-45F8-BDFA-DBD98CBC212E@FreeBSD.org> <20070601170514.GA54912@rot13.obsecurity.org> <20070601.131415.74663752.imp@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Warner Losh wrote: >> Best solution is to back up /var/db/pkg if it is in danger of deletion >> by a wanton admin :) > > The ONLY data corruption that I saw when my laptop died was *ALL* of > the +CONTENTS files going away. It seems to have died during the > updating of the meta-data for the dvdauthor port. Why all the files > of unreleated packages would disapper is a mystery to me, unless > mergemaster, or one of the pkg tools, deleted them all, and then > wanted to rewrite them and I got screwed between these two steps. I think you're thinking of portmaster, mergemaster doesn't touch ports stuff. What portmaster does when it updates +CONTENTS files is to update a temp copy first, then move the updated file into place after it's done. Not sure what portupgrade does. In terms of easily recreating them, I can't think of a way to do that reliably other than to build the ports again. portmaster relies heavily on the data in +CONTENTS, and it couldn't even rebuild your ports in place without them since it wouldn't be able to find the ORIGIN. What you could do with portmaster is to pick a high level leaf port with a lot of dependencies (something like firefox) and do 'portmaster -aft /usr/ports/www/firefox' (make sure you specify the directory in /usr/ports, not the pkg directory). hth, Doug -- This .signature sanitized for your protection
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4660857A.2030701>