TUA(8L)
π¦ NAME π¦
okay so bestie, meet TUA β The Uucp Analyzer. that's it, that's the name, iconic π
β¨ SYNOPSIS β¨
tua [ option ]
like, one optional argument, we keep it simple π
π NOTE π
β οΈ no cap, this manual page is no longer supported. for the up-to-dated info you gotta go look at tua.texinfo. i'm just the messenger π«Ά
πΈ DESCRIPTION πΈ
so what does TUA even do? its whole purpose is to cook up a readable and complete analysis of your HoneyDanBer UUCP connections. literally that's the vibe. this manual page walks you through the TUA command line options and gives you a quick little tour of what its output looks like β¨
π OPTIONS π
to specify any of the options, you can use either the short form or the more mnemonic long form. with the long form, you can abbreviate the name as long as it's unique β so like, keep it distinct or it gets confused. for more info on the long format, go read the GNU getopt package description π§
-S,+no-sys-repβ don't print the per System report. the default is to print it out, so this is you saying "nah, skip that one"-U,+no-user-repβ don't print the per User report. default? yeah, it prints it out-D,+no-daily-repβ don't print the Daily report. you guessed it, default is printing it out π-C,+command-listsβ also show the command lists. it's off by default because it makes TUA very hungry of memory π like it will eat your RAM fr fr-O,+only-system SYSTEMβ only consider system SYSTEM in the reports. and you can specify this option more than once, so you can have TUA consider just those systems π-m,+no-monthly-actβ don't output the last 12 months activity summary-h,+no-historyβ don't output the history at the end of the reports-c,+separate-comβ separate command lists from the other data. so you'll get two tables, both with the headerBy System: the first one holds only the amounts and the timing of each transfer, the second one has all the commands invoked by each System. heads up β you must also specify the-Coption to make it work π-k,+kill-system SYSTEMβ eliminate every reference to SYSTEM from the reports. neither the transfer table nor the SYSTEM command list gets printed. it's giving ghosting π»-K,+kill-user USERβ like-k, but it applies to the user called USER-H,+update-histβ update the history database (peep the FILES section below) with the new values. you must have the uucp write permission for this one π-0,+reset-histβ reset the history database, deleting any systems in it. then it puts in the database the analysis since the lastuuclean. you have to also specify-Hto make this option do his job π«‘-y,+no-hourly-chartβ don't display the hourly activity chart-z,+chart-size SIZEβ set the size of the hourly activity chart to SIZE rows. the greater this number is, the smaller the scale gets. by default it's set to10π-o,+chart-onlyβ display only the hourly activity chart. and since with this option TUA reads only.Admin/xferstats, it's faster πββοΈπ¨-v,+verboseβ print, on standard error, what is going on. while TUA reads the various logs, it displays a counter of the loaded lines. main character narration energy tbh-p,+prefix-path PATHβ by default, TUA looks for uucp data in/usr/spool/uucp/and in the relative subdirectory. for debugging purposes, this option lets you change that directory, so TUA looks for the data in the specified PATH. below this point TUA needs a hierarchy like the standard one (see FILES below) π-u,+user-alias USER=ALIASβ inserts ALIAS as the new name for USER. wherever USER appears, it gets replaced with ALIAS. and since this happens at the lowest level, if it happens that ALIAS is another user name, this will cause all the data that belongs to USER to be added to the ALIAS user. merging eras fr π-r,+port-alias PORT=ALIASβ like-u, but it applies to the serial port names. this can be useful on those OS where a single serial port has two names, one for normal use and the other with modem control (eg.tty1aandtty1A) π-s,+sys-alias SYS=ALIASβ like-u, but it applies to the systems names-E,+glob-user-alias GLOB=ALIAS-R,+glob-port-alias GLOB=ALIAS-M,+glob-sys-alias GLOB=ALIASβ these three are the counterparts, respectively, of-u,-rand-s, but with meta-characters searches. you can use for example
tua +glob-user-alias uu*=UUCPUSERS
and every user name that begins with uu will be mapped in a meta user called UUCPUSERS. check sh(1) for a description of meta-characters β¨
-i,+helpβ show a summary and a description of all the options. the "help me help you" option π«Ά
π OUTPUT π
all reports get printed on standard output, so you can easily redirect them wherever you want. and assuming β unless otherwise stated β that you do not explicitly request to disable some of the reports (eg. when you do not specify any command line option), here's a short description of what you get πΈ
By System
with this report you get all the information relative to all the nodes that talk with your machine, but not those which didn't send or receive something. the data is divided into inbound and outbound. for each system, displayed in alphabetical order, you get the total count of the files transferred, with the relative bytes and times, as well as an average transfer rate (ATP). if +commands-lists was specified, next there's the list of the commands invoked by that node, or directed to it. and if a command is preceded by a number between brackets, that number tells you how many times that command was invoked π
By User
this report is similar to the previous one, but it shows β in alphabetical order for each local user β all the commands the user invoked, and the transfers he caused π«
By Day
this report summarizes the per day activity on the local machine. it doesn't depend on the destinations and on the users ποΈ
SUMMARY by System
it shows a summary of the activity of each system, and the number of calls (inbound and outbound) for it. please note that sometimes TUA fails at calculating the exact number of calls, because of the misleading log of uucico π note also that the "total connection time" always differs from the sum of the transmissions times, because it takes care also of the various uucp dead time. in fact, it is calculated from the difference between the time in which the nodes are really connected (ie. at the end of dial phase, when the modem answers) and the time in which the link is dropped, due to the end of the conversation as well as to any error. then comes the time of the last connection with that system. there's also the subdivision of the connection time based on the phone costs, ie "day", "evening", "night". this is completely configurable, so if your telephone company uses a different hourly division you can adjust it (see config.h and phonesw.c.) βοΈ
SUMMARY by System (table format)
substantially, this report summarizes some of the previous information in a tabular form. nothing new... π
and since ...
this is the historical data maintained by TUA. it looks like the previous table, but it includes the history of the system, incrementally π
Last 12 Months Activity
this table shows the activity of the local machine during the last 12 months. only the transferred amounts are computed. the months are displayed in a manner so that the last column contains the current one, so it's very readable (of course, it's a matter of opinions!) π
Hourly Activity (per communication port)
this chart shows the uucp hourly load for each used communication port. each hour is divided in 20 minutes slices β°
Global Hourly Activity
the same as the previous chart, but it reports the sums of all the ports π
π§ HISTORY π§
TUA maintains a database with the history of each system and of the activity in each of the last 12 months activities. it's usually located in /usr/spool/uucp/.Admin/tua.history and it is actually an ASCII file. it is up to you to update it or not, because probably you will like to run TUA simply to have a notion of what is going on. to make it work correctly, you have to run TUA with the option +update-hist just before you run uuclean. so probably you will have to modify that script, including in it a line like
tua +update-hist {whatever options you like} βͺ mail lele
before it cleans up the uucp logs π
π BUGS π
since HDB-Uucp doesn't put a complete datestamp in its logs, but omits the year, it may be possible that TUA fails to compute the various times in the first analysis of the year. this is, in my opinion, its major weakness π for this silliness, TUA cannot correctly handle logs that cover several years. there is little that can be done to correct the situation; the author tried to adjust the year when the to-be-parsed date refers obviously to the previous year, but this is just a work-around...
there is a limit: if your system spent more than 9999 hours linked with someone (or the sum exceeds that value), the reports will be garbaged... π
π DISCLAIMER π
TUA is free, and it is redistributable under the terms of the GNU General Public License. you can find a copy of it in the file COPYING in the distribution package. the author rejects any responsibility about it. it is simple and safe, but it was not tried under all the possible conditions and environments, so if it causes you some trouble, he'll be sad for a while, but that's it. however, he will try to correct any bugs you tell him π«Ά
and please, forgive his poor english, but he put his soul in it... π₯Ί
β AUTHOR β
Lele Gaifas, Idea Informatica, Rovereto (TN) - Italy ( piggy@idea.sublink.org ) π
π FILES π
.../.Log/uucico/*β uucico's logs.../.Log/uucp/*β uucp's logs.../.Log/uux/*β uux's logs.../.Log/uuxqt/*β uuxqt's logs.../.Admin/xferstatβ Transfer stats.../.Admin/tua.historyβ TUA's system history
π¬ BUGS REPORT TO π¬
Lele Gaifas, piggy@idea.sublink.org
π ACKNOLEDGMENT π
big thanks especially to Marco Lorenzini (marlor@gear.sublink.org) for his help in debugging the previous releases of TUA on the SCO Unix architecture, and for his suggestions on the layout of the reports π«Ά and to the "omnipresent" Paolo Ventafridda (venta@i2ack.sublink.org) for his support and interest, and to several other people that encouraged him to add more and more functionality, or that let him scan their huge logs π thanks also to all the people that, with their PD or GPL software, helped him indirectly with ideas or examples β¨
and that's the whole page bestie!! π this was Release 3.4, dated 16 November 1991, and yeah it lives under TUA(8L) β slay, go analyze those UUCP connections, no cap π¦β¨π
π¦ where this page comes from
- debian bookworm: tua 4.3-14
- debian trixie: tua 4.3-17
- ubuntu jammy: tua 4.3-14
- ubuntu noble: tua 4.3-14
- ubuntu resolute: tua 4.3-17
- ubuntu stonking: tua 4.3-17
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms