|
COMPUTING AT CHAOS MANOR Jerry Pournelle Saturday, June 16, 2001 |
A long letter about Open Source (Free BSD) vs.
Linux I thought would go better over here. It is well worth your
attention, and I will have more to say about it when I get back to
Linux, which will happen fairly soon, except that I have fiction
concerns just at the moment (July 1999). This is a good discussion with
sources.
From:
Daniel C. Sobral <dcs@freebsd.org> Subject:
Open Source vs Linux First, let me warn you this is a long, long
letter. It has two parts. First, I discuss about Linux and other Open
Source operating systems. Then, I spend a lot of time discussing FreeBSD
installation, and how to get information (support) for it. With the
later I hope to make the point that FreeBSD, not Linux, may be for you.
With the former (FreeBSD installation), I hope to make you confident
enough to try it once. All this is rather long, though. But since I * like to make the first point on your mail page, I
have inserted a “cut” point at which you can stop this mail in the
mail page. The full copy of it my be put under a link to a page of
it’s own, or you might just keep it to yourself. I have been reading your site for some time now,
and one thing that has been amusing me is the constant mention in the
letters of Linux to the exclusion of all other open source/free
operating systems, be them Unix or not. Some even do some outrageous
statements, like saying Beowulf on Linux is the only cluster computing
solution available (that’s not true even if you restric that to intel-based,
open source, free Unix-like operating systems). And while many alternatives out there are not by
a far margin adequate for either desktop computing or general use
servers, they are far better than Linux in many of the embedded/turn-key
systems to which Linux has been suggested. Even more interestingly, Linux is praised as a
solution because it’s an open source operating system, but this is
done in a way that in no way suggests that Linux is not the only one
available. So, though I have stayed away from all this
discussion so far, I decided at last to make a suggestion. You have had
trouble with Linux before, and maybe that has to do with the chaotic
nature of Linux, so maybe you would consider experimenting with
something else, less chaotic, and still Open Source Unix? I suggest FreeBSD. FreeBSD is a descendant of the
original Unix, and, perhaps more importantly, a direct descendant of the
Berkeley version of it, the BSD, in which originated most of the key
features of Unix. And it also has amongs it’s developers some of those
who worked on the the earlier BSD versions. But it is not its lineage that makes me recommend
it, and nor even my own association with it, but it’s more
“centralized” and “ordered” development, which gives it a
consistency that many have come to appreciate. I won’t claim that Linux doesn’t have
advantages over FreeBSD in certain aspects, nor that FreeBSD can compete
with it in availability of user-friendly administration tools or
hardware support. We do avoid to a large extent, though, some of the
“valleys” Linux have. And being, in a sense, more centralized,
you’ll have a much easier time getting answers to your questions. So, in the hopes that you give it a shot, let me
give you a brief tour. I don’t expect you to be replacing Windows with
it any time soon, but I honestly think you might have better luck with
it than with Linux (which will bring the hate of the Linux horde upon
you, but hey... :). All the information below can be found navigating
from --- CUTTING POINT --- The Starting Point Your jorney will begin at http://www.freebsd.org.
Please take a few moments to see what this page offers you. From here
you can find out more about what, exactly is FreeBSD, get latest
announcements, get the software itself, check out the documentation, see
what support resources are available, and a some other useful links. Now, if you feel a sudden urge to install it
right away because you were bewitched by our mascot (or any other reason
:), and given that installing it through the net is an easily
accomplished task, I’d suggest the following stops: First, under the heading of Software on the left
side of the page, you’ll find “Release Information” (http://www.freebsd.org/releases/).
Go there first instead of the first item, Getting FreeBSD. Examine the
Announcement, Release Notes and Errata for the latest version
(presently, 3.2). Though some of it will will seem arcane to you, there
are much useful information in there. In particular, pay attention to
the hardware compatibility list. Having gone through that, and insured that your
hardware will be supported, proceed to Getting FreeBSD (http://www.freebsd.org/handbook/install.html).
As a brief note, this is part of what we call The Handbook, which, along
with the FAQ and the man pages, is the official documentation for
FreeBSD. The easiest way to install FreeBSD is booting
it’s cd-rom distribution. Let me describe, though, how you proceed to
install it getting everything from the network. As pointed out in ftp://ftp.FreeBSD.ORG/pub/FreeBSD/3.2-RELEASE/floppies/README.TXT,
you need to generate two disks. What is shamefully not as obvious is
that the files you need to get are: ftp://ftp.FreeBSD.ORG/pub/FreeBSD/3.2-RELEASE/floppies/kern.flp ftp://ftp.FreeBSD.ORG/pub/FreeBSD/3.2-RELEASE/floppies/mfsroot.flp ftp://ftp.FreeBSD.ORG/pub/FreeBSD/3.2-RELEASE/tools/fdimage.exe The later is the program used to generate the
disk images from DOS, and use as input the former two files. Though a
link is present in the above document for the fdimage program, links to
the other two files are missing for a number of reasons (which,
nevertheless, still makes uninitiated’s life harder). Since this installation is being done through the
net, though, it might be preferable to install the latest daily
“snapshot” of FreeBSD, containing all improvements and bug fixes to
that day. These
“snapshots” are located in ftp://releng3.FreeBSD.org/pub/FreeBSD/snapshots/i386/.
There are “current” and “stable” snapshots. You want the
“stable” snapshot (“current” is the “live” development
tree). For example: ftp://releng3.FreeBSD.org/pub/FreeBSD/snapshots/i386/3.2-19990716-STABLE/floppies/kern.flp ftp://releng3.FreeBSD.org/pub/FreeBSD/snapshots/i386/3.2-19990716-STABLE/floppies/mfsroot.flp for the latest “stable” snapshot at the time
of this writing (July 17, 1999). Once the disks have been generated, a rather
brief description of what is expecting you can be found at http://www.freebsd.org/handbook/x777.html.
Four years ago, our installer was without a doubt the best available for
any free operating system (which were not known as “open source”
then). Unfortunately, it
has evolved some, but not gone through a revolutionary change that is
needed to place it at the top again. Still, it does provide a “novice” install
which guides you through all steps, and has reasonable defaults
throughout. In addition, you can get help on a particular screen by
pressing F1. Before going ahead, I recommend having between 1
and 2 Gb for the installation. I do get by with some 600 Mb even being a
developer, but at the cost of doing away with many niceties. I’ll describe, now, what to expect of the
beginning of the installation. For lack of disk space to make an actual
installation, I cannot provide a full description to the end of it. I
won’t enter in details, but will give a few tips. Insert the first disk (kern.flp), reboot, change
disks when asked. At some
point you’ll be presented with the option of skipping kernel
configuration or starting it, in either full-screen visual or cli mode.
Start the full-screen visual kernel configuration. A tree of devices
will be presented to you. You can use this opportunity to configure or
remove ISA devices. I recommend removing any ISA device not present, to
avoid any probe problems (the probes are generally non-intrusive, but
problems can happen with ISA devices). Then press Q to save and exit. After the boot is completed, a menu of options
will be offered. Check the
first option, Usage, which provides a guide to the interface. Then,
select the next option, which is the Novice install guide. Unless you
explicitly tell it so, and then confirm, nothing will be committed to
disk during the following steps I describe. First, you find yourself at the “slice”
editor (what MS software calls “partition editor”, fdisk—see
below). Remove any partitions you wish to remove to gain space, and make
one for FreeBSD. You can either use A (use all available space) for
short, or move the cursor to a free space on the partition list, type C
and enter the size in megabytes (eg, 800M). There is an option for
“bad block scan”, which had it’s usefulness in a distant past, but
should be avoided nowadays. Press Q to exit the slice editor and
continue. You are then presented a number of options of how
to deal with the master boot record. I recommend installing the FreeBSD
boot manager, which does not take any space on the disk and is reliable. Next, you are in the partition editor. This is
where you set up the Unix partitions. These being much older than PC
standard partitions, it was once decided to keep their name, and rename
the PC partitions to “slices”. Any change at this point in time
would result in total chaos, so... Here, just press A to choose
reasonable defaults. Q to exit the partition editor and continue. Next, you need to choose what to install.
(Notice: the interface gets confusing at this point—select things by
pressing *, as ENTER will finish this step). A few pre-defined
sets are available. The average user ought to choose X-User. He will be
asked if DES is desired (probably not), and if ports collection is
desired (you bet). Next, details about the X server set to be installed
are asked. Go through the Basic, Server and Fonts sets, and selected
whatever is wanted. The defaults are reasonable and will work, but at
the very least one ought to examine the Server to install the driver for
his graphic card. Finishing with this leds back to the pre-defined sets
menu. A nosy user may want, now, to select Custom, and
maybe install a few more things. Like GAMES, so you can have
“fortune” (if you do not know “fortune”, run “/usr/games/fortune
-a” once FreeBSD is installed—you’ll be an instant convert).
CATMAN is also a good choice, for it speed up man page viewing at
the cost of disk space. And,
finally, I recommend SRC (and then select ALL in the next menu), for a
number of reasons that will become clear once you become used to FreeBSD
(you won’t be expected to edit or even examine the source code, rest
assured). You can also select ALL from the main screen,
which will install the kitch sink, though I doubt anyone needs
everything. After you are satisfied with what you selected, exit this
screen. Now, you are presented with a number of possible
media of installation. If installing from the net, I recommend chosing
FTP Passive, even if you are not behind a firewall. Choose a site from
the list of mirrors. “Primary Site”, on the top, will do, of course,
unless you are installing a stable snapshot. In the later case, choose
the Stable snapshot repository. If installing through FTP, you’ll then be
presented a number of ways of connecting to the internet. Network will
be the easiest one. You’ll
need the address of the gateway, the nameserver, and an IP address for
your own machine (version 3.2 still can’t get that from a DHCP
server). In case of modem connection, PPP is probably your choice. This
gets arcane, though... You’ll be asked to fill in host name and domain
(a false one will do for installation), name server, gateway, ip address
and netmask (as with network installation), though you can leave the
gateway address blank, and enter 0.0.0.0 for the ip address (and keep
the default netmask) for it to be automatically choosen. You’ll be
asked serial port speed (default usually works), and remote ip address
(use 0). And this is the real arcane part. Pressing ALT-F3
you’ll find yourself at the ppp program. Hopefully, typing the
following lines will work: set phone ####### (number of your isp) set authname ...... (your username at the isp) set authkey ...... (the password at the isp) dial If it does not work, you might want to read ppp
documentation at: (you can generate a postscript version of this
document, if you want a neat printout) When your connection is established, ppp’s
prompt will change from ppp> to PPP>. At this point, press ALT-F1
to go back to the installation screen and press enter. At this point, you’ll be given a last chance to
abort the installation. If you confirm you want to go ahead, information
will begin to be written to the disk. During this phase, you can type ALT-F2 to check
the installation messages, or you can type ALT-F4, which you put you in
a shell prompt. ALT-F1 returns you to the main screen. If all goes well, you’ll then be presented with
the final steps of configuration. In no particular order, you’ll be
offered an immense list of third-party software to install (over 2000
programs, fortunately divided into categories :). You can do this no
matter whether you chose cd-rom or ftp install (or any of the other
types, though they require more setup). You’ll also be asked what servers you’ll like
the system to be started up with (like DNS, NFS, FTP), though the
average user most likely can leave this unchanged. You’ll be asked to
enter the root password, and a few non-essential information. This concludes the installation, which, as you
know pretty well, is just the beginning of the REAL problem. You want to
So, what are the resources available? How do you
find out how to do things? Well, the “Documentation” heading in FreeBSD
home page offers a number of options. In particular, http://www.freebsd.org/projects/newbies.html
says everything I’m going to say below, in a better and more detailed
way, plus more. -) The Handbook, at http://www.freebsd.org/handbook/index.html,
is our standard documentation. This does not describe the syntax of the
commands, but, rather, explain things about FreeBSD, FreeBSD
organization, and how to do a number of tasks. It is recommended to
spend some time perusing it, and reading whatever attracts your
interest. Next, the FAQ at http://www.freebsd.org/FAQ/FAQ.html.
Though it has a tendency to story outdated information, it does contain a lot of really Frequently Asked Questions. I
know this, because I keep refering people to it in answer to their
questions (or just quoting it)... :-) The description of the syntax of each command, the
format of the files, functions used to program, etc, etc, etc,
can be found through either the command “man” or it’s web
interface at http://www.freebsd.org/cgi/man.cgi?manpath=FreeBSD+3.2-stable There is also the “apropos” command, which
provides a list of man pages whose subjects contains one of the keywords
specified. This can also be done through the above web interface. Other documentation resources can be found at http://www.freebsd.org/docs.html.
In particular, The FreeBSD Diary (http://www.freebsddiary.com/freebsd/)
is a superb resource. It has a detailed diary of a (once :) novice to
FreeBSD, rich in cross references and with a nice index by topics. Kind
of reminds me of your own column, Mr. Pournelle. :-) It goes all the way
down to the exact steps necessary to perform a procedure or set up a
service. All of this is non-interactive, though. So, what
if you want questions answered? First and foremost, freebsd-questions@freebsd.org
and freebsd-newbies@freebsd.org.
Send any questions to the former list. New comers might want to
subscribe to the later list. A number of other lists exist and are
described at http://www.freebsd.org/handbook/eresources.html#ERESOURCES-MAIL. Finally, interactive help is available at the
channel #freebsd on EF Net. (Using MIRC (for Windows), which can be
found through www.download.com,
can get one using irc with a very shallow learning curve.) Of course, there are many other resources I have
not mentioned. All of which can be found by navigating at FreeBSD home
page. I hope I have convinced you to give FreeBSD a
shot. I do not expect to make a user out of you, but some people who
would be better served by FreeBSD might be getting uneasy about Linux
through your columns, and they do deserve to know there -- Daniel C. Sobral
(8-DCS) “Misguided Angel hanging over me Heart like Gabriel, pure and white as ivory Soul like Lucifer, black and cold like a piece of lead...”
|
|