1INSTALLATION GUIDE 2README 5.2 83/07/19 3 4Tom Truscott, rti!trt,decvax!duke!trt (919)541-6488 Research Triangle Institute 5Bob Gray, gray@berkeley, duke!adiron!bob (315) 336-4989 6 7This is a variant of the uucp used at decvax, ittvax, rti, mcnc, adiron, 8duke and others. There have been tons of bug fixes and enhancements 9from people on the usenet (thank you). Speed is substantially 10improved. This version fixes essentially all of the McGeady's bug list. 11 12Enhancements: 13 14Dialers Lots of dialers included. 15 16Subdirectories /usr/spool/uucp is now split into 7 subdirectories. 17 This is a huge help on busy systems. 18 19/usr/lib/uucp/L.cmds List of commands permitted for remote execution. 20 A line of form 'PATH=...' sets the search path. 21 22expect-send sequence Escape characters now permitted: \r, \n. 23 \r, not \n, is default char sent at end of string. 24 \c (put at end of string). Dont send ending \r. 25 \d pause 1 second (\d\d pauses 2 seconds) 26 "" P_ZERO `expect nothing, start sending zero parity.' 27 P_EVEN (default), P_ODD, P_ONE other parity modes. 28 \05 Send a control-E 29 "" "" `expect nothing, send a \r'. 30 31uupoll [sysname] Polls named system. 32uusnap Displays spooled files, and pending uuxqts. 33 34 35This version runs on all VAXen and PDPs under UNIX-V7 and 4.1bsd, 4.2BSD. 36It also runs on Gould/SEL Concept series machines (e.g. 32/8750), 37DUAL 68000 unisoft. 38It should not be hard to get it running on BTL system III, IV, and V. 39On such systems, put "#define SYSIII" in uucp.h and pray. 40 41UUCP installers should read the two papers (by Dave Nowitz) 42in Vol 2B of version 7 manuals and UUAIDS/setup.tblms. 43Understand each step below before executing. 44Some steps will vary slightly from system to system. 45 46**** INSTALLATION ******* 47 481. If you are currently running uucp, save the old programs!: 49 su root 50 cd /usr/bin 51 for i in uucp uux uulog uuname (csh: foreach i (uucp ....) ) 52 do 53 cp $i $i.old 54 done (csh: end ) 55 cd /usr/lib/uucp 56 for i in uucico uuxqt uuclean 57 do 58 cp $i $i.old 59 done 60 612. Editing Makefile and uucp.h 62 4.2 sites using the supported dialers are all set with defaults. 63 64 non-4.2 65 a) sites need to install the Berkeley directory reading library. 66 Try (cd LIBNDIR; make install). 67 Edit Makefile to have LIBNDIR= -lndir 68 define NDIR in uucp.h. 69 b) Check LDFLAGS, OWNER, GROUP, and LIBUUCICO. 70 c) pick a method to allow uucp to know its system: 71 Check out GETHOSTNAME/UNAME/WHOAMI/CCWHOAMI in uucp.h 72 d) define SYSIII if appropriate in uucp.h. 73 e) Your "make" may fail because the Makefile is so large. 74 If so, in /usr/src/cmds/make/defs, change 75 '#define NFLEFTS 60' to 512, and re-make make. 76 773. Make the new commands. 78 make 79 804. WAIT UNTIL THE UUCP SYSTEM IS IDLE!! Single-user is best. 81 su root (it is important that chmod, chown and chgrp work below) 82 835. Install the new commands: 84 make install 85 (If you are chicken, type 'make -n install' first). 86 876. Edit and install the control files: 88 Look in UUAIDS. Edit and install into /usr/lib/uucp if necessary 89 USERFILE, L.cmds, L.sys, L-devices, L-dialcodes. 90 THESE FILES MUST BE OWNED BY THE SAME OWNER AND GROUP AS 91 THE UUCP COMMANDS AND UUCP SPOOL FILES!!! (probably uucp, daemon). 92 The format for dialers is slightly different so that any dialer 93 can be handled. 94 957. Make new subdirectories: 96 For safety: cd /usr/spool/uucp; tar c . (save Qed files on tape) 97 The following assumes your site name is produced by `uuname -l`. 98 make mkdirs 99 If your system is duke, then the subdirectories created are 100 named C., D., D.duke, D.dukeX, TM., XTMP and X.. 101 rmdir /usr/lib/uucp/.XQTDIR 102 which is obsolete (XTMP replaces it). 103 1048. Move old Qed files: 105 If you have spooled files, they must be moved into the subdirectories. 106 Assuming all spool files are in /usr/spool/uucp 107 (i.e. you did not have subdirs before) 108 the following command will move the spool files 109 to the right subdirectories: 110 make mvspoolfiles; ??? does this work now?????????? 111 Files beginning C. are put in the C. subdirectory, and so on. 112 Files begining D.dukeX are put in that directory, *not* D.. 113 (Note: if you already had a subdirectory version of uucp, 114 you need only create the new subdirectories mentioned above 115 and move the relevant files there. 116 Delete other old directories if you had any (e.g. "LOG.") 117 1189. Compact /usr/spool/uucp: 119 cd /usr/spool 120 mkdir nuucp 121 chown uucp nuucp 122 chgrp daemon nuucp 123 for i in uucp/* (csh: foreach i (uucp/*) ) 124 do 125 mv $i nuucp 126 done (csh: end ) 127 rmdir uucp 128 mv nuucp uucp 129 (Note: this does *not* work if a filesystem is mounted on 130 /usr/spool/uucp! If that is the case, you should 'tar' 131 /usr/spool/uucp somewhere, unmount, re-mkfs, and re-mount 132 the filesystem, and tar the uucp files back.) 133 13410. Test the new system 135 Test by mailing a letter somewhere and back. 136 If it works, the new system is probably fine. 137 Otherwise, figure out what is wrong. 138 Start by examining LOGFILE. Try /usr/lib/uucp/uucico -r1 -sname -x7 139 If things are no-go, you can back out the changes by restoring the 140 old uu programs and the spooled files. 141 NOTE: The subdirectories foul up a non-subdir version, 142 so be sure that subdirectories exist/do not exist as appropriate. 143 144 14511. Install handy UUAIDS 146 Look in uuaids for handy other stuff. In particular, uu.* are 147 shell scripts that can be run via cron hourly, daily, and weekly 148 to keep uucp trim. L-devices, L-dialcodes, L.cmds, L.sys, USERFILE 149 are sample files. THEY MOST LIKELY NEED TO BE MODIFIED TO USE 150 THEM ON YOUR OWN SYSTEM! 151 152 uu.hourly Makes sure sites are polled. 153 uu.daily Runs uuclean to clean up /usr/spool/uucp. 154 **IT HANDLES SUBDIRECTORIES!! 155 Renames LOGFILE to LOGFILE.old. 156 uu.weekly Renames SYSLOG to SYSLOG.old. 157 The above scripts should be run via cron. 158 159 uuq 160 Reports number of command ('C.') files queued for each system, 161 number of remote executions ('XQT') pending, 162 and with what systems uucico is currently conversing. 163 (It would also be handy to know the status of each site 164 such as 'decvax: last connection 03:00 Fri Jan 20' and 165 failures such as 'harpo: no answer 07:00 Fri Jan 20'. 166 It would also be handy to have a manual page for this thing.) 167 168 uuusage, uuusage.1, uutbl 169 Summarizes SYSLOG. Very handy. (Alan S. Watt). 170 Works best if you use uucp.daily. Slow if SYSLOG is big. 171 172 uurate 173 More detailed summary of SYSLOG. Useful for checking 174 throughput. Modified from program provided by ittvax!swatt. 175 Slow if SYSLOG is big. 176 177 uucp.daily 178 Daily shell script run at ittvax. Manages SYSLOG files in 179 a convenient form for uuusage. Not integrated in time 180 for this distribution. 181 182 183Comments, bug reports, *and improved code* are welcome. 184 Tom Truscott 185 Bob Gray 186