COHERENT manpages
This page displays the COHERENT manpage for UUCP [Unattended communication with remote systems].
List of available manpages
Index
UUCP -- Overview Unattended communication with remote systems UUCP stands for ``UNIX to UNIX communications protocol''. It is a system of commands that allows you to exchange files with other COHERENT or UNIX systems, in an unattended manner. With UUCP, you can send mail to other systems, upload files, and execute commands. When configured correctly, UUCP also lets other users upload files to your system, copy files from it, and execute commands. All this can be done without your having to sit at your console and type commands; thus, files can be transferred in the small hours, when telephone rates are lower and computers are relatively free. UUCP gives you access to the Usenet, a nation-wide network of UNIX and COHERENT users. Access to the Usenet will let you exchange mail with any of the thousands of Usenet users, receive mail from them, download source code for many useful programs, and read the latest news on a host of subjects. For details on contacting UUNET, a commercially accessible Usenet site, enter the command: phone uunet Implementation of UUCP Beginning with release 4.2, COHERENT implements the Taylor UUCP package. The current implementation is Taylor UUCP version 1.05. Taylor UUCP offers extraordinary flexibility, beyond that offered by standard implementations of UUCP. The following Lexicon entries describe UUCP: config.........Overall configuration file for UUCP cu.............Introduce the cu communications utility dial...........Describe how uucico and cu can dial a modem domain.........Describe the file that names your UUCP domain port...........File that describes ports through which UUCP dials sys............File that describes systems contacted by UUCP uuchk..........Check UUCP configuation uucico.........Daemon that controls communication with a remote site uuconv.........Convert UUCP configuration files to Taylor format uucp...........Spool files for transmission to other systems uucpname.......File that names your system uudecode.......Decode a binary file sent from a remote system uuencode.......Encode a binary file for transmission uuinstall......Install or modify UUCP uulog..........Read a UUCP log uumkdir........Create a UUCP directory uumvlog........Archive UUCP log files uuname.........List UUCP names of known systems uupick.........Pick up a file uploaded from a remote system uurmlock.......Remove a UUCP lockfile uusched........Call all systems that have jobs waiting for them uustat.........Display and modify the status of a UUCP job uuto...........Send a file to a remote system uutouch........Touch a file to trigger uucico poll uutry..........Debugging tool for UUCP uux............Execute a command on a remote system uuxqt..........Execute commands requested by a remote system Files and Directories UUCP uses the following files and directories: /usr/lib/uucp/sys This file contains information about remote UUCP sites with which you can communicate. uucico uses its information to connect to remote systems; sets permissions for the directories that a given remote system can write into or read from; establishes the protocol (or protocols) that can be used when communicating with the given remote system to transfer files. /usr/lib/uucp This directory holds many of the UUCP executables. It also holds the following configuration files: /usr/lib/uucp/config Customize the configuratio of Taylor UUCP. Note that this file is not shipped with COHERENT, to ensure that the default configuration is used; however, you can write one yourself easily enough. For details, see the Lexicon entry config. /usr/lib/uucp/dial uucico uses the information in this file to communicate with modems. /usr/lib/uucp/port uucico uses the information in this file to communicate with a given port on your system. /usr/spool/uucp This directory holds log files and spool directories, as follows: /usr/spool/uucp/.Admin This directory holds the following administrative logging files: /usr/spool/uucp/.Admin/xferstats This file holds statistics about the rate at which data were transferred between your site and a remote site. /usr/spool/uucp/.Admin/audit.local This file holds auditing information, as generated using the option -x with any UUCP command. /usr/lib/uucp/.Log This directory holds information that detail the files transferred between your system and any remote system. It contains one sub-directory for each UUCP command -- one each for uucico, uucp, uux, and uuxqt. Each sub-directory, in turn, contains one log file for each remote system with which your system exchanges files, plus the file ANY, which holds information about all remote systems. For example, file /usr/spool/uucp/.Log/uucp/lepanto logs every file that you have exchange with remote site lepanto via the command uucp. /usr/spool/uucp/.Received This directory contains one sub-directory for each remote system with which your system exchanges files. It holds files received from that system that cannot be executed properly. If your system is configured correctly, this directory should be empty. /usr/spool/uucp/.Sequence This directory holds one file for each remote system with which you exchange files. The file holds a string from which the job most recently performed with that site was named. This sequence number is used to identify each job uniquely. This is discussed in more detail below. /usr/spool/uucp/.Status This directory holds one file for each system with your system communicates via UUCP. The file holds information about the status with which the last contact exited. For example, if your system communicated successfully with system mwc, then file /usr/spool/uucp/.Status/mwc will hold an entry that resembles the following: 0 0 778536664 0 SUCCESSFUL mwc However, if your system communicates with system sales and the last session failed during handshake, then file /usr/spool/uucp/.Status/sales will hold something like the following: 4 7 769981110 4200 Handshake failed sales Note that if a .Status file indicates that the last contact failed, uucico may silently refuse to dial out to that system; UUCP is designed this way, in order to spare you the expense of repeatedly calling a system whose connection is damaged in some way. The solution is simply to remove the file in question. For example, if uucico refuses to dial system mwc and you know that that system is working correctly, try removing file /usr/spool/uucp/.Status/mwc. /usr/spool/uucp/.Temp This directory holds one directory for each system with which your system has exchanged files. Each sub-directory holds temporary files used by the jobs being performed for that system. /usr/spool/uucp/.Xqtdir The command uuxqt executes from within this directory all commands that have been spooled onto your system for execution. It also copies into this directory all files on remote systems that a spooled command names. Note that files reside here only briefly. /usr/spool/uucp/sitename This directory holds all files being uploaded to site sitename. Each file is constructed as follows: prefix This is either D. or C.. The former indicates a data file, and the latter a command file (that is, a file to be executed on the remote system by command uux). site The name of the site to which the file is being uploaded. sequence_number This is a unique number, meant to ensure that no UUCP file clobbers another. When UUCP is spooling a file to be transmitted to a remote site, it looks in that site's .Sequence file, increases the sequence number by one, uses that number to name the file, and writes the incremented sequence number back into the site's .Sequence file. /usr/spool/uucp/LCK..* Finally, files that begin with the string LCK.. are lock files. UUCP (and many other COHERENT programs) use them to lock devices, to ensure that only one program can access a device at a time. Each lock file contains the process identifier of the process that has locked that device, but different programs use different conventions in naming lock files. Programs that log users into your system lock console and terminal devices. These programs use lock files whose names are built from the major-device number and the minor-device number of the device being locked For example, file /usr/spool/uucppublic/LCK..2.1 locks the device with major number 2 and minor number 1 -- that is, the color virtual-console device /dev/color1. Looking into file LCK..2.1, we see the number 6836; and when we use the command ps -alx to look for a process with this identifier, we see the following color1 6836 1 fred 133 6001 w ksh color1 8923 6836 fred 204 6001 S ttywait me That is, user fred has logged into this system via device /dev/color1 and invoked a shell that has process identifier 6836. Second, when UUCP opens a port to dial out, it creates a lock file whose name includes the name of the port on which it is dialing. For example, if UUCP is dialing out via port /dev/com3fl, it creates file LCK..com3fl in /usr/spool/uucp. This helps to stop two UUCP process from each trying to open the same port at the same time. Finally, when UUCP dials a given remote site, it creates a lock file for that site. For example, if UUCP dials site mwc, it creates lock file LCK..mwc in directory /usr/spool/uucp. This help to prevent two different UUCP processes from attempting to dial the same site at the same time. This concludes our discussion of UUCP's files and directories. For more information, see the Lexicon entries config, dial, port, and sys. Permissions The following gives the correct permissions and ownership for the files that comprise the UUCP system: -rw------- uucp uucp /usr/lib/uucp/dial -rw------- uucp uucp /usr/lib/uucp/port -rw------- uucp uucp /usr/lib/uucp/sys -r-sr-xr-x uucp root /usr/lib/uucp/uucico -rwxr-xr-x uucp root /usr/lib/uucp/uuconv -r-s--s--x root root /usr/lib/uucp/uumkdir -r-xr-xr-x uucp uucp /usr/lib/uucp/uumvlog -r-xr-xr-x uucp uucp /usr/lib/uucp/uurmlock -r-xr-xr-x root root /usr/lib/uucp/uusched -r-s--s--x uucp uucp /usr/lib/uucp/uutouch -r-x------ uucp uucp /usr/lib/uucp/uutry -r-sr-xr-x uucp root /usr/lib/uucp/uuxqt -r-s--s--x uucp uucp /usr/bin/uucheck -r-sr-xr-x uucp root /usr/bin/uucp -r-x--x--x bin bin /usr/bin/uudecode -r-x--x--x bin bin /usr/bin/uuencode -r-s--s--- uucp uucp /usr/bin/uuinstall -rwxr-xr-x root root /usr/bin/uulog -r-sr-xr-x uucp root /usr/bin/uuname -rwxr-xr-x root root /usr/bin/uupick -r-sr-xr-x uucp root /usr/bin/uustat -r-xr-xr-x root root /usr/bin/uuto -r-sr-xr-x uucp root /usr/bin/uux Permissions should be set properly by COHERENT when you installed it on your computer. However, if problems arise with UUCP, be sure to check that permissions are correct. If permissions have somehow been reset incorrectly, UUCP will not work because much of its work depends upon its being able to create and delete files in certain restricted directories. Should a file's permissions be ``stepped on'' for whatever reason, use the command chmod to restore them. Likewise, should the group or user who ``owns'' a file or directory be changed for whatever reason, you (or, to be more exact, the superuser root can use the commands chgrp and chown to restore proper ownership. For details on how to use these commands, see their entry in the Lexicon. Debugging UUCP Problems For information how to debug and solve common problems with UUCP, see the tutorial on UUCP that appears in the front half of this manual. See Also asy, commands, config, cu, dial, domain, modem, mwcbbs, port, sys, terminal, uuchk, uucico, uuconv, uucp, uucpname, uudecode, uuencode, uuinstall, uulog, uumkdir, uumvlog, uuname, uupick, uurmlock, uusched, uustat, uuto, uutouch, uutry, uux, uuxqt UUCP, Remote Communications Utility, tutorial Notes The Lexicon entry mail gives directions on how to send mail to users on popular commercial networks. For information on how to hook up a Trailblazer modem to run UUCP, see the Lexicon entry for modem. The COHERENT implementation of UUCP was written by Ian Lance Taylor (ian@airs.com). It was ported to COHERENT by Robert Chalmers (earth@nanguo.cstpl.com.au). For information on copyright and availablity of source code, see the documentation included in file /usr/src/alien/uudoc.tar.Z.