Annotation of cci/usr/src/usr.bin/bsc/doc/tutor.txt, revision 1.1

1.1     ! root        1: .RP
        !             2: .TL
        !             3: Using the 2780/3780 Utilities
        !             4: .AU
        !             5: Risa Galant
        !             6: .AI
        !             7: D. L. Buck and Associates, Inc.
        !             8: .LP
        !             9: The
        !            10: .I BSC
        !            11: utilities are a collection of programs, library-files, and drivers which
        !            12: are used to perform batch communications with remote computers, and which
        !            13: make non-IBM terminals look like IBM 2780 or 3780 communications terminals.
        !            14: .LP
        !            15: This tutorial describes some basic terminology, how files are sent and
        !            16: received, how each utility works, and
        !            17: how to use each invocation. The utilities are presented in two parts:
        !            18: those used daily by everyone interested in communicating with remote
        !            19: computers, and those the system administrator will use for maintenance and
        !            20: administration.
        !            21: .LP
        !            22: The utilities are presented in probable order of use:
        !            23: .ID
        !            24: I. Daily use
        !            25:    1. Queuing files for batch transmission
        !            26:    2. Searching host spool directories for files received 
        !            27:    3. Formatting files received 
        !            28: 
        !            29: II. Administration and Maintenance
        !            30:    1. Checking the communications log (if one is kept)
        !            31:    2. Clearing old received files from the host spool directories 
        !            32:    3. Purging the communications log
        !            33:    4. Using /usr/lib/crontab to make BSC run automatically
        !            34: .DE
        !            35: .SH
        !            36: Terminology
        !            37: .LP
        !            38: The following terms will be used throughout this tutorial:
        !            39: .RS
        !            40: .IP \(bu
        !            41: Remote host, or host
        !            42: .IP
        !            43: The remote host is any remote computer with which communications are to take
        !            44: place. There may be more than one. Your system administrator should know with
        !            45: what hosts you may communicate.
        !            46: .IP \(bu
        !            47: Spool directory
        !            48: .IP
        !            49: This refers to a special directory on the computer into which transmission
        !            50: control files for files to be transmitted to a particular host are
        !            51: placed, and into which files received from 
        !            52: that host are placed. Each host to be communicated with must have a 
        !            53: corresponding spool directory, otherwise, files intended for a particular 
        !            54: host could go to a different one, and it would be unclear from which host a 
        !            55: particular received file came.
        !            56: .IP \(bu
        !            57: Default host
        !            58: .IP
        !            59: Several of the utilities have a default name for the host (and thus for the
        !            60: spool directory); that name is 
        !            61: .I default.
        !            62: The default host is the spool directory files to be sent are queued for,
        !            63: searched for, and formatted from if no other host name is specified.
        !            64: Host names should be specified if there are several hosts which
        !            65: may be communicated with, but if there is only one, your system
        !            66: administrator has probably assigned the name "default" to it. This 
        !            67: makes invoking the utilities
        !            68: much simpler, because the need to specify a host name is eliminated.
        !            69: .IP \(bu
        !            70: .I
        !            71: BSC (Bisync)
        !            72: .R
        !            73: Daemon
        !            74: .IP
        !            75: This utility is usually invoked by an entry the system administrator made in
        !            76: .I /usr/lib/crontab.
        !            77: It controls the communications activity between your computer and the remote
        !            78: host computer, and does the actual file transfers.
        !            79: .IP
        !            80: If your computer does not have auto-dial or auto-answer facilities for
        !            81: connection to the remote computer, you may have to manually invoke the
        !            82: daemon. Your system administrator should be able to give you procedures
        !            83: for doing so.
        !            84: .RE
        !            85: .SH
        !            86: How Files Are Sent and/or Received
        !            87: .LP
        !            88: The daemon needs three things to perform its communications duties:
        !            89: .IP 1.
        !            90: A remote host configuration file for each host with which communications
        !            91: take place.
        !            92: .IP 2.
        !            93: A remote host spool directory (one per host), the name of which matches the
        !            94: name of the configuration file.
        !            95: .IP 3.
        !            96: At least one transmission control file in the remote host spool directory
        !            97: (i.e., at least one file to send, or an empty ("dummy") control file).
        !            98: .IP \(bu
        !            99: Remote Host Configuration Files
        !           100: .IP
        !           101: Configuration files are created for each remote host by the system
        !           102: administrator in a directory called
        !           103: .I /usr/lib/bscbatch.
        !           104: They serve two purposes: 1, to identify a remote host
        !           105: spool directory to the daemon, and 2, to tell the daemon how to communicate 
        !           106: with the host. They contain parameters such as in which character code data 
        !           107: will be transferred (ASCII or EBCDIC), how long to put up with a specified 
        !           108: (unusual) line condition before terminating a communications session, and
        !           109: how many times to try to get the communications line to the remote host
        !           110: before giving up. If the configuration file doesn't exist, there's no
        !           111: host spool directory as far as the daemon is concerned.
        !           112: .IP \(bu
        !           113: Remote Host Spool Directory
        !           114: .IP
        !           115: As previously explained in the terminology section, this directory's 
        !           116: function is to contain files received from the host, and transmission
        !           117: control files created when files are queued for transmission. It must
        !           118: have the same name as the host configuration file or the daemon won't
        !           119: know it exists.
        !           120: .IP \(bu
        !           121: Transmission Control Files
        !           122: .IP
        !           123: Transmission control files are created by
        !           124: .I bscbatch
        !           125: for every file which is queued for transmission. They're placed in the
        !           126: remote host spool directory,
        !           127: .I /usr/spool/bscbatch/<hostname>,
        !           128: where <hostname> is the name of a real host spool directory on your computer.
        !           129: They tell the daemon what file(s) to transmit, how to transmit them, whether
        !           130: special mail should be sent when they've been successfully transmitted, and
        !           131: whether to send only a copy of the file.
        !           132: .IP
        !           133: Your system administrator will already have set up all the configuration files
        !           134: and spool directories you need you need them.
        !           135: All you really need to know is the name assigned to the remote host
        !           136: on your computer; the
        !           137: .I BSC
        !           138: daemon and the utilities will do the rest.
        !           139: .IP \(bu
        !           140: How It Works
        !           141: .IP
        !           142: Once invoked, the daemon searches the
        !           143: .I /usr/lib/bscbatch
        !           144: directory for a host configuration file. When it finds one, it searches
        !           145: .I /usr/spool/bscbatch/<hostname>
        !           146: for transmission control files. If it finds one, it pulls the information
        !           147: from the configuration file and tells its driver how it intends to 
        !           148: communicate with the remote host. It then opens the file to be transmitted
        !           149: and attempts to send it. If transmission is successful, it looks for another
        !           150: one to send, repeating the process until there are no more transmission
        !           151: control files in the spool directory. At that time, it waits,
        !           152: ready to receive files. If the host has anything to transmit,
        !           153: it does so.
        !           154: .IP
        !           155: If, when communications first start, the host is more persistant than the 
        !           156: daemon and
        !           157: wants to transmit first, the daemon will give up and decide to receive
        !           158: instead. It attempts to send again when the host is finished, and when it is
        !           159: done transmitting, it informs the host it is ready to receive again.
        !           160: .IP 
        !           161: When no further activity is detected with the remote host for a period of
        !           162: time specified by the system administrator, the daemon
        !           163: "times out", i.e. it decides to end the session with that host. It
        !           164: continues to search through
        !           165: .I /usr/lib/bscbatch
        !           166: for host spool directories, repeating the communications process for each
        !           167: one it finds. When it doesn't find any more hosts, the daemon ceases
        !           168: to exist.
        !           169: .IP
        !           170: Received files are placed in 
        !           171: .I /usr/spool/bscbatch/<hostname>
        !           172: with names which are useful only to differentiate one file from another;
        !           173: they're meaningless for anything else. The standard form is:
        !           174: .RS
        !           175: .IP
        !           176: PR<4-digit index #><daemon's process id #>
        !           177: for print files, and
        !           178: 
        !           179: PU<4-digit index #><daemon's process id #>
        !           180: for punch files.
        !           181: .RE
        !           182: .IP
        !           183: For example, if the daemon's process id is 89 and it receives two
        !           184: print files, it will place the print files in the host spool directory
        !           185: and name the first one PR000089 and the second one PR000189.
        !           186: .SH
        !           187: Command Syntax Conventions
        !           188: .LP
        !           189: Command syntax of the utilities is shown as follows:
        !           190: .DS
        !           191: utility param [option=<name>] [option] [option] ...
        !           192: .DE
        !           193: .LP
        !           194: Words without brackets are mandatory parameters \(em they must be typed in if 
        !           195: the utility is to perform the function desired.  All the words within square 
        !           196: brackets ("[]") are optional parameters \(em they need not be specified unless 
        !           197: values other than their default values are desired.  All the words within 
        !           198: angular brackets ("<>") will be replaced by actual names, e.g. the names 
        !           199: of real files to be transmitted to a remote host, or the name of a remote 
        !           200: host to be communicated with.
        !           201: .NH 1
        !           202: Daily BSC Utilities
        !           203: .LP
        !           204: Daily use of
        !           205: .I BSC
        !           206: consists of queuing files for transmission, checking for files received from 
        !           207: a remote host, and processing files received. The utilities which perform 
        !           208: these functions are 
        !           209: .I bscbatch,
        !           210: which batches (queues) files for transmission and searches directories for 
        !           211: received files, and
        !           212: .I bscpr,
        !           213: which formats received files.
        !           214: .NH 2
        !           215: Queuing Files for Batch Transmission
        !           216: .LP
        !           217: Files must be queued before they can be transmitted to a remote host.
        !           218: .I bscbatch
        !           219: does this by creating special files called transmission control files, one
        !           220: for each file to be sent. Each contains the name of the file and
        !           221: information about the options with which it was queued, e.g., whether it is
        !           222: just a copy and should be deleted after it has been sent, or whether or not 
        !           223: to send mail if it was transmitted successfully. Transmission control files
        !           224: exist in the spool directory for a host, and start with the letter "C".
        !           225: .LP
        !           226: The
        !           227: .I BSC
        !           228: daemon attempts to contact a particular host only if it finds at least
        !           229: one transmission control file in its spool directory, so that's where
        !           230: .I bscbatch 
        !           231: puts them.
        !           232: .LP
        !           233: It is invoked as follows:
        !           234: .DS
        !           235: bscbatch [\(emto=<hostname>] [\(emcopy] [\(emmail] [\(emtransp] [<file> ...]
        !           236: .DE
        !           237: .NH 3
        !           238: The Options
        !           239: .IP \(bu
        !           240: .I \(emto=<hostname>
        !           241: .IP
        !           242: The 
        !           243: .I \(emto 
        !           244: option is used to specify a destination host. If 
        !           245: .I \(emto 
        !           246: isn't used, files will be queued in the
        !           247: .I default
        !           248: host spool directory automatically.
        !           249: .IP
        !           250: Note: only one destination host can be specified per invocation of
        !           251: .I bscbatch.
        !           252: .IP \(bu
        !           253: .I \(emcopy
        !           254: .IP
        !           255: The
        !           256: .I Bisync
        !           257: daemon depends on the transmission control file for information about what
        !           258: file is to be sent. If the 
        !           259: .I \(emcopy 
        !           260: option is specified, a copy of the file to be transmitted is created 
        !           261: in the host's spool directory, and 
        !           262: the name of that copy is put into the control file. The daemon transmits 
        !           263: the copy, rather than the file itself, when 
        !           264: communication with the remote host is begun. 
        !           265: .IP
        !           266: The 
        !           267: .I \(emcopy 
        !           268: option is especially useful if a file is going to be changed, but 
        !           269: its current version must be transmitted to the remote host. A copy can be
        !           270: made of the file in its current state and added to the spool directory, and
        !           271: work can continue on the original.
        !           272: .IP
        !           273: Once the copy has been successfully transmitted, it is removed from the
        !           274: spool directory.
        !           275: .IP
        !           276: Note: the daemon removes only
        !           277: .I copy
        !           278: files from the spool directory; originals are not removed from their 
        !           279: directories.
        !           280: .IP \(bu
        !           281: .I \(emmail
        !           282: .IP
        !           283: Mail is usually sent to the system administrator only if there were
        !           284: problems during the transmission or reception of files. If 
        !           285: .I \(emmail 
        !           286: is specified, mail will be sent to the user id queuing the file 
        !           287: if it was transmitted successfully.
        !           288: .IP \(bu
        !           289: .I \(emtransp
        !           290: .IP
        !           291: The
        !           292: .I Bisync
        !           293: daemon checks whether special control characters exist in the 
        !           294: file being transmitted. If there are any, it changes its transmission 
        !           295: mode so that those characters are transmitted safely, i.e. not considered 
        !           296: to be
        !           297: .I BSC
        !           298: control characters, but actual data. This mode is known as the
        !           299: .I transparent 
        !           300: mode. It enables special characters which are part of a
        !           301: file's text to be treated as data, rather than as characters with
        !           302: special meaning for the daemon.
        !           303: .IP
        !           304: If 
        !           305: .I \(emtransp 
        !           306: is specified, the file will be sent in transparent mode with no
        !           307: special character checking done by the daemon. 
        !           308: .I \(emtransp 
        !           309: is generally used
        !           310: only if the file to be sent 
        !           311: .I has
        !           312: to be sent in transparent mode for remote host compatability reasons. 
        !           313: That sort of situation is unusual, and
        !           314: .I \(emtransp
        !           315: really isn't needed for normal communications activity.
        !           316: .IP
        !           317: Note: this form is usually slower than non-transparent mode.
        !           318: .IP \(bu
        !           319: Additional notes
        !           320: .IP
        !           321: All files queued during a single session of 
        !           322: .I bscbatch
        !           323: will be queued with the same options. If, for example, it is desired that a 
        !           324: .I copy 
        !           325: of only one file of, say, 20 to be queued be transmitted, it is 
        !           326: better if that file is queued via a separate command to avoid needless 
        !           327: use of space.
        !           328: .IP
        !           329: .I bscbatch
        !           330: does its work quietly \(em no prompts are displayed, no input is needed beyond
        !           331: invoking it with appropriate parameters and/or options. It's easy to know
        !           332: when it is finished \(em the system prompt will appear.
        !           333: .IP \(bu
        !           334: [<file>]
        !           335: .IP
        !           336: Substitute the names of files to be queued for transmission for the [<file>]
        !           337: option, separated by spaces. Several files can be queued at once, or separate
        !           338: invocations of 
        !           339: .I bscbatch
        !           340: can be made as files are ready for transmission.
        !           341: .IP
        !           342: If no file names are specified, 
        !           343: .I bscbatch
        !           344: creates a "copy" file from text entered on the terminal ("standard input")
        !           345: as it is running, placing it in the host's spool directory. The transmission 
        !           346: control file created contains the same kind of information as those which are 
        !           347: created for files queued with the 
        !           348: .I \(emcopy 
        !           349: option.
        !           350: .IP
        !           351: Text is entered at the terminal as if the terminal is a typewriter. When
        !           352: all text has been entered, type control-d on a line by itself.
        !           353: This signals
        !           354: .I bscbatch
        !           355: that the file is complete. It creates the "copy" file, and returns to the
        !           356: system prompt. Only one file can be queued this way.
        !           357: .NH 3
        !           358: Sample Queuing Invocations
        !           359: .LP
        !           360: Suppose you want to send three files, stuff, more_stuff, and further_stuff,
        !           361: to a host named "2780" by the system administrator. Further, suppose you
        !           362: want mail to be sent to you when sending is completed. The following
        !           363: command will do this for you:
        !           364: .DS
        !           365: bscbatch \(emto=2780 \(emmail stuff more_stuff further_stuff
        !           366: .DE
        !           367: .LP
        !           368: Or, suppose that you want to send a binary file called obj_file to the
        !           369: .I default
        !           370: host, but you're still working on it and want to be sure that the current
        !           371: version gets sent. Use the following:
        !           372: .DS
        !           373: bscbatch \(emcopy \(emtransp obj_file
        !           374: .DE
        !           375: .NH 2
        !           376: Searching Host Spool Directories
        !           377: .LP
        !           378: .I Bscbatch
        !           379: is also used to search the host spool directories for files received from
        !           380: the hosts. This is usually done after communications have been completed.
        !           381: .LP
        !           382: It is invoked as follows:
        !           383: .DS
        !           384: bscbatch \(emq[=<host name>] [\(emt=hh[mm]] [\(eml=lines]
        !           385: .DE
        !           386: .NH 3
        !           387: The Options
        !           388: .IP \(bu
        !           389: .I \(emq[=<hostname>]
        !           390: .IP
        !           391: .I \(emq 
        !           392: is 
        !           393: .I not 
        !           394: an optional parameter. If the search function of 
        !           395: .I bscbatch
        !           396: is desired, 
        !           397: .I \(emq 
        !           398: has to be specified. Otherwise,
        !           399: .I bscbatch
        !           400: assumes that you want to queue a file for transmission.
        !           401: .IP
        !           402: If a host name isn't specified,
        !           403: .I bscbatch
        !           404: will do the search on the
        !           405: .I default
        !           406: host spool directory. Otherwise, it will search the spool directory of the
        !           407: specified host for files received.
        !           408: .IP \(bu
        !           409: .I \(emt=<hh[<mm>]>
        !           410: .IP
        !           411: .I \(emt 
        !           412: is used to limit the search for received files to those received within
        !           413: the last 
        !           414: .I hh 
        !           415: hours and, optionally, 
        !           416: .I mm 
        !           417: minutes. If 
        !           418: .I \(emt 
        !           419: isn't specified, all the files received from the host and currently in the
        !           420: spool queue are displayed.
        !           421: .IP
        !           422: .I Warning: 
        !           423: your system administrator will probably cause old received files
        !           424: to be discarded every once in a while. Don't go off on vacation and expect
        !           425: your received files to be waiting for you! As soon as you identify them,
        !           426: move them
        !           427: to a safe place in your directory. You can give
        !           428: them meaningful names this way, too, since the names the daemon assigns are
        !           429: not very meaningful (it uses 
        !           430: its process id and an index number to tell files apart). "mv"ing your files
        !           431: will also help keep the size of the spool directories to reasonable limits.
        !           432: .IP \(bu
        !           433: .I \(eml=<lines>
        !           434: .IP
        !           435: .I <lines>
        !           436: must be a number greater than 0 (zero).
        !           437: .I bscbatch
        !           438: displays the first 20 lines of each file received. If some other
        !           439: number of lines is desired, use the 
        !           440: .I \(eml 
        !           441: option to specify how many.
        !           442: .NH 3
        !           443: Sample Search Invocations
        !           444: .LP
        !           445: Let's say that your system administrator set up the
        !           446: .I bsc
        !           447: daemon to run overnight, and when you start work in the morning, you
        !           448: want to see if you received anything from your favorite host, 2780.
        !           449: You know that you can identify any file that's yours in the first 10
        !           450: lines, so you enter:
        !           451: .DS
        !           452: bscbatch \(emq=2780 \(emt=8 \(eml=10
        !           453: .DE
        !           454: .LP
        !           455: This causes
        !           456: .I bscbatch
        !           457: to search 2780's spool directory for any files received within the last eight
        !           458: hours and to display the first 10 lines of each one found.
        !           459: .LP
        !           460: On the other hand, you can poke around the entire queue of received files in
        !           461: the 
        !           462: .I default
        !           463: host spool directory and display 20 lines of each one by typing:
        !           464: .DS
        !           465: bscbatch \(emq
        !           466: .DE
        !           467: .LP
        !           468: Note: If it is possible to identify which files are yours versus which files
        !           469: are someone else's merely by looking at them, your system administrator may
        !           470: have modified the
        !           471: .I bsc
        !           472: daemon to have it place your files in your directory and send you some mail 
        !           473: when they
        !           474: arrive. In that case, you won't need to use the search option at all.
        !           475: .NH 2
        !           476: Formatting Files Received
        !           477: .LP
        !           478: .I bscpr
        !           479: is used to format files received from the remote host which contain
        !           480: IBM 3780 or 2780 terminal control characters and escape sequences.
        !           481: It is invoked as follows:
        !           482: .DS
        !           483: bscpr [\(emascii] [\(empage=<pp>] [<chan>=<lineno> ...] [<file>]
        !           484: .DE
        !           485: .NH 3
        !           486: The Options
        !           487: .IP \(bu
        !           488: .I \(emascii
        !           489: .IP
        !           490: .I Bscpr
        !           491: assumes that all the control characters and escape sequences used for
        !           492: printer positioning are EBCDIC style unless this parameter is specified.
        !           493: EBCDIC and ASCII use different letters to identify vertical positioning,
        !           494: so this parameter is important.
        !           495: .IP \(bu
        !           496: .I \(empage=<pp>
        !           497: .IP
        !           498: Page length is assumed to be 66 lines unless this parameter is specified.
        !           499: .IP \(bu
        !           500: <chan>=<lineno>
        !           501: .IP
        !           502: This parameter allows the user to tell
        !           503: .I bscpr
        !           504: the line numbers to which channel numbers specified in the file's escape 
        !           505: sequences correspond. 
        !           506: .I <chan> 
        !           507: may be a number from 1 to 12. 
        !           508: .I <lineno> 
        !           509: may be a number from 1 to whatever the page length is: 66 if the default page
        !           510: length is being used, or the length set in the 
        !           511: .I \(empage 
        !           512: option. 
        !           513: .IP
        !           514: Usually, channel 1 is top-of-form, channel 12 is bottom-of-form, and the 
        !           515: rest correspond to line numbers in between. 
        !           516: .NH 3
        !           517: Sample Invocation
        !           518: .LP
        !           519: Suppose you received a file and "mv"ed it to your directory, calling it
        !           520: received_file.
        !           521: If you'd like to see what received_file looks like when it is formatted on your
        !           522: terminal, using line 22 of your terminal as bottom of form, type:
        !           523: .DS
        !           524: bscpr \(empage=22 12=22 received_file
        !           525: .DE
        !           526: .LP
        !           527: .I Bscpr 
        !           528: will format 
        !           529: .I received_file
        !           530: with 22 lines per page, and any escape sequence specifying channel 12
        !           531: will cause bscpr to go to line 22, the bottom of the page.
        !           532: .SH 
        !           533: See Also:
        !           534: .LP
        !           535: .ID
        !           536: BSCBATCH(8)
        !           537: BSCPR(1C)
        !           538: .DE
        !           539: .LP
        !           540: For information on escape sequences for forms control:
        !           541: .LP
        !           542: .I
        !           543: Component Description: IBM 2780 Data Transmission Terminal,
        !           544: .R
        !           545: IBM document GA27-3005.
        !           546: .br
        !           547: .I
        !           548: Component Description: IBM 3780 Data Communication Terminal, 
        !           549: .R
        !           550: IBM document GA27-3063.
        !           551: .NH 1
        !           552: Administration and Maintenance
        !           553: .LP
        !           554: Administration and maintenance of
        !           555: .I bsc
        !           556: consists of checking the communications log regularly,
        !           557: doing periodic clean-ups of old received files in the
        !           558: host spool directories, and periodically purging the log of old entries.
        !           559: The utilities which perform these functions are
        !           560: .I bsclog,
        !           561: which puts log entries into report format and displays them and purges 
        !           562: the log, and
        !           563: .I bsclean,
        !           564: which cleans out the host spool directories.
        !           565: .NH 2
        !           566: Checking the Communications Log
        !           567: .LP
        !           568: A log of all communications activity with a remote host is kept if a file named
        !           569: .I AUDIT
        !           570: has been created in the host's spool directory. Information in the log
        !           571: includes communications session statistics, files sent and received,
        !           572: their sizes in bytes and number of blocks they were transmitted in,
        !           573: when files were queued for transmission, problems encountered, reasons
        !           574: for disconnection, and so on. Each entry includes the date and time that
        !           575: the event for which it was made occurred, the class of the event, and
        !           576: the user id on which the event took place.
        !           577: .LP
        !           578: .I bsclog
        !           579: is used to put the information in the communications log into a
        !           580: readable report format. It displays all entries in the communications log 
        !           581: for the 
        !           582: .I default
        !           583: host, unless one or more of its options are used to limit the display.
        !           584: It is invoked as follows:
        !           585: .DS
        !           586: .ta 0.6i
        !           587: bsclog [<hostname>] [\(emfrom=[<yymmdd>]<hhmm>] 
        !           588:        [\(emto=[<yymmdd]<hhmm>] [\(emclass=<class(es)>] 
        !           589:        [\(emuser=<user id>]
        !           590: .DE
        !           591: .NH 3
        !           592: The Options
        !           593: .IP \(bu
        !           594: .I <hostname>
        !           595: .IP
        !           596: If you're checking the log for any host besides the
        !           597: .I default
        !           598: host, specify it here.
        !           599: .IP \(bu
        !           600: .I \(emfrom=[<yymmdd>]<hhmm>
        !           601: .IP
        !           602: .I bsclog
        !           603: will display the entire communications log unless you give it some limits. Use
        !           604: .I \(emfrom
        !           605: to tell it from which point you'd like to check the log. 
        !           606: If only hours and minutes are specified,
        !           607: .I bsclog
        !           608: will assume that today's entries are to be displayed, starting at
        !           609: the time hh:mm. If a specific date is desired, enter the date
        !           610: .I and
        !           611: the time from which to start checking, in year-month-day-hours-minutes
        !           612: format, e.g. 8305261000 for May 26, 1983 at 10:00 a.m.
        !           613: .IP
        !           614: Four-digit times must be specified, e.g. 8 a.m. is specified as 0800,
        !           615: 3 p.m. as 1500, etc.
        !           616: .IP
        !           617: Note: hours and minutes
        !           618: .I must
        !           619: be specified if
        !           620: .I \(emfrom
        !           621: is used. Year, month, and day are optional.
        !           622: .IP \(bu
        !           623: .I
        !           624: \(emto=[<yymmdd>]<hhmm>
        !           625: .IP
        !           626: If 
        !           627: .I \(emfrom
        !           628: can be thought of as a starting point for checking the communications log,
        !           629: .I \(emto
        !           630: can be thought of as an ending point. If only
        !           631: .I \(emfrom
        !           632: is specified, 
        !           633: .I bsclog
        !           634: will display everything from the starting time until it reaches the end of
        !           635: the log. If you really don't want to display that much information, use
        !           636: .I \(emto
        !           637: to specify the ending point you want.
        !           638: .IP
        !           639: As with
        !           640: .I \(emfrom,
        !           641: if only hours and minutes are specified,
        !           642: .I bsclog
        !           643: assumes that the ending date for checking the log is today, at the time
        !           644: specified. If a different date is desired, it must be specified in the 
        !           645: year-month-day-hours-minutes format.
        !           646: .IP
        !           647: Note: as in 
        !           648: .I \(emfrom,
        !           649: hours and minutes 
        !           650: .I must
        !           651: be specified if 
        !           652: .I \(emto
        !           653: is used. Year, month, and day are optional.
        !           654: .IP \(bu 
        !           655: .I \(emclass=<class(es)>
        !           656: .IP
        !           657: Communications log entries come in 6 classes:
        !           658: .I
        !           659: C, D, Q, R, S,
        !           660: .R
        !           661: and
        !           662: .I T, 
        !           663: for connect, disconnect, queue, receive, send, and statistics log
        !           664: entries, respectively.
        !           665: .I bsclog
        !           666: will display all classes of log entries unless you say otherwise.
        !           667: If you wish to look at entries for a particular class
        !           668: or group of classes, rather than all of them, use 
        !           669: .I \(emclass
        !           670: to do so.
        !           671: .IP
        !           672: See 
        !           673: .I BSCLOG(8)
        !           674: for descriptions of messages and their classes.
        !           675: .IP
        !           676: Note: one or more classes may be specified, either in upper or lower case.
        !           677: Classes may be specified in any order.
        !           678: .IP \(bu
        !           679: .I \(emuser=<user id>
        !           680: .IP
        !           681: The
        !           682: .I \(emuser
        !           683: option is used to look at the log entries for a particular user id. This
        !           684: is useful for such things as checking who's queuing files for
        !           685: transmission, or who's trying to invoke the
        !           686: .I bsc
        !           687: daemon.
        !           688: .IP
        !           689: Note: any valid user id may be entered for this option, but only one may
        !           690: be specified per invocation. 
        !           691: .NH 3
        !           692: Sample Log Checking Invocations
        !           693: .LP
        !           694: Suppose that you'd like to check 2780's communications log for all activity
        !           695: between 10:00 and 11:00 on June 21, 1983. This command may be used:
        !           696: .ID
        !           697: bsclog 3780 \(emfrom=8306211000 \(emto=8306211100
        !           698: .DE
        !           699: .LP
        !           700: Or, you've been curious as to how successful the connections have been
        !           701: since you started keeping the log (or at least since the last time you
        !           702: purged it) for
        !           703: .I default.
        !           704: Type the following:
        !           705: .ID
        !           706: bsclog \(emclass=C
        !           707: .DE
        !           708: .LP
        !           709: Okay, suppose that it is June 15, 1983, and
        !           710: you want to check all the send, receive, and statistics for
        !           711: user id root between June 10, 1983 at 3 p.m. and June 12, 1983 at 3 p.m.
        !           712: for remote host 3780. Try this:
        !           713: .ID
        !           714: bsclog 3780 \(emfrom=8306101500 \(emto=8306121500 \(emuser=root \(emclass=SRT
        !           715: .DE
        !           716: .LP
        !           717: As a last example, say that you want to look at everything which happened
        !           718: with 
        !           719: .I default
        !           720: after 8 a.m. today. Type:
        !           721: .ID
        !           722: bsclog \(emfrom=0800
        !           723: .DE
        !           724: .NH 2
        !           725: Clearing Out Old Received Files 
        !           726: .LP
        !           727: Files received from remote hosts are placed in the local spool directory
        !           728: for the appropriate host. They remain in the spool directories until
        !           729: they are either claimed and "mv"ed to a user directory, or until they
        !           730: are cleared out by the system administrator.
        !           731: .LP
        !           732: .I Bsclean
        !           733: is used to clear out old received files from host spool directories.
        !           734: It removes any file which begins with PU (indicating a received punch
        !           735: file) or PR (indicating a received print file) which is more than
        !           736: 72 hours old from the
        !           737: .I default
        !           738: spool directory unless its options are used to specify otherwise.
        !           739: .LP
        !           740: It is invoked as follows:
        !           741: .ID
        !           742: bsclean [\(emt=<hh>] [<hostname>]
        !           743: .DE
        !           744: .NH 3
        !           745: The Options
        !           746: .IP \(bu
        !           747: .I \(emt=<hh>
        !           748: .IP
        !           749: If a cutoff age of other than 72 hours is used to select files for removal, use
        !           750: .I \(emt
        !           751: to specify the age. 
        !           752: .IP
        !           753: Note:
        !           754: .I <hh>
        !           755: indicates age in hours.
        !           756: .IP \(bu
        !           757: .I <hostname>
        !           758: .IP
        !           759: To clean out the spool directory of any host other than
        !           760: .I default,
        !           761: specify this option.
        !           762: .IP
        !           763: Note: 
        !           764: .I bsclean
        !           765: does its work quietly. You'll know it is done when the system prompt
        !           766: reappears.
        !           767: .NH 3
        !           768: Sample 
        !           769: Invocations
        !           770: .LP
        !           771: Suppose that you've warned all your users that you're going to clean
        !           772: out all received files in 3780's spool directory which are more than
        !           773: five days old. When you set out to do so, you'll type:
        !           774: .ID
        !           775: bsclean \(emt=120 3780
        !           776: .DE
        !           777: .LP
        !           778: If you'd rather just let
        !           779: .I bsclean
        !           780: do as it will (or you'd like all received files in
        !           781: .I default's
        !           782: spool directory removed which are older than 72 hours), you'll type:
        !           783: .ID
        !           784: bsclean
        !           785: .DE
        !           786: .NH 2
        !           787: Purging the Communications Log
        !           788: .LP
        !           789: As time goes by, more and more communications sessions occur, and the
        !           790: communications log gets larger and larger. 
        !           791: .I bsclog's
        !           792: purge function is used to reduce the size of the log.
        !           793: .LP
        !           794: It is invoked as follows:
        !           795: .ID
        !           796: bsclog  \(empurge=<dd> [<hostname>]
        !           797: .DE
        !           798: .NH 3
        !           799: The Options
        !           800: .IP \(bu
        !           801: .I <hostname>
        !           802: .IP
        !           803: This option is specified if a spool directory other than
        !           804: .I default's
        !           805: is to be purged.
        !           806: .IP \(bu
        !           807: .I \(empurge=<dd>
        !           808: .IP
        !           809: .I \(empurge
        !           810: is 
        !           811: .I not
        !           812: an optional parameter. If it isn't specified, 
        !           813: .I bsclog
        !           814: will assume that you wish to display the log, not purge it.
        !           815: .IP
        !           816: .I <dd>
        !           817: signifies the age of entries to be purged, in days. It must be greater than
        !           818: or equal to 1.
        !           819: .IP
        !           820: Note: there is no default age for purging entries. 
        !           821: .IP
        !           822: Also, 
        !           823: .I bsclog
        !           824: converts the number of days specified to the number of hours in that many
        !           825: days, and compares that to an entry's age
        !           826: before it decides whether or not to purge the entry. This may result in
        !           827: some confusion when you try to purge all entries which were made 
        !           828: yesterday, display the log to be sure they're gone, and find that
        !           829: some are still there. That's probably because exactly
        !           830: 24 hours haven't elapsed between the time the entries were made and the
        !           831: time you decided to purge them. Don't worry \(em you'll get them next time.
        !           832: .NH 3
        !           833: Sample Purging Invocation
        !           834: .LP
        !           835: Let's say that you really do want to purge all communications log entries
        !           836: which were made yesterday for the remote host 3780. Here's how:
        !           837: .ID
        !           838: bsclog 3780 \(empurge=1
        !           839: .DE
        !           840: .LP
        !           841: Or, perhaps you're clearing out the
        !           842: .I default
        !           843: communications log so that there are only two days' worth of entries in the 
        !           844: log at any time.
        !           845: The following command will rid the log of any entry
        !           846: which is at least three days old:
        !           847: .ID
        !           848: bsclog \(empurge=3
        !           849: .DE
        !           850: .NH
        !           851: How To Use Cron To Make BSC Run Automatically
        !           852: .LP
        !           853: You may wish to have the spool directories and log files cleared automatically
        !           854: on a regular basis. There is a resident clock daemon,
        !           855: .I /etc/cron,
        !           856: which executes commands at specified dates and times if those commands are
        !           857: in a file called
        !           858: .I 
        !           859: /usr/lib/crontab. /etc/cron
        !           860: .R
        !           861: is usually started by the initialization process at boot time.
        !           862: See
        !           863: .I CRON(1M)
        !           864: for more information about this facility.
        !           865: .NH 2
        !           866: Crontab Entries
        !           867: .LP
        !           868: Entries in
        !           869: .I /usr/lib/crontab
        !           870: consist of lines which each contain six fields separated by spaces or tabs.
        !           871: The first five fields are numeric values specifying dates and times to execute
        !           872: the command, which is specified in the sixth field. The date and time
        !           873: fields may have the following values:
        !           874: .DS
        !           875: .ta 2i
        !           876: Minute 0-59
        !           877: Hour   0-23
        !           878: Day of Month   1-31
        !           879: Month of Year  1-12
        !           880: Day of Week    0-6 (0 = Sunday)
        !           881: .DE
        !           882: .LP
        !           883: They are specified in the same order as they're listed above. Entries are
        !           884: made using the text editor.
        !           885: .NH 2
        !           886: Sample Entries
        !           887: .LP
        !           888: Suppose that you wanted to have bsclog purge all communications log entries
        !           889: for 3780 once a month. Further, you've decided that the 15th of each month
        !           890: at 1 a.m. would be a  good time to have this done. The following entry 
        !           891: will do this for you:
        !           892: .ID
        !           893: 0 1 15 * * bsclog 3780 \(empurge=1
        !           894: .DE
        !           895: .LP
        !           896: Or, suppose that you want to purge the log entries for
        !           897: .I default
        !           898: every week, after working hours on Fridays, leaving two days' worth of entries
        !           899: untouched. Try the following
        !           900: .I /usr/lib/crontab
        !           901: entry:
        !           902: .ID
        !           903: 30 18 * * 5 bsclog \(empurge=2
        !           904: .DE
        !           905: .LP
        !           906: This will purge all log entries older than two days at 6:30 p.m. every
        !           907: Friday.
        !           908: .LP
        !           909: As a last example, suppose that all received files older than 72 hours in the
        !           910: .I default
        !           911: spool directory are to be removed daily, at 1 a.m. Use the following
        !           912: .I /usr/lib/crontab 
        !           913: entry:
        !           914: .ID
        !           915: 0 1 * * * bsclean
        !           916: .DE
        !           917: .SH
        !           918: See Also:
        !           919: .LP
        !           920: .ID
        !           921: BSCLOG(8)
        !           922: BSCLEAN(8)
        !           923: CRONTAB(8)
        !           924: .DE
        !           925: .FS
        !           926: DLBA Version 1.2
        !           927: .FE

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.