uucico(8)

πŸ“¦
version 1.07 Β· 3 versions
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– 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 -l or --prompt option will prompt once and then exit. in this mode the UUCP administrator or the superuser may use the -u or --login option to force a login name, in which case uucico will not prompt for one. one and done, queen.
  • the -e or --loop option will prompt again after the first session is over. in this mode uucico will permanently control a port. she lives there now 🏠

🚨 signals, aka the drama section 🚨

  • if uucico receives a SIGQUIT, SIGTERM or SIGPIPE signal, she will cleanly abort any current conversation with a remote system and exit. graceful exit, we love to see it.
  • if she receives a SIGHUP signal she will abort any current conversation, but will continue to place calls to (if invoked with -r1 or --master) and accept calls from (if invoked with -e or --loop) other systems. she's down but she's not out.
  • if she receives a SIGINT signal 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.
  • -s system, --system system β€” call the named system.
  • -S system β€” call the named system, ignoring any required wait. this is equivalent to -s system -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 allows uucico to be easily run from inetd(8). the login name and password are checked against the UUCP password file, which probably has no connection to the file /etc/passwd. the --login option may be used to force a login name, in which cause uucico will only prompt for a password.
  • -p port, --port port β€” 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 use kill(1) to shut it down. > bestie she will not leave on her own. you have to actually tell her. use kill(1). i'm serious. 😭
  • -w, --wait β€” after calling out (to a particular system when -s, --system, or -S is specified, or to all systems which have work when just -r1 or --master is 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 the uuxqt(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 by uustat(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, --system or -S if there is work for that system. no work, no call. simple as.
  • -D, --nodetach β€” do not detach from the controlling terminal. normally uucico detaches from the terminal before each call out to another system and before invoking uuxqt. this option prevents this. she stays attached. clingy era πŸ₯Ί
  • -u name, --login name β€” 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 cause uucico to 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 πŸ’ͺ
  • -i type, --stdin type β€” set the type of port to use when using standard input. the only supported port type is TLI, and this is only available on machines which support the TLI networking interface. specifying -iTLI causes uucico to use TLI calls to perform I/O.
  • -x type, -X type, --debug type β€” 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.

  • -I file, --config file β€” set configuration file to use. > this option may not be available, depending upon how uucico was 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 πŸ’–βœ¨πŸ¦‹