6.3 or 7.0 is easier for a newb?

I'm a Windows admin crossing over to Unix. A developer needs me to set up Apache, My SQL, PHP and some other stuff.
I'll be using an older Supermicro server with an P4SCE motherboard.
I'm looking for minimum hassle. I should be able to follow installation instructions and Google error messages but don't expect to become a *nix guru.
Which version should I start with 6.3 or 7.0? What would be my single best resource to read up on? (besides this forum and the actual documentation)
 
Generally speaking, a newer release will have better hardware support (unless your hardware is very old) and more features, so I'd suggest 7.0 (or the 7.1 beta, if you feel a bit adventurous).

On the other hand, 6.3 is a more tested codebase (it's only seen conservative changes since 6.0), so it is in some ways a safer choice. Either should work fine.

Small tip: Don't install any packages from the CD, use the ports tree afterwards instead. You'll have to compile things, but you'll get the newest (most patched) version, and you can configure a few more things.
Also, I'd suggest using portsnap to update the ports tree: Just do "portsnap fetch extract" and it will download and unpack the newest version for you. (If you want to update it later, use portsnap fetch update, which only updates the changed parts.)

The handbook is a useful place to start - e.g. chapter 4 (ports/packages), or 30.7 (how to install apache with PHP5).
 
For a single core system I'd still suggest 6.3. 7.0 was a piece of crap on single core systems. Certain file operations lock up the whole system because the tty and vfs subsystems are still in GIANT. With 7.1 lots of bottlenecks will have been removed, so that the problems are barely recognizable unless you trigger them on purpose (for testing).

The whole problem will truly evaporate with 8.0 where the tty and vfs layer have been replaced/overhauled and gotten rid of the GIANT lock. Until then, 7.x for multi-core and 6.x for single-core.
 
The tutorial at peter-v.com looks interesting, however it should be noted there are a few inaccuracies. For example, the part that states that if after you install an application you aren't able to use it, reboot. Sounds like it was written by a windows administrator ;) There should be nothing short of a kernel patch that requires a full reboot. If you are using the default TCSH shell, simply type "rehash" at the shell after installing new software, and you'll be able to use it.

echo ‘/usr/local/sbin/apachectl start’ >> /etc/rc.local

This is unnecessary. Instead, do:

Code:
echo 'apache22_enable=YES' >> /etc/rc.conf

That's assuming, of course, that you're using apache 2.2. If not, you'll have to adjust that to whatever version of apache you're using. Then, simple execute:

Code:
/usr/local/etc/rc.d/apache22 start

Again, assuming you are using vesion 2.2 of apache.

YMMV
 
My trouble with *nix is discoverability.
If not for your reply, how would I know about "rehash".
I agree with RTFM, but the whole thing would take a year or two.
 
The rehash is a legacy of the original csh, which would scan the path for executables at startup. Helped with performance in the days of 4BSD running on a VAX with maybe 256 KB of memory, but really not necessary today.

Neither ksh (my personal preference) nor bash has this behaviour. I do wish FreeBSD would switch to one of those as its default shell.

As for getting up to speed, and not just on desktop environments, my longtime recommendation is UNIX for the Impatient:
http://www.amazon.com/UNIX-Impatient-2nd-Paul-Abrahams/dp/0201823764
 
Back
Top