freebsd-update and src.txz
freebsd at edvax.de
Fri Jan 20 21:05:49 UTC 2012
On Fri, 20 Jan 2012 17:24:53 +0100, Dick Hoogendijk wrote:
> Is it true that freebsd-update does not update the souce files from
> 8.2-R to 9.0-RELEASE?
I think also updating src/ is the default behaviour.
See "man freebsd-update.conf", setting "Components":
The parameters following this keyword are the
components or sub-components of FreeBSD which
will be updated. The components are ``src''
(source code), ``world'' (non-kernel binaries),
and ``kernel''; the sub-components are the indi-
vidual distribution sets generated as part of
the release process (e.g., ``src/base'',
``src/sys'', ``world/base'', ``world/catpages'',
``kernel/smp''). Note that prior to
FreeBSD 6.1, the ``kernel'' component was dis-
tributed as part of ``world/base''.
The file /etc/freebsd-update.conf contains this line:
Components src world kernel
So sources should be updated.
> And if not what is the best way to get the src.txz
> installed on an updated system?
If Internet connection is available, I prefer using
CVS for that particular task (the "make update" method),
as it's easy to specify a certain release. However, you
need some basic files in /usr/src to perform this task.
If the system has been installed without the sources,
it's easier to get the source archive file from CD or
DVD, or download it from an official FTP mirror.
The 9.0/i386 sources are here:
# cd /tmp
# ftp ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/9.0-RELEASE/src.txz
# tar -xz -C / -f src.txz
After getting the RELEASE sources and installing them,
for LATER use you could create or modify /etc/make.conf
to contain those lines:
SUPFLAGS= -L 2
#PORTSSUPFILE= /etc/sup/ports.sup # optional
#DOCSUPFILE= /etc/sup/doc.sup # optional
#DOC_LANG= en_US.ISO8859-1 de_DE.ISO8859-1 # change
You can use the same mechanism to update your ports
tree and the documentation for the languages you select.
The file name for getting the exact RELEASE sources
could be /etc/sup/release.sup, containing the RELEASE
instead of the STABLE tag shown in the next example.
Then create directory /etc/sup and file /etc/sup/release.sup:
*default release=cvs tag=RELENG_9
*default delete use-rel-suffix
This one will keep you on 9-STABLE. You can specify any
other version you need (even _older_ versions if you want
to downgrade) by using the tag= parameter.
RELENG_9_0_0_RELEASE -> 9.0-RELEASE
RELENG_9_0 -> 9.0-pX (security patches)
RELENG_9 -> 9-STABLE
The different tags are explained here:
Then the simple thing you need to do is:
# cd /usr/src
# make update
That's a versatile and easy approach. With the example
above, you should get the sources of 9.0-RELEASE properly.
> I do have the disc1 iso. Is src.txz
> installed under /usr/src or /usr/src/sys?
I think it will be obvious place, which is /usr/src,
as "usr/src/" is "hardcoded" in the path prefix of the
archive file, so extraction "beginning" in / should
do the correct thing.
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...
More information about the freebsd-questions