couldn't you do something like this? 1) install all your "big" ports (leafs with lots of dependancies) 2) run this to get a list of depedancy ports which should already be there, just not in /var/db/pkg
# pkg_info -ar | awk '/Dependency:/ {print $2}'|sort|uniq 3) "install" these ports so that they get added to /var/db/pkg. Seems like this should work, am I missing something? On 11/2/06, Eric Schuele <[EMAIL PROTECTED]> wrote:
On 11/02/2006 10:21, [EMAIL PROTECTED] wrote: > On 11/2/06, Eric Schuele <[EMAIL PROTECTED]> wrote: >> On 11/01/2006 11:05, Karol Kwiatkowski wrote: >> > On 01/11/2006 17:40, Eric Schuele wrote: >> >> Hello, >> >> >> >> [Running 6.2-PRERELEASE as of Oct 30th] >> >> >> >> My /var filesystem on my laptop died this morning. > . . . >> >> 2) If I have destroyed it what can I do at this point? I have no full >> >> backup of /var. I had nothing of any real importance on there. Some >> >> MySQL data... but I've got that. My package database comes to mind. >> >> but nothing of any personal value... just stuff to keep the OS on its >> >> feet. So... if its gone... is there anyway to create a functional >> /var >> >> filesystem that will allow me to "get back to work as usual"? Or >> is my >> >> only option a complete reinstall of everything? > . . . >> > The downside of this (option 2) is you'll loose some important >> > information about your system, /var/db/pkg comes first to my mind. >> >> With respect to the package database... >> I've seen plenty of threads from folks having lost theirs in some form >> or fashion, and the solution always seems to be "reinstall everything". >> Well, ok... sounds like a PITA, but how hard can it really be. I only >> had 30-40 "apps" installed anyway. With their deps it weighs in around >> 350 ports total. So I started to do just that. Figured I'd reinstall >> in the order I originally installed in the first place. Starting with >> Xorg. I go to the port dir and `make install`, thinking it would >> reinstall it and all its deps. No go. It does in fact reinstall Xorg, >> but none of its deps because it finds them present. Reinstalling 30-40 >> apps is one things, having to manually go in and do 350... now thats a >> PITA! > > You might be able to force mount the dirty filesystem via > mount -f > You can also try > dd if=/dev/ad0s1d of=some_dang_file_name* > And then using mdconfig to play with the resulting file. > mdconfig -t vnode -f some_dang_file_name -u 0 && \ > mount -f /dev/md0c /mnt (maybe?) > If you can get the /var/db/pkg dir off nicely, good luck. Thanks. Good ideas. I'll play with this when I have time. But after using mtree to recreate the structure in /var (off the / filesystem), things came back online pretty well. I'll most likely get things put back together and then just recreate the /var filesystem and copy everything back into it. > > *(Note that this could take a long time on a 1 or 2G /var > as it reads all of the empty blocks as well, you might want > to hand it a bs= and a count= if you know about how much > of /var was full at the time, man dd for more details. Also > note that I have had faster results using sdd from ports) > > I had a similar problem a while back and both methods > were able to read some of the data from the former /var, > however the /var/db/pkg directory was trashed and I ended > up having to fall back on the "reinstall everything" method. > My method ended up consisting of: > 1) reinstalling portupgrade > 2) reinstalling several high level programs (opera, mplayer, > gnumeric, any window managers, & so on) > 3) pkgdb -F which one at a time reinstalls everything depended > on. Make sure you have backups of any important files in > /usr/local/etc as they may get overwritten. > I'm presently doing this now. I have reinstalled most, if not all, top level ports and will be running through `pkgdb -F` tomorrow. I suspect that will take a fair amount of time. Thanks. -- Regards, Eric _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"
-- I'm nerdy in the extreme and whiter than sour cream _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"