Three FreeBSD 6 questions
Ivan Voras
ivoras at fer.hr
Thu Oct 26 14:24:19 UTC 2006
SiteRollout.com wrote:
> 1.) How exactly do I know whether I am running the STABLE or CURRENT
> release, as when I run uname I can only see the following relevant info:
>
> FreeBSD server4.domain.info 6.0-RELEASE FreeBSD 6.0-RELEASE #0: Sat Sep 23
> 13:52:48 UTC 2006 root at server4.
> <mailto:root at server4.e-webhost.info:/usr/src/sys/i386/compile/SERVER4>
> domain.info:/usr/src/sys/i386/compile/SERVER4 i386
If you installed from an release CD, you're running release, and will by
default continue to run it until you manually upgrade.
A computer running stable would print something like this for uname:
FreeBSD lara.xx.xx 6.1-STABLE FreeBSD 6.1-STABLE #11: Wed Sep 6
17:57:59 CEST 2006 ivoras at lara.xx.xx:/usr/obj/usr/src/sys/LARA i386
And a computer running CURRENT would say:
FreeBSD server.xx.xx 7.0-CURRENT FreeBSD 7.0-CURRENT #3: Thu Oct 23
10:28:46 CEST 2006 person at server.xx.xx:/usr/obj/usr/src/sys/GW i386
Note that "RELEASE", "STABLE" and "CURRENT" are only common names for
specific branches. There are plenty of documentation on which is which,
but the short and dirty version is: RELEASE versions are officially
meant to be widely used and have gone through testing before published.
STABLE is the "low-risk development" branch, and from time to time the
STABLE branch is frozen and a new release created from this branch (e.g.
6.0, 6.1, 6.2 are releases from 6-STABLE). CURRENT is bleeding edge, may
cause your computer to explode, etc. Periodically, a CURRENT branch will
be re-designated as STABLE and a new CURRENT will be started (thus in
the future there will be 7-STABLE, 7.0-RELEASE and 8.0-CURRENT). In
addition to those exist obsolete STABLE branches not meant to be used on
new installations (now obsoleted are 4-STABLE and 5-STABLE, in the
future when 7.x becomes STABLE, 6-STABLE will be one of the obsolete
branches).
> And which file do I change to use a different release, and how must I update
> the system to pull in this latest release?
1. Install cvsup (or more likely cvsup-without-gui)
2. Copy /usr/share/examples/cvsup/*supfile to /etc/
3. Edit those file to change the cvsup server name (see handbook for
available servers) and version you want to upgrade to
4. Run cvsup on those file(s)
> 2.) I'm a bit confused as to updating the system. As I understand, there are
> 3 areas which require updates:
>
> i. Ports
> ii. Security updates
> iii. Kernel updates
Security updates and kernel updates are the same, all updated with a
single cvsup. This updates everything shipped with FreeBSD by default
(including kernel). Study carefully what is and what is not a part of
the default ("base") system - for example sshd, sendmail and bind are in
it, but procmail or apache are not. There are no separate packages for
applications in the base system.
Ports (i.e. third party applications, which is everything from apache to
vim to zsh) are updated separately. The ports tree (which contains
ports/packages definitions) is updated with cvsup or portsnap, and then
individual packages can be updated either manually or with portupgrade.
> I know how to perform the first two, but for kernel updates I can't seen to
> find a consistent unified method with talk of the "traditional" way and the
> "latest" way. What is the best way to keep my FreeBSD 6.x system up2date?
Edit /etc/standard-supfile (as described in the steps above), run `cvsup
/etc/standard-supfile`, cd to /usr/src and run:
# make buildworld <-- this will compile the userland ("base" system)
# make buildkernel <-- this will compile the kernel. See manual about
how to create and specify kernel config file.
# make installkernel <-- this will install the kernel
# make installworld <-- this will install the userland
Those are the instructions for the latest recommended way to do it. To
complete the upgrade, you'll need to run `mergemaster` - read about it
in handbook and its man page.
Mostly you can upgrade the system without problems while running in
multiuser/production mode (except of course for reboots to load the new
kernel and deamons), but the official way is to do it in single user
mode and with several passes of mergemaster.
> 3.) One of my new FreeBSD 6.0 servers went down recently. This was odd as
> the actual server was hardly busy, but filesystem errors came up when
> booting up the server. After running fsck, server would be up for about an
> hour and then go down again. This kept happening and so I initially thought
> it was due to overheating. However cooling was all good, so after further
> investigation and googling I diagnosed the problem as being the background
> fsck which for some reason was failing, causing the server to shutdown and
> upon reboot requiring a manual fsck.
See if you're low on disk space. AFAIK there was a problem in 6.0 (and
maybe 6.1?) with background fsck (actually, the snapshot feature) when
disk space is low.
Of course, there also might be a hardware failure somewhere.
If/when you get comfortable with FreeBSD, it would be beneficial if you
created a simple article or howto describing your experiences, what you
like and dislike about it and your learning process.
have fun!
More information about the freebsd-stable
mailing list