Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 Mar 2003 23:11:48 +0200
From:      Giorgos Keramidas <keramida@ceid.upatras.gr>
To:        "Jorge Mario G." <list@linopryne.com>
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: why BIND and sendmail installed by default?
Message-ID:  <20030312211148.GA21463@gothmog.gr>
In-Reply-To: <1598.192.168.0.4.1047484743.squirrel@mail.linopryne.com>
References:  <1598.192.168.0.4.1047484743.squirrel@mail.linopryne.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2003-03-12 10:59, "Jorge Mario G." <list@linopryne.com> wrote:
> Hi there

Hello.  I see that knowledgeable people have already answered this,
but I'll try to put a little more detail in the lot.

> I've seen that BIND and sendmail (till 4.7-RELEASE havent tested 5.0
> yet) are installed by default my question is simple... WHY?

Because there is a large percentage of the FreeBSD users around the
world that *do* find them useful on a newly installeed machine.  One
could argue that parts of the base system are redundant and bloat the
basic installation, increasing the disk space requirements for a new
FreeBSD install.  And then, another could argue that DNS and mail are
really very, *very*, basic services that a Unix machine should be
ready to serve without having to go through tons of ports/packages
just to install bind.

This can go on forever.  Do we really need to argue about what parts
or functionality should remain in the base system and functionality
that is "not necessary for a Unix system" forever?  No, not really.

> I see this from a end user point of view (mine):
>
> Do I need a name server or DNS "chaching" server???
> - Nop, my ISP provides me that

You don't "need" one, in the sense that things will suddenly stop
working.  You can always configure your /etc/resolv.conf file to
lookup hostnames and addresses using the caching DNS server of your
provider.  However, keep in mind that FreeBSD is not an operating
system that is installed only on machines connected to the Internet.

Bind in the base system is not that bad:

    - Installations at some places might not have access to a public
      DNS server, being unconnected to an ISP, but still have to serve
      a local network with host names/addresses.

    - The name server is disabled by default.  YOu have to manually
      enable it, in order to have it run.

Are you being worried too much about disk space here?

> Do I need a my own mailserver???
> - No, we have yahoo.com :-)

Yes you do.  You might have a yahoo.com mail account, but a Unix
system needs to be able to send mail at least locally.  Parts of the
periodic scripts that others have referred to need a working
installation of mail.  You can always tweak /etc/periodic.conf and
disable those messages.  But if you go down that route, and start
tinkering with *.conf files, why not rc.conf instead and make sure
that only local mail works correctly (as described in the
rc.sendmail(5) manpage)?

Even better, why not configure Sendmail and have it work flawlessly
receiving mail from local programs and forwarding outgoing mail to
your ISP's mail gateway?  This way you will find it a lot easier to
just point mail user agents (MUA) like pine, mutt, gnus, vm, netscape,
mozilla, or pretty much anything else to use /usr/sbin/sendmail for
mail delivery and after a few tests that reassure you that it all
works, you can simply 'forget about it'.

As a user you don't 'know' what Sendmail the daemon is.  You only know
that /usr/sbin/sendmail Just Works(TM).

> Now I from the sys admin point of view (mine):
> Do I need a DNS server???

Probably.  It tends to speed things a bit.  If you can spare a few
cycles and a bit of memory, you should definitely consider the option.

> YES, but I usually grab the lastest version, and the default install
> does not suit to our needs...

Whose default install?  If you mean the version of bind that comes
with FreeBSD, you can always ask the BIND maintainer of FreeBSD for
newer versions of BIND.  He has a few very good points to make. . .

If you mean that the default installation of BIND doesn't suit your
needs, then you can easily disable it from rc.conf.  Moreover, if you
are certain that you don't need BIND at all, you can use NO_BIND in
your `/etc/make.conf'.  Using a small 200-300 MB partition as
temporary root, you can even install a clean system that contains
*only* the bits you want.  But this is a relatively complicated
exercise that I'll leave to all the adventurous folks out there :)

> Do I need mail server?
> YES, but I dont use sendmail, or I dont like the default install, it
> doesnt suit to our needs etc...
>
> Yes, I know you can "remove" sendmail and bind adding a couple of
> line to the make.conf file but still doenst answer my questions

Using the small partition temp root for bootstrapping a full system
that uses NO_SENDMAIL and NO_BIND in make.conf then is a good option.

I don't have a disk to spare now, but when I find one that is larger
than a few hundred MB and can accomodate the base system, a full
checkout of /usr/src and /usr/obj (roughly 1 GB should be fine), I'll
probably try to build a system with NO_BIND and keep notes of the
process.

With a spare partition /dev/ad0s2a that can be used as a temp root
directory the process should be as easy as:

	- boot from /dev/ad0s1a
	- mount all partitions as usual

	- edit /etc/make.conf and add NO_BIND=yes
	- buildworld && buildkernel

Now we have something to install.  Prepare the destination partition
for the installation:

	- newfs and mount /dev/ad0s2a under /mnt

Install it all:

	- make DESTDIR=/mnt installkernel
	- make DESTDIR=/mnt installworld

Tweak /mnt/etc files:

	- rm -fr /mnt/etc
	- cp -Rp /etc /mnt/etc
	- mergemaster -D /mnt/etc
	- edit /mnt/etc/fstab and update to point to /dev/ad0s2a for
	  our root filesystem (leave the other partition entries
	  commented out)

Reboot into /dev/ad0s2a.

You should now be in a root filesystem that has NO_BIND.  Test things
a bit, and if they seem to work fine, you can use /dev/ad0s2a as your
root and /usr partitions until you have a chance to install a NO_BIND
world and kernel to your original /dev/ad0s1a root tree.

Another approach that you will probably find useful is the one
outlined in the ``FreeBSD From Scratch'' article:

    http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/fbsd-from-scratch/

I hope all this helps a bit . . .

- Giorgos


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030312211148.GA21463>