What follows is a log of the installation and setup of FreeBSD 6.1 on the all new
Because I was impatient 2 weeks ago when I first set out to do the install, I only downloaded the 23MB boot-only ISO for i386. Thus, after booting from the CD ROM I selected the
Custom install option (as always), partitioned the first 73Gb disk (dangerously dedicated, of course) and used the defaults for the slices then sat around waiting for the base, kernel, dict, man, src and ports to install via ftp2.au.freebsd.org (a.k.a. mirror.aarnet.edu.au). Don't forget to set
vi as the editor in the options rather than the rather awful
ee. Set a root password, the time zone and reboot.
Do not choose
Commit again after the post-install config like I did the first time around - you'll end up reinstalling again which is quite painful via 512k ADSL.
The first thing to do after the basic install is to sync the source tree using CVSup. I ftp'ed to ftp.freebsd.org, changed to
/pub/FreeBSD/ports/packages/net, downloaded the latest
cvsup-without-gui package and installed it using
pkg_install. After installing, get a supfile for -STABLE:
cp /usr/share/examples/cvsup/stable-supfile /root. Edit this file to use cvsup.au.freebsd.org and
RELENG_6_1 as the release. Do not use the defalt RELENG_6 unless you want to use 6.2, still in beta. After a
cvsup stable-supfile build your new world, as described in the handbook.
While all that is going on, I added a staff account for myself, cvsup'ed the ports collection and installed
bash. After buildworld/buildkernel/installkernel/fastboot/installworld/mergemaster I configured the NTP and SSH servers, which I think gives me a bare minimum platform to work with.
The second two 73Gb disks were mirrored using gmirror.
As much as I hate it for all the crazy dependencies it has, I installed
sysutils/portupgrade from the ports collection. It is the only ports manager that I know of that lets you create packages for all installed ports, which is pretty damm handy when you have a built system for compiling and testing that is separate from your production machine. Five billion hours later, after it had sucked in Ruby, Perl 5.8 and BDB 4.1 and some other cruft as dependencies, it was installed.
FreeBSD 6 supports name service switch! Woo! Lets get LDAP cracking. To get a sensible LDAP setup going, you need to use both
nss_ldap (as a user database replacement) and
pam_ldap (for doing authentication in a safe, secure way). This of course necessitates the installation of
openldap23-client but we'll use the production LDAP server for actual user data for now. I didn't include SASL support, SASL is a pain in the ass. Install both the PAM ports and edit
/usr/local/etc/nss_ldap.conf. Actually, since those files can be identical, I just linked one to the other. Edit
/etc/nsswitch.conf to use files and ldap for both
id command is pretty handy for testing if your LDAP NIS setup is working.
To be continuted (and proofread)...