xref: /csrg-svn/usr.bin/uucp/DOC/README (revision 17871)
113712SrootINSTALLATION GUIDE
2*17871SralphREADME	5.4	85/01/28
313712Sroot
417766SralphThis version is based on the "rti uucp" that was on the 4.2BSD tape.
517766SralphIt contains many additional  features and fixes from Usenet,
6*17871SralphTom Truscott, Guy Harris, Lou Salkind, and many others.
717766Sralph
817766SralphA few new subdirectories have been added. Do a "make mkdirs" to make
917766Sralphsure that you have all of them.
1017766Sralph
11*17871SralphI recommend that you change the uucp mail handler in your sendmail.cf
12*17871Sralphto something like:
13*17871Sralph
14*17871Sralph	# Muucp, P=/usr/bin/uux, F=sDFMhuU, S=13, R=23, M=100000,
15*17871Sralph	# 	A=uux - -r $h!rmail ($u)
16*17871Sralph	Muucp, P=/usr/bin/uux, F=sDFMhuU, S=13, R=23, M=100000,
17*17871Sralph		A=uux - -r -z -a$f -gC $h!rmail ($u)
18*17871SralphThe -a$f provides a return address in case mail fails (So It
19*17871Sralphwon't go to yourmachine!uucp anymore.) The -gC specifies a grade
20*17871Sralphfor mail. C is a good choice for mail. News should run at 'd'. This
21*17871Sralphway, mail gets sent before news.
22*17871Sralph
2317766SralphThe man pages now describe all the options for the various commands.
2417766Sralphmake sure you read them. A complete list of differences is too big to consider.
2517766Sralph
2617766SralphYou should also look through the UUAIDS directory. There are some useful
2717766Sralphprograms and hints therein.
2817766Sralph
2917766SralphRick Adams
3017766Sralphrick@seismo.ARPA
3117766SralphJanuary 14, 1985
3217766Sralph
3313712SrootTom Truscott, rti!trt,decvax!duke!trt (919)541-6488 Research Triangle Institute
3413712SrootBob Gray, gray@berkeley, duke!adiron!bob (315) 336-4989
3513712Sroot
3613712SrootThis is a variant of the uucp used at decvax, ittvax, rti, mcnc, adiron,
3713712Srootduke and others.  There have been tons of bug fixes and enhancements
3813712Srootfrom people on the usenet (thank you).  Speed is substantially
3913712Srootimproved.  This version fixes essentially all of the McGeady's bug list.
4013712Sroot
4113712SrootEnhancements:
4213712Sroot
4313712SrootDialers			Lots of dialers included.
4413712Sroot
4513712SrootSubdirectories		/usr/spool/uucp is now split into 7 subdirectories.
4613712Sroot			This is a huge help on busy systems.
4713712Sroot
4813712Sroot/usr/lib/uucp/L.cmds	List of commands permitted for remote execution.
4913712Sroot			A line of form 'PATH=...' sets the search path.
5013712Sroot
5113712Srootexpect-send sequence	Escape characters now permitted: \r, \n.
5213712Sroot			\r, not \n, is default char sent at end of string.
5313712Sroot			\c	(put at end of string). Dont send ending \r.
5413712Sroot			\d	pause 1 second (\d\d pauses 2 seconds)
5513712Sroot			"" P_ZERO  `expect nothing, start sending zero parity.'
5613712Sroot			P_EVEN (default), P_ODD, P_ONE other parity modes.
5713712Sroot			\05	Send a control-E
5813712Sroot			"" ""   `expect nothing, send a \r'.
5913712Sroot
6013712Srootuupoll [sysname]	Polls named system.
6113712Srootuusnap			Displays spooled files, and pending uuxqts.
6213712Sroot
6313712Sroot
6413712SrootThis version runs on all VAXen and PDPs under UNIX-V7 and 4.1bsd, 4.2BSD.
6513712SrootIt also runs on Gould/SEL Concept series machines (e.g. 32/8750),
6613712SrootDUAL 68000 unisoft.
6717766SralphIt also runns on BTL system III, IV, and V.
6813712Sroot
6913712SrootUUCP installers should read the two papers (by Dave Nowitz)
7013712Srootin Vol 2B of version 7 manuals and UUAIDS/setup.tblms.
7113712SrootUnderstand each step below before executing.
7213712SrootSome steps will vary slightly from system to system.
7313712Sroot
7413712Sroot**** INSTALLATION *******
7513712Sroot
7613712Sroot1. If you are currently running uucp, save the old programs!:
7713712Sroot	su root
7813712Sroot	cd /usr/bin
7913712Sroot	for i in uucp uux uulog uuname	     (csh: foreach i (uucp ....) )
8013712Sroot	do
8113712Sroot		cp $i $i.old
8213712Sroot	done					(csh: end )
8313712Sroot	cd /usr/lib/uucp
8413712Sroot	for i in uucico uuxqt uuclean
8513712Sroot	do
8613712Sroot		cp $i $i.old
8713712Sroot	done
8813712Sroot
8913712Sroot2. Editing Makefile and uucp.h
9013712Sroot	4.2 sites using the supported dialers are all set with defaults.
9113712Sroot
9213712Sroot	non-4.2
9313712Sroot		a) sites need to install the Berkeley directory reading library.
9417766Sralph			Try (cd libndir; make install).
9513712Sroot			Edit Makefile to have LIBNDIR= -lndir
9613712Sroot			define NDIR in uucp.h.
9713712Sroot		b) Check LDFLAGS, OWNER, GROUP, and LIBUUCICO.
9813712Sroot		c) pick a method to allow uucp to know its system:
9913712Sroot			Check out GETHOSTNAME/UNAME/WHOAMI/CCWHOAMI in uucp.h
10013712Sroot		d) define SYSIII if appropriate in uucp.h.
10113712Sroot		e) Your "make" may fail because the Makefile is so large.
10213712Sroot			If so, in /usr/src/cmds/make/defs, change
10313712Sroot			'#define NFLEFTS 60' to 512, and re-make make.
10413712Sroot
10513712Sroot3. Make the new commands.
10613712Sroot	make
10713712Sroot
10813712Sroot4. WAIT UNTIL THE UUCP SYSTEM IS IDLE!! Single-user is best.
10913712Sroot	su root  (it is important that chmod, chown and chgrp work below)
11013712Sroot
11113712Sroot5. Install the new commands:
11213712Sroot	make install
11313712Sroot	(If you are chicken, type 'make -n install' first).
11413712Sroot
11513712Sroot6. Edit and install the control files:
11613993Sgray	Look in UUAIDS.  Edit and install into /usr/lib/uucp if necessary
11713993Sgray	USERFILE, L.cmds, L.sys, L-devices, L-dialcodes.
11813993Sgray	THESE FILES MUST BE OWNED BY THE SAME OWNER AND GROUP AS
11913993Sgray	THE UUCP COMMANDS AND UUCP SPOOL FILES!!! (probably uucp, daemon).
12013993Sgray	The format for dialers is slightly different so that any dialer
12113993Sgray	can be handled.
12213712Sroot
12313712Sroot7. Make new subdirectories:
12413712Sroot	For safety:  cd /usr/spool/uucp; tar c .   (save Qed files on tape)
12513712Sroot	The following assumes your site name is produced by `uuname -l`.
12613712Sroot	make mkdirs
12713712Sroot		If your system is duke, then the subdirectories created are
12813712Sroot		named C., D., D.duke, D.dukeX, TM., XTMP and X..
12913712Sroot	rmdir /usr/lib/uucp/.XQTDIR
13013712Sroot		which is obsolete (XTMP replaces it).
13113712Sroot
13213712Sroot8. Move old Qed files:
13313712Sroot	If you have spooled files, they must be moved into the subdirectories.
13413712Sroot	Assuming all spool files are in /usr/spool/uucp
13513712Sroot	(i.e. you did not have subdirs before)
13613712Sroot	the following command will move the spool files
13713712Sroot	to the right subdirectories:
13813712Sroot    make mvspoolfiles; ??? does this work now??????????
13913712Sroot	Files beginning C. are put in the C. subdirectory, and so on.
14013712Sroot	Files begining D.dukeX are put in that directory, *not* D..
14113712Sroot	(Note: if you already had a subdirectory version of uucp,
14213712Sroot	you need only create the new subdirectories mentioned above
14313712Sroot	and move the relevant files there.
14413712Sroot    Delete other old directories if you had any (e.g. "LOG.")
14513712Sroot
14613712Sroot9. Compact /usr/spool/uucp:
14713712Sroot	cd /usr/spool
14813712Sroot	mkdir nuucp
14913712Sroot	chown uucp nuucp
15013712Sroot	chgrp daemon nuucp
15113712Sroot	for i in uucp/*    		(csh: foreach i (uucp/*) )
15213712Sroot	do
15313712Sroot		mv $i nuucp
15413712Sroot	done				(csh: end )
15513712Sroot	rmdir uucp
15613712Sroot	mv nuucp uucp
15713712Sroot		(Note: this does *not* work if a filesystem is mounted on
15813712Sroot		/usr/spool/uucp!  If that is the case, you should 'tar'
15913712Sroot		/usr/spool/uucp somewhere, unmount, re-mkfs, and re-mount
16013712Sroot		the filesystem, and tar the uucp files back.)
16113712Sroot
16213712Sroot10. Test the new system
16313712Sroot	Test by mailing a letter somewhere and back.
16413712Sroot	If it works, the new system is probably fine.
16513712Sroot	Otherwise, figure out what is wrong.
16613712Sroot	Start by examining LOGFILE.  Try /usr/lib/uucp/uucico -r1 -sname -x7
16713712Sroot	If things are no-go, you can back out the changes by restoring the
16813712Sroot	old uu programs and the spooled files.
16913712Sroot	NOTE: The subdirectories foul up a non-subdir version,
17013712Sroot	so be sure that subdirectories exist/do not exist as appropriate.
17113712Sroot
17213712Sroot
17313712Sroot11. Install handy UUAIDS
17413712Sroot	Look in uuaids for handy other stuff.  In particular, uu.* are
17513712Sroot	shell scripts that can be run via cron hourly, daily, and weekly
17613712Sroot	to keep uucp trim.  L-devices, L-dialcodes, L.cmds, L.sys, USERFILE
17713712Sroot	are sample files.  THEY MOST LIKELY NEED TO BE MODIFIED TO USE
17813712Sroot	THEM ON YOUR OWN SYSTEM!
17913712Sroot
18013712Sroot	uu.hourly		Makes sure sites are polled.
18113712Sroot	uu.daily		Runs uuclean to clean up /usr/spool/uucp.
18213712Sroot				**IT HANDLES SUBDIRECTORIES!!
18313712Sroot				Renames LOGFILE to LOGFILE.old.
18413712Sroot	uu.weekly		Renames SYSLOG to SYSLOG.old.
18513712Sroot	The above scripts should be run via cron.
18613712Sroot
18717766Sralph	uucpsummary
18817766Sralph		Summarizes LOGFILE and SYSLOG. It's very helpful in telling
18917766Sralph		what is going on and who is calling who.
19013712Sroot	uucp.daily
19113712Sroot		Daily shell script run at ittvax.  Manages SYSLOG files in
19213712Sroot		a convenient form for uuusage.  Not integrated in time
19313712Sroot		for this distribution.
19413712Sroot
19513712Sroot
19613712SrootComments, bug reports, *and improved code* are welcome.
19713712Sroot	Tom Truscott
19813712Sroot	Bob Gray
199