Reinstalling, then upgrading (Was Re: Salvageable? (Was Re: make installworld error))

Lowell Gilbert freebsd-questions-local at be-well.ilk.org
Mon Aug 23 14:17:48 PDT 2004


Curtis Vaughan <curtis at npc-usa.com> writes:

> I am now going to try again.  I am installing v. 4.8 on a server.
> This server is to be a Postfix w/Courier IMAP server integrated into a
> Linux-based network, authentication centralized using PAM & LDAP.
> That's about it.
> 
> Now, some people might say, don't install 4.8 go straight for 5.x.
> The reason I am doing this, however, is because I want to not only
> know how to perform upgrades, but I want hands on experience.  So,
> hopefully I am not making this too difficult for me.

Upgrades across major-version boundaries are not recommended for
novices.  Furthermore, FreeBSD is currently in the process of moving
the "STABLE" branch from 4.x to 5.x, so there aren't many updates
going into 5.x right now.

> Finally, while I'm reinstalling 4.8, I would like to know something
> about the following.
> It seems to me that cvsup is actually downloading the entire
> repository of packages for FreeBSD.  Is that really what one has to do
> to perform an upgrade?  It seems like what you would need to do is
> merely upgrade those packages necessary for the latest kernel, then
> upgrade the kernel, then upgrade all installed packages.  (Packages
> meaning ports, right?)

You're using Linux terminology, I think.  To start with, remember,
that FreeBSD is not just a kernel -- it's an entire working operating
system, and you upgrade all of those ("base system") parts together.
That's why "buildworld", "buildkernel", "installkernel", and
"installworld" are all part of the same upgrade procedure (which
includes several other steps as well).

In FreeBSD, a "port" is a third-party application ported to be built
from source on your system.  A "package" is a pre-compiled binary of
that port.  Once installed, they are both tracked (and removable) by
the same database, usually referred to as the "package database".  See
the FreeBSD Handbook section on "Installing Applications: Packages and
Ports" for a full explanation.

So you don't update ports or packages in order to update your base
system, but you may need to update them afterwards (usually
/usr/ports/UPDATING will warn you when this sort of thing occurs; it's
quite rare aside from the "bleeding edge."

Which brings us to what cvsup actually gets you: a collection of
files.  What those files are depends on which collection you configure
cvsup to get for you, but the two primary collections are: "src-all",
which is all of the source files (normally kept under /usr/src) needed
to build the base system; and "ports-all", which is the whole
collection of makefiles and local patches (normally kept under
/usr/ports) needed to download the source of, compile, and install the
third-party applications.


More information about the freebsd-questions mailing list