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