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