- SGMLify the wiki's 'Why Use FreeBSD?' article into a new article in the
advocacy section of the website. - Add the new article to the Makefile. - Add a link to it and some description of it to the advocacy index.sgml. Submitted by: users on -stable, via theraven SGMLified by: issyl0 Reviewed by: gabor Approved by: gabor (mentor)
This commit is contained in:
parent
84e6defe68
commit
2f29f33785
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=39033
3 changed files with 214 additions and 1 deletions
|
@ -11,5 +11,5 @@
|
|||
|
||||
DOCS= index.sgml
|
||||
DOCS+= myths.sgml
|
||||
|
||||
DOCS+= whyusefreebsd.sgml
|
||||
.include "${DOC_PREFIX}/share/mk/web.site.mk"
|
||||
|
|
|
@ -23,6 +23,12 @@
|
|||
|
||||
<h2>Web resources</h2>
|
||||
|
||||
<ul>
|
||||
<li><p><a href="whyusefreebsd.html">Why Use FreeBSD?</a></p>
|
||||
|
||||
<p>Explanations given by existing users as to why FreeBSD should
|
||||
be used.</p></li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li><p><a href="myths.html">*BSD Myths</a></p>
|
||||
|
||||
|
|
207
en_US.ISO8859-1/htdocs/advocacy/whyusefreebsd.sgml
Normal file
207
en_US.ISO8859-1/htdocs/advocacy/whyusefreebsd.sgml
Normal file
|
@ -0,0 +1,207 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based
|
||||
Extension//EN" [
|
||||
<!ENTITY base CDATA "..">
|
||||
<!ENTITY date "$FreeBSD$">
|
||||
<!ENTITY title "FreeBSD Advocacy Project">
|
||||
<!ENTITY % navinclude.about "INCLUDE">
|
||||
<!ENTITY url.articles "../doc/en_US.ISO8859-1/articles">
|
||||
]>
|
||||
|
||||
<html>
|
||||
&header;
|
||||
|
||||
<h1>Why Choose &os;?</h1>
|
||||
|
||||
<p>Why would you consider using &os;? We think that there are
|
||||
lots of reasons. Here is a selection of reasons that some of
|
||||
our existing users gave for their choice of operating system.</p>
|
||||
|
||||
<h2>The Community</h2>
|
||||
|
||||
<p>&os; is a community-driven operating system despite it being
|
||||
sponsored corporately. &os; has active mailing lists,
|
||||
forums, and IRC channels where experienced users and
|
||||
developers are always willing to help the less
|
||||
experienced.</p>
|
||||
|
||||
<p>The community is largely driven by technology, not ideology,
|
||||
and is focused on building the best possible system and making
|
||||
&os; as widely used as possible, not on pushing any other
|
||||
agendas.</p>
|
||||
|
||||
<p>There is no dictator—benevolent or
|
||||
otherwise—for the project. The Core Team is elected and
|
||||
is nominally responsible for overseeing the goals of the project,
|
||||
but this is a very light touch. Core mediates disputes between
|
||||
developers, but rarely needs to take an active role in
|
||||
development, beyond their separate contributions as individual
|
||||
developers.</p>
|
||||
|
||||
<h2>Stability</h2>
|
||||
|
||||
<p>Stability means many different things. &os; very rarely
|
||||
crashes (and when it does it is usually due to hardware
|
||||
faults), but while that was a great boast a decade ago, now it
|
||||
is an expected feature for any operating system.</p>
|
||||
|
||||
<p>Stability in &os; means much more than that. It means that
|
||||
upgrading the system doesn't require upgrading the user.
|
||||
Configuration interfaces do change over time, but only when
|
||||
there is a good reason. If you learned how to use &os; in
|
||||
2000, most of your knowledge would still be relevant.</p>
|
||||
|
||||
<p>Backwards compatibility is very important to the &os; team,
|
||||
and any release in a major release series is expected to
|
||||
be able to run any code—including kernel
|
||||
modules—that ran on an earlier version. The entire base
|
||||
system is developed together, including the kernel, the core
|
||||
utilities, and the configuration system, so upgrades are
|
||||
usually painless. Included tools like mergemaster help update
|
||||
configuration files with little or no manual intervention.</p>
|
||||
|
||||
<h2>Early Adoption and Collaboration With Other Projects</h2>
|
||||
|
||||
<p>&os; has been one of the first adopters of the LLVM
|
||||
infrastructure, including the clang compiler and the libc++
|
||||
stack. The entire &os; 9.x system, including kernel and
|
||||
userspace, can build with clang, and from &os; 9.1 both clang
|
||||
and the permissively-licensed libc++ are included, giving a
|
||||
modern, BSD-licensed C++ stack. Several &os; developers are
|
||||
also active contributors to LLVM, ensuring that both projects
|
||||
thrive together.</p>
|
||||
|
||||
<p>This same collaboration works downstream, with projects like
|
||||
PC-BSD and pfSense building on top of the &os; base to provide
|
||||
desktop and firewall oriented distributions, respectively.
|
||||
These projects are not forks, they base their work on the
|
||||
latest version of &os; and customize the system for specific
|
||||
uses.</p>
|
||||
|
||||
<h2>Simple Configuration</h2>
|
||||
|
||||
<p>&os; service initialization is very simple. Each service,
|
||||
whether part of the base system or installed from a port, comes
|
||||
with a script that is responsible for starting and stopping it
|
||||
(and often some other options). The /etc/rc.conf file
|
||||
contains a list of variables for enabling and configuring
|
||||
services. Want to enable ssh? Just add sshd_enable="YES" to
|
||||
your rc.conf file. This system makes it easy to see at a
|
||||
glance everything that will be started when your system
|
||||
boots.</p>
|
||||
|
||||
<p>The rc system that reads this file understands dependencies
|
||||
between services and so can automatically launch them in
|
||||
parallel, or wait until one is finished before starting the
|
||||
things that it needs. You get all of the benefits of a modern
|
||||
configuration system, without a complex interface.</p>
|
||||
|
||||
<h2>Ports</h2>
|
||||
|
||||
<p>The ports tree contains a large collection of third-party
|
||||
software, including older versions of some things where the
|
||||
userbase is divided about the benefits of upgrading, and a lot
|
||||
of niche programs. The chances are that anything you want to
|
||||
run which works on &os; will be there.</p>
|
||||
|
||||
<p>Unlike some other systems, &os; maintains a clean division
|
||||
between the base system and third-party ports and packages.
|
||||
All third-party software goes in /usr/local, so if you want to
|
||||
repurpose a machine then it's trivial to simply delete all
|
||||
installed packages and then start installing the ones that you
|
||||
want.</p>
|
||||
|
||||
<p>The upcoming pkgng tool makes working with binary packages
|
||||
even easier, although source installs are still supported for
|
||||
people who want the level of configurability that this
|
||||
implies.</p>
|
||||
|
||||
<h2>Security</h2>
|
||||
|
||||
<p>Security is vital in any network-connected machine. &os;
|
||||
provides a number of tools for ensuring that you can maintain a
|
||||
secure system, such as:</p>
|
||||
|
||||
<ul>
|
||||
<li>Jails, allowing you to run applications or entire systems
|
||||
in a sandbox that can't access the rest of the system. With
|
||||
tools like ezjail and ZFS you can instantly create a new
|
||||
jail with a clone of an existing system, using a tiny amount
|
||||
of disk space, and run untrusted code inside it.</li>
|
||||
<li>Mandatory Access Control, from the TrustedBSD project,
|
||||
allowing you to configure access control policies for all
|
||||
operating system resources.</li>
|
||||
<li>Capsicum, from &os; 9 onwards, allows developers to easily
|
||||
implement privilege separation, reducing the impact of
|
||||
compromised code.</li>
|
||||
<li>The VuXML system for publishing vulnerabilities in ports,
|
||||
which integrates with tools such as portaudit, so that your
|
||||
daily security email tells you about any known
|
||||
vulnerabilities in ported software.</li>
|
||||
<li>Security event auditing, using the BSM standard.</li>
|
||||
</ul>
|
||||
|
||||
<p>And, of course, all of the standard features that you'd
|
||||
expect from a modern &unix; system including IPSec, SSH, and so
|
||||
on.</p>
|
||||
|
||||
<h2>ZFS</h2>
|
||||
|
||||
<p>Cheap snapshots, clones, end-to-end checksums, deduplication,
|
||||
compression, and no need to decide partition sizes on install.
|
||||
Using ZFS for a few days makes going back to a more
|
||||
traditional volume manager painful. If you want to test
|
||||
something with ZFS, then it's trivial to just create a
|
||||
snapshot and roll back if it didn't work.</p>
|
||||
|
||||
<p>If you're using jails, then ZFS lets you clone an existing
|
||||
jail in under a second, irrespective of how big the jail
|
||||
itself is.</p>
|
||||
|
||||
<h2>GEOM</h2>
|
||||
|
||||
<p>Even without ZFS, &os; comes with a rich storage system.
|
||||
GEOM layers providers and consumers in arbitrary ways,
|
||||
allowing you to use two networked machines for
|
||||
high-availability storage, use your choice of RAID level, or
|
||||
add features like compression or encryption.</p>
|
||||
|
||||
<h2>Working Sound</h2>
|
||||
|
||||
<p>&os; 4.x introduced in-kernel sound mixing, so that multiple
|
||||
applications could play sound at the same time even with cheap
|
||||
sound cards with no hardware mixing support. &os; 5.x
|
||||
automatically allocated new channels to applications, without
|
||||
any configuration.</p>
|
||||
|
||||
<p>Now, &os; has low-latency sound mixing with per-application
|
||||
volume controls and full support for the OSS 4 APIs out of the
|
||||
box. There's no need to configure a userspace sound daemon.
|
||||
The same audio APIs that were used a decade ago still work on
|
||||
&os;, including some compatibility modes to allow
|
||||
applications that try to manipulate the global volume to only
|
||||
change their own. If you want to watch DVDs with 5.1 surround
|
||||
sound, just install your favourite media player and press
|
||||
play.</p>
|
||||
|
||||
<h2>My System, How I Want It</h2>
|
||||
|
||||
<p>&os; gives you an easy-to-use, working, &unix;-like system.
|
||||
This base system can then be extended easily. If you want to
|
||||
run KDE or GNOME, then just install the metapackage for the
|
||||
version that you prefer. If you want a headless server, then
|
||||
it's equally easy to install the server tools that you want.</p>
|
||||
|
||||
<p>It's easy to run the &os; installer via a serial port and to
|
||||
configure the entire system from the terminal. It's also easy
|
||||
to install and use an existing desktop environment. The
|
||||
decisions about the kind of system you want to use are left to
|
||||
you.</p>
|
||||
|
||||
<p>If you're deploying &os; in a corporate environment, then
|
||||
it's very easy to customise both the base system and the set
|
||||
of installed packages for your specific requirements. The
|
||||
build system provides numerous tuneable variables allowing you
|
||||
to build exactly the base system that meets your needs.</p>
|
||||
|
||||
&footer;
|
||||
</html>
|
Loading…
Reference in a new issue