Subject: UUCP-NEWS-MAIL-FAQ: Linux UUCP/News/Mail Frequently Asked Questions
From: [email-masked] (Vince Skahan)
Date: Wed, 21 Apr 1993 12:46:26 GMT
Newsgroups: comp.os.linux.announce

Last modified:  April 20, 1993

[... this is basically a repost with a few minor modifications ...]

Introduction
------------

It seems that the same questions regarding the design philosophy and the
care-and-feeding of uucp, mail, and news software keep coming up as people
join the list of Linux users who want to get their systems attached to
Internet or USENET.

The intent of this document is to answer some of the questions and comments
that appear to meet the definition of 'frequently asked questions' regarding
uucp, mail, and news software and Linux in general (and the versions in the
SLS distribution in particular).

Comments, corrections, and suggestions (via e-mail only) are welcomed...

Caveats
-------

Please do not even bother to try to become a *nix USENET site unless you're
willing to try to learn a lot.  It's not trivial if you're not willing to make
the effort.  If you spend that time at the beginning, you can run a
full-fledged site with almost no sustaining labor required.

For what it's worth, I recommend that all USENET admins:

	1. read the news.admin hierarchy and news.answers.
	2. learn what's in the 'how to find sources' FAQ and how
		to get sources, files, and FAQs via e-mail, uucp, and ftp
	3. lean on your more experienced uucp neighbors to help you
	4. participate in the news.* hierarchy and the comp.mail.*
		hierarchy on USENET.  Just reading them will eliminate
		most of the frequently-asked-questions you'll come up with.
	5. buy 'Zen and the Art of Internet' or the 'Whole Internet Guide'
		from a local technical bookstore so you learn what you're
		connecting to.
	6. buy 'Managing UUCP and USENET', which is, in my opinion, the
		best book out there for figuring out the programs and
		protocols involved in being a USENET site.
	7. buy 'Unix Communications' for a nice description of all the
		pieces (and more) and how they fit together.
	8. read 'How to Become a USENET Site' in news.answers before you
		go to the trouble of becoming one.
	9. realize that you'll be lost at the beginning and don't let it
		bother you.  

WARNING !!!!!!!
----------------

Please don't expect the care and feeding of USENET uucp, news, and mail to be
spoon-fed to you.  It won't happen.  You'll need to spend time learning.

You should probably spend money buying some of the fine books out there for
the reading.  Please don't think that this is Prodigy or something where
somebody gives you preset software and a phone number and you're online.

Software currently known to work with Linux
-------------------------------------------

SLS v1.01 currently contains the following:

	UUCP 		- Taylor UUCP 1.04
	News transport	- Cnews 12/22/91 patchdate (no 'optional' speedups)
	News readers	- tin-1.1r8, trn-2.5, nn-6.4.18
	Mail transport  - smail3.1.28 with uucp and smtp support built-in
	Mail program	- elm2.4.21 with domainized headers built-in

	[... tin1.1p9 has been made available to Peter, but it has not yet
	been updated in SLS as of this writing.  Look in the newspak directory
	on sunsite.unc.edu if you want the SLS kits for them immediately...]

Other software known to work under Linux, but not currently available in
the SLS distribution:

	nntp		- nntp 1.5.11 'reference' release, slurp v1.05
	nntp readers	- tin-1.1p9 at least, maybe trn/waffle/nn also
	newsreaders	- trn3.0_beta, tass
	inn		- INN v1.4 with some editing required
	Cnews		- current 'performance' release (with patching)
	mail transport	- sendmail5.65c+IDA, smail2.5
	others		- dynafeed

Paths used
----------

