xref: /original-bsd/usr.bin/uucp/DOC/README (revision e785cc37)
1004e7feeSrootINSTALLATION GUIDE
2*e785cc37SbosticREADME	8.1	93/06/06
33e429b1aSralph
43e429b1aSralphThis version is based on the "rti uucp" that was on the 4.2BSD tape.
53e429b1aSralphIt contains many additional  features and fixes from Usenet,
69bc2d569SralphTom Truscott, Guy Harris, Lou Salkind, and many others.
73e429b1aSralph
83e429b1aSralphA few new subdirectories have been added. Do a "make mkdirs" to make
93e429b1aSralphsure that you have all of them.
103e429b1aSralph
119bc2d569SralphI recommend that you change the uucp mail handler in your sendmail.cf
129bc2d569Sralphto something like:
139bc2d569Sralph
149bc2d569Sralph	# Muucp, P=/usr/bin/uux, F=sDFMhuU, S=13, R=23, M=100000,
159bc2d569Sralph	# 	A=uux - -r $h!rmail ($u)
169c6432feSbloom	Muucp, P=/usr/bin/uux, F=sDFMmhuU, S=13, R=23, M=100000,
179c6432feSbloom		A=uux - -r -z -a$g -gC $h!rmail ($u)
187182af05Sralph
199c6432feSbloomThe -a$g provides a return address in case mail fails (So It
209bc2d569Sralphwon't go to yourmachine!uucp anymore.) The -gC specifies a grade
219bc2d569Sralphfor mail. C is a good choice for mail. News should run at 'd'. This
229c6432feSbloomway, mail gets sent before news. The 'm' flag specifies that this
239c6432feSbloommail can send to multiple addresses, which uux can.
249bc2d569Sralph
253e429b1aSralphThe man pages now describe all the options for the various commands.
267182af05SralphMake sure you read them. A list of the functional differences is in "Changes".
273e429b1aSralph
283e429b1aSralphYou should also look through the UUAIDS directory. There are some useful
293e429b1aSralphprograms and hints therein.
303e429b1aSralph
319c6432feSbloomThe maximum length of a site name has been changed from the old 7 to the
329c6432feSbloom14. This is the be compatible with the HoneyDanBer uucp (aka BNU 1) which
339c6432feSbloomis as close to a standard uucp as there is. Sites which have sitenames
349c6432feSbloomlonger than 7 characters that only send you the first 7 characters are
359c6432feSbloombroken and should be fixed. However, there is a way of compensating for
369c6432feSbloomthis until they fix their problem. For each site you talk to that has a
379c6432feSbloomname longer that 7 characters, put a line in /usr/lib/uucp/L.aliases of
389c6432feSbloomthe form:
399c6432feSbloom	fullname name-truncated-to-7-characters.
409c6432feSbloomE.g:
419c6432feSbloom	tektronix tektron
429c6432feSbloom	lbl-csam lbl-csa
439c6432feSbloom	rochester rochest
449c6432feSbloom	ut-sally ut-sall
459c6432feSbloom(See UUAIDS/L.aliases for more details on aliasing uucp names.) If the site
469c6432feSbloomname is <= 7 characters, you don't have to do anything.
479c6432feSbloom
489c6432feSbloom
493e429b1aSralphRick Adams
503e429b1aSralphrick@seismo.ARPA
519c6432feSbloomJune 19, 1985
52004e7feeSroot
53004e7feeSrootTom Truscott, rti!trt,decvax!duke!trt (919)541-6488 Research Triangle Institute
54004e7feeSrootBob Gray, gray@berkeley, duke!adiron!bob (315) 336-4989
55004e7feeSroot
56004e7feeSrootThis is a variant of the uucp used at decvax, ittvax, rti, mcnc, adiron,
57004e7feeSrootduke and others.  There have been tons of bug fixes and enhancements
58004e7feeSrootfrom people on the usenet (thank you).  Speed is substantially
59004e7feeSrootimproved.  This version fixes essentially all of the McGeady's bug list.
60004e7feeSroot
61004e7feeSrootEnhancements:
62004e7feeSroot
63004e7feeSrootDialers			Lots of dialers included.
64004e7feeSroot
65004e7feeSrootSubdirectories		/usr/spool/uucp is now split into 7 subdirectories.
66004e7feeSroot			This is a huge help on busy systems.
67004e7feeSroot
68004e7feeSroot/usr/lib/uucp/L.cmds	List of commands permitted for remote execution.
69004e7feeSroot			A line of form 'PATH=...' sets the search path.
70004e7feeSroot
71004e7feeSrootexpect-send sequence	Escape characters now permitted: \r, \n.
72004e7feeSroot			\r, not \n, is default char sent at end of string.
73004e7feeSroot			\c	(put at end of string). Dont send ending \r.
74004e7feeSroot			\d	pause 1 second (\d\d pauses 2 seconds)
75004e7feeSroot			"" P_ZERO  `expect nothing, start sending zero parity.'
76004e7feeSroot			P_EVEN (default), P_ODD, P_ONE other parity modes.
77004e7feeSroot			\05	Send a control-E
78004e7feeSroot			"" ""   `expect nothing, send a \r'.
79004e7feeSroot
80004e7feeSrootuupoll [sysname]	Polls named system.
81004e7feeSrootuusnap			Displays spooled files, and pending uuxqts.
82004e7feeSroot
83004e7feeSroot
84004e7feeSrootThis version runs on all VAXen and PDPs under UNIX-V7 and 4.1bsd, 4.2BSD.
85004e7feeSrootIt also runs on Gould/SEL Concept series machines (e.g. 32/8750),
86004e7feeSrootDUAL 68000 unisoft.
873e429b1aSralphIt also runns on BTL system III, IV, and V.
88004e7feeSroot
89004e7feeSrootUUCP installers should read the two papers (by Dave Nowitz)
90004e7feeSrootin Vol 2B of version 7 manuals and UUAIDS/setup.tblms.
91004e7feeSrootUnderstand each step below before executing.
92004e7feeSrootSome steps will vary slightly from system to system.
93004e7feeSroot
94004e7feeSroot**** INSTALLATION *******
95004e7feeSroot
96004e7feeSroot1. If you are currently running uucp, save the old programs!:
97004e7feeSroot	su root
98004e7feeSroot	cd /usr/bin
99004e7feeSroot	for i in uucp uux uulog uuname	     (csh: foreach i (uucp ....) )
100004e7feeSroot	do
101004e7feeSroot		cp $i $i.old
102004e7feeSroot	done					(csh: end )
103004e7feeSroot	cd /usr/lib/uucp
104004e7feeSroot	for i in uucico uuxqt uuclean
105004e7feeSroot	do
106004e7feeSroot		cp $i $i.old
107004e7feeSroot	done
108004e7feeSroot
109004e7feeSroot2. Editing Makefile and uucp.h
110004e7feeSroot	4.2 sites using the supported dialers are all set with defaults.
111004e7feeSroot
112004e7feeSroot	non-4.2
113004e7feeSroot		a) sites need to install the Berkeley directory reading library.
1143e429b1aSralph			Try (cd libndir; make install).
115004e7feeSroot			Edit Makefile to have LIBNDIR= -lndir
116004e7feeSroot			define NDIR in uucp.h.
117004e7feeSroot		b) Check LDFLAGS, OWNER, GROUP, and LIBUUCICO.
118004e7feeSroot		c) pick a method to allow uucp to know its system:
119004e7feeSroot			Check out GETHOSTNAME/UNAME/WHOAMI/CCWHOAMI in uucp.h
120004e7feeSroot		d) define SYSIII if appropriate in uucp.h.
121004e7feeSroot		e) Your "make" may fail because the Makefile is so large.
122004e7feeSroot			If so, in /usr/src/cmds/make/defs, change
123004e7feeSroot			'#define NFLEFTS 60' to 512, and re-make make.
124004e7feeSroot
125004e7feeSroot3. Make the new commands.
126004e7feeSroot	make
127004e7feeSroot
128004e7feeSroot4. WAIT UNTIL THE UUCP SYSTEM IS IDLE!! Single-user is best.
129004e7feeSroot	su root  (it is important that chmod, chown and chgrp work below)
130004e7feeSroot
131004e7feeSroot5. Install the new commands:
132004e7feeSroot	make install
133004e7feeSroot	(If you are chicken, type 'make -n install' first).
134004e7feeSroot
135004e7feeSroot6. Edit and install the control files:
1367c0f4cfbSgray	Look in UUAIDS.  Edit and install into /usr/lib/uucp if necessary
1377c0f4cfbSgray	USERFILE, L.cmds, L.sys, L-devices, L-dialcodes.
1387c0f4cfbSgray	THESE FILES MUST BE OWNED BY THE SAME OWNER AND GROUP AS
1397c0f4cfbSgray	THE UUCP COMMANDS AND UUCP SPOOL FILES!!! (probably uucp, daemon).
1407c0f4cfbSgray	The format for dialers is slightly different so that any dialer
1417c0f4cfbSgray	can be handled.
142004e7feeSroot
143004e7feeSroot7. Make new subdirectories:
144004e7feeSroot	For safety:  cd /usr/spool/uucp; tar c .   (save Qed files on tape)
145004e7feeSroot	The following assumes your site name is produced by `uuname -l`.
146004e7feeSroot	make mkdirs
147004e7feeSroot		If your system is duke, then the subdirectories created are
148004e7feeSroot		named C., D., D.duke, D.dukeX, TM., XTMP and X..
149004e7feeSroot	rmdir /usr/lib/uucp/.XQTDIR
150004e7feeSroot		which is obsolete (XTMP replaces it).
151004e7feeSroot
152004e7feeSroot8. Move old Qed files:
153004e7feeSroot	If you have spooled files, they must be moved into the subdirectories.
154004e7feeSroot	Assuming all spool files are in /usr/spool/uucp
155004e7feeSroot	(i.e. you did not have subdirs before)
156004e7feeSroot	the following command will move the spool files
157004e7feeSroot	to the right subdirectories:
158004e7feeSroot    make mvspoolfiles; ??? does this work now??????????
159004e7feeSroot	Files beginning C. are put in the C. subdirectory, and so on.
160004e7feeSroot	Files begining D.dukeX are put in that directory, *not* D..
161004e7feeSroot	(Note: if you already had a subdirectory version of uucp,
162004e7feeSroot	you need only create the new subdirectories mentioned above
163004e7feeSroot	and move the relevant files there.
164004e7feeSroot    Delete other old directories if you had any (e.g. "LOG.")
165004e7feeSroot
166004e7feeSroot9. Compact /usr/spool/uucp:
167004e7feeSroot	cd /usr/spool
168004e7feeSroot	mkdir nuucp
169004e7feeSroot	chown uucp nuucp
170004e7feeSroot	chgrp daemon nuucp
171004e7feeSroot	for i in uucp/*    		(csh: foreach i (uucp/*) )
172004e7feeSroot	do
173004e7feeSroot		mv $i nuucp
174004e7feeSroot	done				(csh: end )
175004e7feeSroot	rmdir uucp
176004e7feeSroot	mv nuucp uucp
177004e7feeSroot		(Note: this does *not* work if a filesystem is mounted on
178004e7feeSroot		/usr/spool/uucp!  If that is the case, you should 'tar'
179004e7feeSroot		/usr/spool/uucp somewhere, unmount, re-mkfs, and re-mount
180004e7feeSroot		the filesystem, and tar the uucp files back.)
181004e7feeSroot
182004e7feeSroot10. Test the new system
183004e7feeSroot	Test by mailing a letter somewhere and back.
184004e7feeSroot	If it works, the new system is probably fine.
185004e7feeSroot	Otherwise, figure out what is wrong.
186004e7feeSroot	Start by examining LOGFILE.  Try /usr/lib/uucp/uucico -r1 -sname -x7
187004e7feeSroot	If things are no-go, you can back out the changes by restoring the
188004e7feeSroot	old uu programs and the spooled files.
189004e7feeSroot	NOTE: The subdirectories foul up a non-subdir version,
190004e7feeSroot	so be sure that subdirectories exist/do not exist as appropriate.
191004e7feeSroot
192004e7feeSroot
193004e7feeSroot11. Install handy UUAIDS
194004e7feeSroot	Look in uuaids for handy other stuff.  In particular, uu.* are
195004e7feeSroot	shell scripts that can be run via cron hourly, daily, and weekly
196004e7feeSroot	to keep uucp trim.  L-devices, L-dialcodes, L.cmds, L.sys, USERFILE
197004e7feeSroot	are sample files.  THEY MOST LIKELY NEED TO BE MODIFIED TO USE
198004e7feeSroot	THEM ON YOUR OWN SYSTEM!
199004e7feeSroot
200004e7feeSroot	uu.hourly		Makes sure sites are polled.
201004e7feeSroot	uu.daily		Runs uuclean to clean up /usr/spool/uucp.
202004e7feeSroot				**IT HANDLES SUBDIRECTORIES!!
203004e7feeSroot				Renames LOGFILE to LOGFILE.old.
204004e7feeSroot	uu.weekly		Renames SYSLOG to SYSLOG.old.
205004e7feeSroot	The above scripts should be run via cron.
206004e7feeSroot
2073e429b1aSralph	uucpsummary
2083e429b1aSralph		Summarizes LOGFILE and SYSLOG. It's very helpful in telling
2093e429b1aSralph		what is going on and who is calling who.
210004e7feeSroot	uucp.daily
211004e7feeSroot		Daily shell script run at ittvax.  Manages SYSLOG files in
212004e7feeSroot		a convenient form for uuusage.  Not integrated in time
213004e7feeSroot		for this distribution.
214004e7feeSroot
215004e7feeSroot
216004e7feeSrootComments, bug reports, *and improved code* are welcome.
217004e7feeSroot	Tom Truscott
218004e7feeSroot	Bob Gray
219