portupgrade -af in FreeBSDupdate to 8.0
Chris Rees
utisoft at gmail.com
Wed Jun 23 07:50:55 UTC 2010
On 23 June 2010 08:29, n dhert <ndhertbsd at gmail.com> wrote:
> in the process of upgrading 7.2 -> 8.0, the last step is to recompile all
> ports
> (section 24.2.3 of freebsd manual)
> # portupgrade -f ruby
> # rm /var/db/pkg/pkgdb.db
> # portugprade -f ruby18-bdb
> # rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db
>
> # portupgrade -af
>
> Did that for my 760 ports, but after 499 ports reinstalled (and 11 hours),
> it stopped
<snip />
> Why does it stop? Can it be avoided? Or can I make portupgrade -af start
> from where it got so far in the first run ?
>
>
> I could do # portupgrade -af again, but this is again "everything" (11
> hours)...
>
> I noticed on a different system (with only 64 ports), that it stopped at
> lang/ruby18 there as well,
> and after again # portugprade -af (which then continued past lang/ruby18),
> it stopped a second time
> in the same manner at
> ---> Reinstallation of databases/ruby-bdb ended at: Mon, 14 Jun 2010
> 13:01:25
> +0200 (consumed 00:00:28)
AFAICR, portupgrade is written in Ruby, so strange things can happen
if you pull the carpet out from under it like that. Not really your
fault...
I suggest you look at the man page for pkg_glob, and look for the kind
of glob to supply for portupgrade; for example:
The following command line arguments are supported:
pkgname_glob Specify one of these: a full pkgname, a pkgname with-
out version, or a shell glob pattern to match against
pkgnames or their origins in which you can use wild-
cards `*', `?', and `[..]', an extended regular
expression preceded by a colon `:' to match against
pkgnames or their origins, or a date range specifica-
tion preceded by either `<' or `>'.
So try
[chris at amnesiac]~% sudo portupgrade -f '<2010-06-22'
That should reinstall all the ports that were installed before yesterday.
HTH
Chris
More information about the freebsd-questions
mailing list