0. Where did those lame paths come from ?

	The paths in the SLS distribution are the 'SLS standards', which means
	that some people like them, some people don't.

	For what it's worth, I'm not totally thrilled with the paths in SLS
	either, but I'm providing the software to him with the paths he
	requested (as a result of one of the c.o.l. flame-wars-from-hell
	regarding everybody's religious views on "the one true directory
	structure").

	Consider living with the paths used in SLS until you get to the point
	where you want to build everything from sources.  It's a small price
	to pay in order to get a 'plug-and-play' system.

1. I don't like the paths you used.  What can I do about it ?

	It's your system.  You can do anything you want with it if you're
	willing to spend the time to learn how to do so...

	Get the sources and set them to whatever you'd like.  Using a binary
	editor to set the pathnames is *NOT* recommended since there are paths
	in many binaries, config files, and shell scripts.  It's unlikely that
	you'll find them all.

	The config files used for all of the news/mail/uucp programs in SLS
	are available on sunsite.unc.edu as newspak14.taz

2. But now that I changed the paths in part-A, something else doesn't work...

	As the saying goes..."you broke it, you bought it".  If you change the
	paths, change all the pieces to match (or add symbolic links).

UUCP
-----

0. How does uucp work ?

	Please run...do not walk...to your local technical bookstore and pick
	up a copy of any or all of the books mentioned at the top of this
	article.

	HDB and V2 UUCP are incredibly well documented in about every book you
	can find on *nix communications and you'll find that in general you
	can follow the instructions in your favorite *nix vendor's manuals.

	Taylor uucp is documented in the /usr/local/emacs/info/uucp* files
	(that's where they are here at least) in 'info' format.

	[...anybody care to clue me in regarding which pieces of the SLS
		tex/info disks you *NEED* to read them without requiring
		X-windows and under X if you want to mention that too...]

	If you have questions regarding the care-and-feeding of uucp, please
	take them to the comp.mail.uucp group that's designed for such
	questions.

1. Why is SLS uucp configured in HoneyDanBer mode rather than 'Taylor' mode?

	Because IMHO it's the de-facto standard UUCP implementation at
	this time.  There are thousands of sites with experienced admins
	and there are many places you can get incredibly good information
	concerning the HDB setup that include:
		- many, many vendors' networking and uucp docs
		- the normal *nix magazines and periodicals
		- the fine (!) O'Reilly and Associates handbooks

2. But I want Taylor mode, dammit!

	The uucp-1.04 that's in SLS v1.01 has all three modes of config files
	built in.  While I can't test it, I did 'rtfm' and Ian Taylor tells me
	that what I did should work.  Please let me know...

	The search order for config files is Taylor...then V2 (L.sys)...  then
	HDB.  Use the uuconv utility in /usr/lib/uucp to convert config files
	from one mode to another.

	If you can't wait, grab the sources for uucp and specify
	HAVE_BNU_CONFIG, HAVE_V2_CONFIG *and* HAVE_TAYLOR_CONFIG in the
	policy.h file and type 'make'.

3. Why do I get 'timeout' on connections when I upgraded to uucp-1.04 ?

	[... from Ed Carp - [email-masked] ...]

	If you use a 'Direct' device in the Devices file, there's now a
	10 second timeout compiled in.  Make the name of the Device anything
	other than 'Direct'.

4. Sample config files

	Working HDB mode config files for kernels of 0.99-4 and before are in
	the SLS distribution.

	[...anybody want to kick me vanilla Taylor and V2 style config files
		for a 'normal' modem calling a 'normal' system please feel
		free to do so...]

Newsreaders
-----------

0.  What newsreader is best ?

	No way I'll open that can of worms other than to say that you
	definitely want something with "kill files" and probably want
	something with 'threads'.  

	All the newsreaders in SLS have both in one form or another. 
	For what little it's worth, I use 'nn'.

	In general, please take your newsreader questions to one of the
	following groups:
		news.software.readers - covers all newsreaders
		news.software.nn      - for the 'nn' reader specifically

	Multiple newsreaders are provided in SLS because people have different
	tastes.  You only need one newsreader installed if that's all you
	use...

1. trn - why do I get the message 'dbinit failed' ? 

	Because you didn't run mthreads from cron to keep the threads database
	up-to-date.  This may be less of an issue when trn3.0 comes out.

2. nn - why is my database getting continuously corrupted ?

	If you built it from sources and you asked for the 'words' method of
	building the database,  it will definitely get corrupted if your
	filesystem doesn't handle long filenames (ie...comp.os.linux.announce
	is more than 14-characters).  Build it with the 'by-number' way of
	creating the database and you'll be fine.

3. I can't post to moderated groups, why ?

	Probably because the newsreader is trying to call /bin/mail to send
	the mail and it doesn't like it.  Replace the /bin/mail in SLS with
	the port of mailx-5.3a.tar.z from the pub/Linux/system/Mail dir on
	sunsite.unc.edu and make it mode 2755 and group mail (like 'elm') and
	you'll be all set.

	Another possibility is that you have a moderated newsgroup set up on
	your local system as not-moderated and somebody upstream is quietly
	deleting the article (some system's software, not a person).  Make
	sure you run a 'checkgroups' every now and then when the checkgroups
	article rolls by in news.admin every few weeks.

	[...a workaround is to mail to [email-masked] where the fake
		username is the newsgroup name with all '.' characters
		replaced by a '-'...]

News Transport
--------------

0. How do I run C-news software ?

	Once again, drop a dime for the book(s) above.  Questions regarding
	C-news should go to the news.admin hierarchy of groups or to
	news.software.b and not to comp.os.linux.

1. Why do I have problems that appear to be permission-related ?

	Because at last checking, SLS doesn't have a 'news' username or group
	in the default passwd/group files.  This has been identified to Peter
	as something that needs fixing.

	All the stuff in /usr/local/lib/news should be news.news except
	/usr/local/lib/news/setnewsids which should be setuid root.

	You can use whatever UID and GID you want for 'news'.

2. Why can I post articles locally, but they don't get fed downstream ?

	Probably because you didn't call newsrun from cron.  Maybe because you
	edited your sys file and messed it up.  There are examples of each in
	the SLS /usr/local/lib/news directory.

	Do not create newsgroups or feeds by editing the active or sys files.
	Use the utilities in /usr/local/lib/news/bin/maint to do it.

3. Why doesn't SLS have the 'Performance Release' of C-news?

	Because it's optional.  Because it has problems under Linux in some
	places.  Because the one in SLS is more stable and plenty fast enough
	on any type of reasonable system (IMHO). 

4. Why doesn't SLS have nntp ?

	Because it's supposed to be plug-n-play under Linux and because I
	didn't want to make SLS's news stuff doubly big by having to maintain
	both nntp and non-nntp versions of the newsreaders and news transport
	programs.

5. Why doesn't SLS have INN ?

	Because it's too new and hasn't settled down totally yet (IMHO).
	It works with some patches required from what I hear.  Also because
	C-news seems to be the current 'standard'.

6. Why does doexpire (or relaynews or...) say "severe space shortage" when
	there's lots of room ?

	Because it can't read /etc/mtab.  Make it mode 644.  This happens
	when you unmount a mounted filesystem by root with a umask that
	doesn't permit world-read of files owned by root.

Mail and Mail Transport
-----------------------

0. How do I get my system a mail feed ?

	Sigh...please see the "how to become a USENET site" periodic posting
	in news.answers

	Questions regarding 'elm' should go to comp.mail.elm with smail
	questions going to either comp.mail.uucp (I guess) or the smail
	mailing list [...anybody have the address to get on that thing?....]

1. Why is my hostname.domainname not in my headers and something funky's there ?

	Because you didn't edit one or more of the following files like the
	README.linux files in the lib directories told you to:

		/usr/local/lib/smail/paths
		/usr/local/lib/smail/config
		/usr/local/lib/elm/elm.rc 

2. How can I run smail as a smtp daemon ?

	[...from Martin White - [email-masked]...]

	On my system, I've included the following line in the file
	'/etc/inet/inetd.conf' so that when a remote host trys to deliver mail
	to me, inetd starts up smtpd, which delivers the mail and shuts itself
	down afterwards.

	smtp stream tcp nowait  root  /usr/bin/smtpd smtpd

	Outgoing mail gets sent automatically, when using elm. If my internet
	link is down when I send mail (it's a dialup link), then the mail sits
	in '/usr/spool/smail/input'. When the link next comes up, 'runq' is
	run which causes the mail to be sent.

3. Why don't some of my aliases seem to work in certain cases ?

	Because the /bin/mail in SLS isn't from smail and it uses a different
	aliases file.   There is a port of mailx on sunsite.unc.edu in the
	pub/Linux/system/Mail directory that is a wonderful drop-in
	replacement for the /bin/mail in SLS.  I highly recommend it.

	SLS's smail uses /usr/lib/aliases for the aliases file. 

	Remember that elm aliases (/usr/local/lib/elm/aliases.text) are only
	good for 'elm' and that smail (or sendmail) aliases are *always* in
	effect.

5. Why don't the smail 'utilities' work ?

	Because you have the old 'broke' smail from SLS that got in there
	before the following answer appeared.  The current SLS smail should be
	ok.

	[... from Ralf Sauther - [email-masked] ...]

	If you're building smail from sources, you need to have
	CASE_NO_NEWLINES=true in your os/linux file.

6. Why can't elm write to my mailbox ?

	You need elm and filter to be mode 2755 and group mail
	and also have /usr/spool/mail mode 775 and group mail.

7. What should my config files look like?

	That's a big subject :-)

	For a uucp-only system that has a MX-record and that wants a
	domainized header (who goes through a smart-host for everything),
	these are the entire config files you'll need:

	replace 'subdomain.domain' with your domain name
	replace 'myhostname' with you un-domainized hostname
	replace 'my_uucp_neighbor' with the uucp name of your upstream site

	#-------- /usr/local/lib/smail/config -----------------
	#
	# domains we belong to
	visible_domain=subdomain.domain:uucp
	#
	# who we're known as (fully-qualified-site-name)
	visible_name=myhostname.subdomain.domain
	#
	# who we go through
	smart_path=my_uucp_neighbor
	#
	#---------- /usr/local/lib/smail/paths --------------
	#
	# we're a domainized site, make sure we accept mail to both names
	myhostname        %s
	myhostname.subdomain.domain      %s
	#
	#---------- /usr/local/lib/elm/elm.rc ------------------
	#
	# this is the unqualified hostname
	hostname = myhostname
	#
	# this is the local domain
	hostdomain = .subdomain.domain
	#
	# this is the fully qualified hostname
	hostfullname = myhostname.subdomain.domain
	#
	#--------------------------------------------------------

So where are the sources ?
--------------------------

Since stuff compiles so cleanly, in general you just need to get the config
files and apply them to the vanilla sources.  Look in the newspak directory on
sunsite.unc.edu for the README.linux guides and the config files you'll need.
There are very (!) few patches needed these days to get uucp/news/mail up and
running.

Once you get the binaries working, it's well worth your time to actually build
them from the sources.  There is considerable documentation in the sources
that doesn't get "installed" that helps fill in the blanks between what you
need to know, and what you can figure out.

Also, being able to build them from the sources allows you to be able to do
things like upgrade to more recent patchlevels and/or change the paths used to
fit your schedule and needs if (and only if) it's worth it to you.

-- 
     ---------- Vince Skahan --------- [email-masked] ----------
                     +++ A Waffle Iron - Linux Division +++