Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Aug 2009 14:58:00 -0700
From:      "Kevin Oberman" <oberman@es.net>
To:        Bartosz Stec <admin@kkip.pl>
Cc:        Dan Allen <danallen46@airwired.net>, Johan Hendriks <Johan@double-l.nl>, freebsd-stable@freebsd.org
Subject:   Re: Going to BSD 8 from RELENG_7 
Message-ID:  <20090817215800.C7F191CC09@ptavv.es.net>
In-Reply-To: Your message of "Mon, 17 Aug 2009 09:18:11 %2B0200." <4A890433.1070809@kkip.pl> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Date: Mon, 17 Aug 2009 09:18:11 +0200
> From: Bartosz Stec <admin@kkip.pl>
> Sender: owner-freebsd-stable@freebsd.org
> 
> Johan Hendriks pisze:
> > Be aware that if you go from 7 to 8 you will need to rebuild all your
> > installed ports.
> > ALso if you do a buildworld from 7 to 8 do not do the make delete-old
> > and the make delete-old-libs before you have rebuild your ports.
> > If you do the make delete-old and make delete-old-libs runs, all ports
> > depending on the FreeBSD 7 libs will not work any more.  << read:  most
> > likely all your ports.
> > If you have changed for example your Shell for root to a ports based
> > shell like bash and you do the make delete-old-libs you can not log in
> > anymore, because bash depends on the 7 libs wich are not there anymore.
> >
> > And as usual MAKE A GOOD BACKUP !!!!
> >
> > Regards,
> > Johan
> >
> >  
> >   
> As I remember when I did upgrade from FreBSD 6.4 to 7.0, I ran 
> 'portupgrade -afi' after thar, BUT as I remember all my ports in fact 
> works before they were upgraded. If I understand correctly, the reason 
> of this was not making delete-old and delete-old-libs?
> 
> So should following upgrade procedure be painless?
> 
> 0. Backup!
> 1. cvsup 8.0-stable
> 2. make buildworld && make buildkernel
> 3. make installkernel
> 4. reboot and jump to single user mode
> 5. make installworld && mergemastger
> 6. take a deep breath & reboot
> 7. portupgrade -afi
> 8. make delete-old && make delete-old-libs
> 9. reboot
> 10. Hooray!
> 
> My concern is - will my ports works after point 6. ? Quite important 
> thing when machine can't be offline by hours during portupgrade -afi ....

You can compress 2 and 3 into: make buildworld && make kernel. To save a
LOT of time on SMP systems, use -jN where N is at least (numcpus +
1). IF you get an error with -j, build again without '-jN' and with
'-DNO_CLEAN" to quickly find the real error. 

Do a delete-old. Hold off on delete-old-libs for a bit. (It's generally
the old header files which bite, but keeping libs is "safe".)

The problem is that, when you start updating ports, you will eventually
(and probably pretty quickly) end up with a port that links to two
libraries which, in turn, link to a "common" library, but one links to
the old and one to the new. When this happens, the real-time loader
(rtld) will object strongly and one or more ports are rendered
un-runnable. 

libmap.conf(5) can usually be used as a temporary way to get things
working again, but it does not always work. Version numbers are only
bumped because there is a reason (I hope).

I suggest that you install packages (-P) for any ports that are not
using special options. It can save hours of time. Also, use script or
something else to keep a copy of the output of the portupgrade. It can be
very handy in fixing any problems that crop up.
-- 
R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: oberman@es.net			Phone: +1 510 486-8634
Key fingerprint:059B 2DDF 031C 9BA3 14A4  EADA 927D EBB3 987B 3751



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090817215800.C7F191CC09>