README
1INSTALLATION GUIDE
2README 8.1 93/06/06
3
4This version is based on the "rti uucp" that was on the 4.2BSD tape.
5It contains many additional features and fixes from Usenet,
6Tom Truscott, Guy Harris, Lou Salkind, and many others.
7
8A few new subdirectories have been added. Do a "make mkdirs" to make
9sure that you have all of them.
10
11I recommend that you change the uucp mail handler in your sendmail.cf
12to something like:
13
14 # Muucp, P=/usr/bin/uux, F=sDFMhuU, S=13, R=23, M=100000,
15 # A=uux - -r $h!rmail ($u)
16 Muucp, P=/usr/bin/uux, F=sDFMmhuU, S=13, R=23, M=100000,
17 A=uux - -r -z -a$g -gC $h!rmail ($u)
18
19The -a$g provides a return address in case mail fails (So It
20won't go to yourmachine!uucp anymore.) The -gC specifies a grade
21for mail. C is a good choice for mail. News should run at 'd'. This
22way, mail gets sent before news. The 'm' flag specifies that this
23mail can send to multiple addresses, which uux can.
24
25The man pages now describe all the options for the various commands.
26Make sure you read them. A list of the functional differences is in "Changes".
27
28You should also look through the UUAIDS directory. There are some useful
29programs and hints therein.
30
31The maximum length of a site name has been changed from the old 7 to the
3214. This is the be compatible with the HoneyDanBer uucp (aka BNU 1) which
33is as close to a standard uucp as there is. Sites which have sitenames
34longer than 7 characters that only send you the first 7 characters are
35broken and should be fixed. However, there is a way of compensating for
36this until they fix their problem. For each site you talk to that has a
37name longer that 7 characters, put a line in /usr/lib/uucp/L.aliases of
38the form:
39 fullname name-truncated-to-7-characters.
40E.g:
41 tektronix tektron
42 lbl-csam lbl-csa
43 rochester rochest
44 ut-sally ut-sall
45(See UUAIDS/L.aliases for more details on aliasing uucp names.) If the site
46name is <= 7 characters, you don't have to do anything.
47
48
49Rick Adams
50rick@seismo.ARPA
51June 19, 1985
52
53Tom Truscott, rti!trt,decvax!duke!trt (919)541-6488 Research Triangle Institute
54Bob Gray, gray@berkeley, duke!adiron!bob (315) 336-4989
55
56This is a variant of the uucp used at decvax, ittvax, rti, mcnc, adiron,
57duke and others. There have been tons of bug fixes and enhancements
58from people on the usenet (thank you). Speed is substantially
59improved. This version fixes essentially all of the McGeady's bug list.
60
61Enhancements:
62
63Dialers Lots of dialers included.
64
65Subdirectories /usr/spool/uucp is now split into 7 subdirectories.
66 This is a huge help on busy systems.
67
68/usr/lib/uucp/L.cmds List of commands permitted for remote execution.
69 A line of form 'PATH=...' sets the search path.
70
71expect-send sequence Escape characters now permitted: \r, \n.
72 \r, not \n, is default char sent at end of string.
73 \c (put at end of string). Dont send ending \r.
74 \d pause 1 second (\d\d pauses 2 seconds)
75 "" P_ZERO `expect nothing, start sending zero parity.'
76 P_EVEN (default), P_ODD, P_ONE other parity modes.
77 \05 Send a control-E
78 "" "" `expect nothing, send a \r'.
79
80uupoll [sysname] Polls named system.
81uusnap Displays spooled files, and pending uuxqts.
82
83
84This version runs on all VAXen and PDPs under UNIX-V7 and 4.1bsd, 4.2BSD.
85It also runs on Gould/SEL Concept series machines (e.g. 32/8750),
86DUAL 68000 unisoft.
87It also runns on BTL system III, IV, and V.
88
89UUCP installers should read the two papers (by Dave Nowitz)
90in Vol 2B of version 7 manuals and UUAIDS/setup.tblms.
91Understand each step below before executing.
92Some steps will vary slightly from system to system.
93
94**** INSTALLATION *******
95
961. If you are currently running uucp, save the old programs!:
97 su root
98 cd /usr/bin
99 for i in uucp uux uulog uuname (csh: foreach i (uucp ....) )
100 do
101 cp $i $i.old
102 done (csh: end )
103 cd /usr/lib/uucp
104 for i in uucico uuxqt uuclean
105 do
106 cp $i $i.old
107 done
108
1092. Editing Makefile and uucp.h
110 4.2 sites using the supported dialers are all set with defaults.
111
112 non-4.2
113 a) sites need to install the Berkeley directory reading library.
114 Try (cd libndir; make install).
115 Edit Makefile to have LIBNDIR= -lndir
116 define NDIR in uucp.h.
117 b) Check LDFLAGS, OWNER, GROUP, and LIBUUCICO.
118 c) pick a method to allow uucp to know its system:
119 Check out GETHOSTNAME/UNAME/WHOAMI/CCWHOAMI in uucp.h
120 d) define SYSIII if appropriate in uucp.h.
121 e) Your "make" may fail because the Makefile is so large.
122 If so, in /usr/src/cmds/make/defs, change
123 '#define NFLEFTS 60' to 512, and re-make make.
124
1253. Make the new commands.
126 make
127
1284. WAIT UNTIL THE UUCP SYSTEM IS IDLE!! Single-user is best.
129 su root (it is important that chmod, chown and chgrp work below)
130
1315. Install the new commands:
132 make install
133 (If you are chicken, type 'make -n install' first).
134
1356. Edit and install the control files:
136 Look in UUAIDS. Edit and install into /usr/lib/uucp if necessary
137 USERFILE, L.cmds, L.sys, L-devices, L-dialcodes.
138 THESE FILES MUST BE OWNED BY THE SAME OWNER AND GROUP AS
139 THE UUCP COMMANDS AND UUCP SPOOL FILES!!! (probably uucp, daemon).
140 The format for dialers is slightly different so that any dialer
141 can be handled.
142
1437. Make new subdirectories:
144 For safety: cd /usr/spool/uucp; tar c . (save Qed files on tape)
145 The following assumes your site name is produced by `uuname -l`.
146 make mkdirs
147 If your system is duke, then the subdirectories created are
148 named C., D., D.duke, D.dukeX, TM., XTMP and X..
149 rmdir /usr/lib/uucp/.XQTDIR
150 which is obsolete (XTMP replaces it).
151
1528. Move old Qed files:
153 If you have spooled files, they must be moved into the subdirectories.
154 Assuming all spool files are in /usr/spool/uucp
155 (i.e. you did not have subdirs before)
156 the following command will move the spool files
157 to the right subdirectories:
158 make mvspoolfiles; ??? does this work now??????????
159 Files beginning C. are put in the C. subdirectory, and so on.
160 Files begining D.dukeX are put in that directory, *not* D..
161 (Note: if you already had a subdirectory version of uucp,
162 you need only create the new subdirectories mentioned above
163 and move the relevant files there.
164 Delete other old directories if you had any (e.g. "LOG.")
165
1669. Compact /usr/spool/uucp:
167 cd /usr/spool
168 mkdir nuucp
169 chown uucp nuucp
170 chgrp daemon nuucp
171 for i in uucp/* (csh: foreach i (uucp/*) )
172 do
173 mv $i nuucp
174 done (csh: end )
175 rmdir uucp
176 mv nuucp uucp
177 (Note: this does *not* work if a filesystem is mounted on
178 /usr/spool/uucp! If that is the case, you should 'tar'
179 /usr/spool/uucp somewhere, unmount, re-mkfs, and re-mount
180 the filesystem, and tar the uucp files back.)
181
18210. Test the new system
183 Test by mailing a letter somewhere and back.
184 If it works, the new system is probably fine.
185 Otherwise, figure out what is wrong.
186 Start by examining LOGFILE. Try /usr/lib/uucp/uucico -r1 -sname -x7
187 If things are no-go, you can back out the changes by restoring the
188 old uu programs and the spooled files.
189 NOTE: The subdirectories foul up a non-subdir version,
190 so be sure that subdirectories exist/do not exist as appropriate.
191
192
19311. Install handy UUAIDS
194 Look in uuaids for handy other stuff. In particular, uu.* are
195 shell scripts that can be run via cron hourly, daily, and weekly
196 to keep uucp trim. L-devices, L-dialcodes, L.cmds, L.sys, USERFILE
197 are sample files. THEY MOST LIKELY NEED TO BE MODIFIED TO USE
198 THEM ON YOUR OWN SYSTEM!
199
200 uu.hourly Makes sure sites are polled.
201 uu.daily Runs uuclean to clean up /usr/spool/uucp.
202 **IT HANDLES SUBDIRECTORIES!!
203 Renames LOGFILE to LOGFILE.old.
204 uu.weekly Renames SYSLOG to SYSLOG.old.
205 The above scripts should be run via cron.
206
207 uucpsummary
208 Summarizes LOGFILE and SYSLOG. It's very helpful in telling
209 what is going on and who is calling who.
210 uucp.daily
211 Daily shell script run at ittvax. Manages SYSLOG files in
212 a convenient form for uuusage. Not integrated in time
213 for this distribution.
214
215
216Comments, bug reports, *and improved code* are welcome.
217 Tom Truscott
218 Bob Gray
219
README.TCP
1The rest of this file is oriented to updating a vanilla 4.2 system.
2As 4.3 comes configured, all you have to do is uncomment the "uucpd"
3line in /etc/inetd.conf (and of course update your L.sys as needed).
4If you want to turn off logging uucp logins in wtmp, set the "user"
5field in inetd.conf to "uucp", who doesn't have write permission on wtmp.
6
7----------------------------------------------------------------------
8Basically, to run UUCP on top of TCP, the code had to be changed to
9not do ioctl's on sockets,etc. Also, a new protocl 't' was added.
10This is because the 'g' protocol maxes out at about 9000 baud
11regardless of the physical medium. The 't' protocol presumes an
12error free channel, and is essentially the 'g' protocol with the
13checksumming and packetizing ripped out.
14
15To install it, make uucp with BSD4_2 defined in uucp.h.
16
17Add a line in /etc/services that looks like:
18uucp 540/tcp uucpd
19
20Add lines to /etc/rc.local that looks something like:
21if [ -f /etc/uucpd ]; then
22 /etc/uucpd & echo -n ' uucpd' >/dev/console
23fi
24
25The L.sys entry should look something like:
26uucpname time-to-call TCP port networkname standard uucp login chat
27
28This is how it would look for rochester.
29rochester Any TCP uucp ur-seneca "" uucplogin "" uucppasswd
30
31UUCP site rochester is arpanet site ur-seneca (and there is a
32arpanet site rochester that is a different machine)
33
34The "port" field is either a word or a number. It is a number,
35that number is used as the port. If it is a word, the word is
36looked up in /etc/services and the port is taken from there.
37
38Another example would be:
39seismo Any TCP 33 seismo "" uucplogin "" uucppassword
40
41In almost every case, the networkname field will be the same as the
42uucpname field. Similarly, the port field will usually be "uucp", which
43says to use the standard uucp port from the services file.
44
45The daemon expects the incoming site to send its login and password
46for authentication.
47
48If you have any problems feel free to call me:
49
50 Rick Adams
51 Center for Seismic Studies
52 1300 North 17th Street, Suite 1450
53 Arlington, VA 22209
54 (703) 276-7900
55 rick@seismo.ARPA
56 seismo!rick
57
README.inout
1We started to use uucp after the dialin lines had been in place for a while.
2It would have been very unpopular here to remove one of lines from public use
3to let uucp dial out. The first version of these changes ran here early in
41983.
5
6Having this ability is very useful way to make full use of your modems. For
7one thing, I can smile when a neighoring site complains that their one dialer
8is tied up from news backed up to one of their neighbors which has been down
9for a while and has just come back up. For another thing some of our neighbors
10seem to be reachable better by some modems than by others. For example, I can
11only reach rocky2 with a Racal Vadic. I can only reach akgua, burl, and
12sjuvax with a Hayes. When our 2400 baud modem arrives so I can make special
13note of that --- and I don't have to buy two 2400 baud modems to have two-way
142400 baud capability.
15
16The key to this is a program is provided in the file acucntrl.c . This should
17be installed suid to root in the file /usr/lib/uucp/acucntrl .
18
19
20uucp notes:
21The 3rd field of the L-devices file should contain "inout" for all devices
22intended for dialin/out use. Devices without the "inout" specification will
23be used like before: for dialout only.
24
25Good luck. I want to never go back to reserving modems for dialout.
26
27Bill Sebok Princeton University, Astrophysics
28{allegra,akgua,burl,cbosgd,decvax,ihnp4,noao,princeton,vax135}!astrovax!wls
29