uucico(8)
π uucico(8) β the UUCP file transfer daemon, bestie edition π
okay so you found your way into the System Manager's Manual section 8, and honestly? iconic. welcome to uucico, the UUCP file transfer daemon. she's the one doing the actual calling and file-slinging, and she is so much. let's get into it π¦
β¨ SYNOPSIS β¨
uucico [ options ]
that's it. that's the whole vibe. just a girl and her options π
πΈ DESCRIPTION πΈ
so the uucico daemon processes file transfer requests that got queued up by uucp(1) and uux(1). she gets started whenever uucp or uux runs β unless they were given the -r option, in which case she stays in her room. she also typically gets started periodically via entries in the crontab table(s). yes, cron. she's booked and busy fr fr β°
when you invoke her with -r1, --master, -s, --system, or -S, the daemon will place a call to a remote system, running in master mode. otherwise? she starts in slave mode, accepting a call from a remote system. typically a special login name gets set up for UUCP which automatically invokes uucico when a call comes in. it's giving "she answers the phone herself" energy βοΈ
when uucico terminates, she invokes the uuxqt(8) daemon β unless you gave her -q or --nouuxqt. and what does uuxqt(8) do? she executes any work orders created by uux(1) on a remote system, plus any work orders created locally which have received remote files for which they were waiting. teamwork, babes π«Ά
if a call fails, uucico will normally refuse to retry the call until a certain (configurable) amount of time has passed. no cap. this may be overridden by the -f, --force, or -S option. she's dramatic but she's punctual.
the -l, --prompt, -e, or --loop options may be used to force uucico to produce her own prompts of "login: " and "Password:". when another daemon calls in, it'll see these prompts and log in as usual. the login name and password will normally be checked against a separate list kept specially for uucico rather than the /etc/passwd file β though it is possible on some systems to direct uucico to use the /etc/passwd file instead. π
- the
-lor--promptoption will prompt once and then exit. in this mode the UUCP administrator or the superuser may use the-uor--loginoption to force a login name, in which caseuucicowill not prompt for one. one and done, queen. - the
-eor--loopoption will prompt again after the first session is over. in this modeuucicowill permanently control a port. she lives there now π
π¨ signals, aka the drama section π¨
- if
uucicoreceives aSIGQUIT,SIGTERMorSIGPIPEsignal, she will cleanly abort any current conversation with a remote system and exit. graceful exit, we love to see it. - if she receives a
SIGHUPsignal she will abort any current conversation, but will continue to place calls to (if invoked with-r1or--master) and accept calls from (if invoked with-eor--loop) other systems. she's down but she's not out. - if she receives a
SIGINTsignal she will finish the current conversation, but will not place or accept any more calls. finishing what she started and then closing the group chat forever π
π OPTIONS π
the following options may be given to uucico. yes, all of them. no skipping.
-r1,--masterβ start in master mode (call out to a system). implied by-s,--system, or-S. if no system is specified, call any system for which work is waiting to be done.-r0,--slaveβ start in slave mode. this is the default. no thoughts, just listening.-ssystem,--systemsystem β call the named system.-Ssystem β call the named system, ignoring any required wait. this is equivalent to-ssystem-f. she's impatient, and honestly? valid.-f,--forceβ ignore any required wait for any systems to be called.-l,--promptβ prompt for login name and password using"login: "and"Password:". this allowsuucicoto be easily run frominetd(8). the login name and password are checked against the UUCP password file, which probably has no connection to the file/etc/passwd. the--loginoption may be used to force a login name, in which causeuucicowill only prompt for a password.-pport,--portport β specify a port to call out on or to listen to.-e,--loopβ enter an endless loop of login/password prompts and slave mode daemon execution. the program will not stop by itself; you must usekill(1) to shut it down. > bestie she will not leave on her own. you have to actually tell her. usekill(1). i'm serious. π-w,--waitβ after calling out (to a particular system when-s,--system, or-Sis specified, or to all systems which have work when just-r1or--masteris specified), begin an endless loop as with--loop. so basically she calls out and then just... hangs around. like a friend waiting by your locker.-q,--nouuxqtβ do not start theuuxqt(8) daemon when finished. she's off the clock, periodt.-c,--quietβ if no calls are permitted at this time, then don't make the call, but also do not put an error message in the log file and do not update the system status (as reported byuustat(1)). this can be convenient for automated polling scripts, which may want to simply attempt to call every system rather than worry about which particular systems may be called at the moment. this option also suppresses the log message indicating that there is no work to be done. > shhhh. no noise. no logs. just vibes. π€«-C,--ifworkβ only call the system named by-s,--systemor-Sif there is work for that system. no work, no call. simple as.-D,--nodetachβ do not detach from the controlling terminal. normallyuucicodetaches from the terminal before each call out to another system and before invokinguuxqt. this option prevents this. she stays attached. clingy era π₯Ί-uname,--loginname β set the login name to use instead of that of the invoking user. > this option may only be used by the UUCP administrator or the superuser. permission check, bestie. β if used with--prompt, this will causeuucicoto prompt only for the password, not the login name.-z,--try-nextβ if a call fails after the remote system is reached, try the next alternate rather than simply exiting. resilience icon πͺ-itype,--stdintype β set the type of port to use when using standard input. the only supported port type isTLI, and this is only available on machines which support the TLI networking interface. specifying-iTLIcausesuucicoto use TLI calls to perform I/O.-xtype,-Xtype,--debugtype β turn on particular debugging *type*s. the following types are recognized:abnormal,chat,handshake,uucp-proto,proto,port,config,spooldir,execute,incoming,outgoing.
multiple types may be given, separated by commas, and the --debug option may appear multiple times. a number may also be given, which will turn on that many types from the foregoing list; for example, --debug 2 is equivalent to --debug abnormal,chat.
the debugging output is sent to the debugging file, which may be printed using uulog -D.
-Ifile,--configfile β set configuration file to use. > this option may not be available, depending upon howuucicowas compiled. π check your build, bestie.-v,--versionβ report version information and exit. she'll tell you who she is and then dip.--helpβ print a help message and exit.
π SEE ALSO π
kill(1), uucp(1), uux(1), uustat(1), uuxqt(8)
go read those too. expand your horizons. iykyk π
π AUTHOR π
Ian Lance Taylor <ian@airs.com>
and that's the whole page, bestie. this one's from Taylor UUCP 1.07 β uucico(8), section 8 of the System Manager's Manual. thank you for coming to my ted talk, go call some systems, mwah πβ¨π¦
π¦ where this page comes from
- debian bookworm: uucp 1.07-27+b2 Β· GPL-2.0-only
- debian trixie: uucp 1.07-30 Β· GPL-2.0-only
- ubuntu jammy: uucp 1.07-27build3 Β· GPL-2.0-only
- ubuntu noble: uucp 1.07-29 Β· GPL-2.0-only
- ubuntu questing: uucp 1.07-31
- ubuntu resolute: uucp 1.07-31build1 Β· GPL-2.0-only
- ubuntu stonking: uucp 1.07-31build1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms