home *** CD-ROM | disk | FTP | other *** search
/ Nebula / nebula.bin / Newsletters / GEnieUnixNews / unxnl-07.93 < prev    next >
Text File  |  1993-08-07  |  53KB  |  1,404 lines

  1.  
  2.           _  _  _   _  _   _
  3.          // // //| // // \//     N E W S
  4.         //_// // |// //  /\\     Vol 4, Issue 7 - July 1993
  5.       R o u n d T a b l e (tm)
  6.  
  7.    Items of interest to participants of the GEnie Unix RoundTable
  8.  
  9.  INDEX TO VOLUME 4, ISSUE 7:
  10.  ===========================
  11.  
  12.  ED: editor notes - (GARS) Gary Smith
  13.  --
  14.   - Sirius Rising
  15.  NeXT Column (ERICTREMBLAY)  Eric "E.T." Tremblay
  16.  -----------
  17.   - Playing Score Files
  18.  Foo.Bar!  Unix Humor:
  19.  --------
  20.   - Types of Unix Administrators  (ANDY)  Andy Finkenstadt
  21.  DataComm: Digital Communications  (LRARK)  Ricky Mobley
  22.  --------
  23.   - The quest for greater throughput
  24.  Lock and Key Unix Security (SARAH)  Sarah Collier
  25.  ------------
  26.   - Firewalls
  27.  Down and Dirty: Quick Scripts that do something useful  (GARS)  Gary Smith
  28.  --------------
  29.   - Password protection in Perl and PGP signature  (GARS)  Gary Smith
  30.  usr/local: Items (scripts and news) snarfed from various sources
  31.  ---------
  32.   - Shells and Directories with Spaces in their Names  (GARS)  Gary Smith
  33.  TUTORIALS
  34.  ---------
  35.   - Reclaiming Lost Data Part 2  (MIKE.NOLAN)  Mike Nolan
  36.     - Lessons Painfully Learned
  37.   - Rookie Review  (JANS)  Janet McNeely
  38.     - Unix for the Impatient
  39.   - What makes a Realtime Operating System "Realtime" (MIKE.MC)   Mike McCabe
  40.  
  41.  eot ------
  42.                 The RoundTable Staff is:
  43.       ANDY          Andy Finkenstadt  Chief SysOp
  44.       MIKE.NOLAN    Michael Nolan     Assistant SysOp
  45.       SARAH         Sarah Collier     Administrative Assistant
  46.       GARS          Gary Smith        Library Manager
  47.       MIKE.MC       Mike McCabe       Linux & 386BSD Support SysOp
  48.       JANS          Janet McNeely     Bulletin Board Manager
  49.       LRARK         Ricky Mobley      Network Comm Liaison
  50.       ERICTREMBLAY  Eric Tremblay     NeXT Support SysOp
  51.       DELPHI        Brian T. Riley    RTC Conference Manager
  52.       UNIX$         The Whole Crew
  53.  
  54.  
  55.  We strongly encourage you to contact any or all of us if you have -ANY-
  56.  comments or suggestions. This is -YOUR- RoundTable. We are here to make
  57.  your participation as pleasant and beneficial as possible.
  58.  
  59.  LIVE Help Desks (type  MOVE 400;4 and choose channel #4):
  60.  
  61.  LIVE in-person Conferences (select #2 on the menu):
  62.  
  63.  ED: editor notes - (GARS) Gary Smith
  64.  ==
  65.  
  66.    This is summer. The dog star, Sirius, is rising, a haze has taken a
  67.  permanent perch on the horizon, removed only briefly by the heat storms
  68.  and thunder-boomers (except in the flooded Mississippi valley - we are
  69.  genuinely sorry about your plight).
  70.  
  71.    We of the Unix RoundTable _know_ there are other activities vying for
  72.  your time. We understand. We also boat, swim, play softball and picnic.
  73.  
  74.    However, when you come home after a hard day on the beach we do ask that
  75.  you flip on your computer, let the hum of the fans ease you into a more
  76.  tranquil state and then....   log in and check us out. We have been busy
  77.  collecting files for you, supplying answers to perplexing problems so you
  78.  could resolve them _and_ continue to play.
  79.  
  80.    Most important of all, remember, we are your Unix friends and Linux
  81.  buddies; and we are still here waiting to serve your computing needs.
  82.  
  83.   Gary  gars@genie.geis.com
  84.         gars%glsdk@wolves.durham.nc.us
  85.  
  86.  eot ------
  87.  
  88.  NeXT Column  (ERICTREMBLAY)  Eric "E.T." Tremblay
  89.  ===========
  90.                         Playing Score Files
  91.                         -------------------
  92.                       By Eric "E.T." Tremblay
  93.  
  94.  NeXT had a great demo application in release 2.0 called ScorePlayer.
  95.  This little application was made to play musical files with the
  96.  score extension. Unfortuantly people did not support this format very
  97.  much. There was more "sound files" ending with the score extension
  98.  then there was "music files" ending with the same extension. Also it
  99.  is not an easy format to understand and I guess that the learning
  100.  curve to implement a song using this format was a little too much for
  101.  a lot of people, so there was not a lot of songs available. So in release
  102.  3.0 NeXT decided to no longer include the ScorePlayer application. Ever
  103.  since people have wondered how they can get to hear the wonderful sounds
  104.  that are made using this application.
  105.  
  106.  The problem of no longer having the ScorePlayer application is easily
  107.  solved. In fact you already have the solution in your hard disk. Just
  108.  boot yourself a terminal window and locate a file with the score
  109.  extension. (The Nova cdrom has a lot of them...) Then type in this
  110.  command "playscore yourfile.score" and pump up the volume a little
  111.  in order to apprecate the wonderful sounds that can be heard while
  112.  listening to a score file. There's also an equvalent command to play
  113.  sound files try this "playsound yourfile.snd".
  114.  
  115.  Another way to listen to score files is to download the sands.tar.Z
  116.  application, that file is number XXX in the Unix RT file library and
  117.  it will permit you to enjoy all the score files that are availble.
  118.  Please also take note that all the publicly available score files are
  119.  available from the Unix RT. Just make a search using the score
  120.  keyword.
  121.  
  122.  So as you can see NeXT no longer bundles the ScorePlayer application
  123.  but there are still other ways of listening to score musical files.
  124.  Best of all the ScorePlayer application is still included in the
  125.  system but only in it's unix command line form.
  126.  
  127.  Hope you enjoy the wonderful sounds that a NeXT computer can produce
  128.  and for the people who never heard a score file before your missing
  129.  some cool sounds. What are you waiting for?
  130.  
  131.  Here's a list of score stuff available from the library
  132.  
  133.    No. File Name                  Bytes
  134.  ----- ------------------------- ------
  135.  
  136.   2714 ALLEGRO.Z                  21888
  137.        Desc: ALLEGRO.score.Z Score file NeXT
  138.   2715 ASCORE.Z                   14592
  139.        Desc: AutoScore plays NeXT score files
  140.   2953 CHILD.SCORE.Z               2560
  141.        Desc: Child NeXT score file
  142.   2954 CHOPIN.SCORE.Z              3712
  143.        Desc: Chopin's Prelude in C minor Score
  144.   2949 COVENTRY.SCORE.Z            2432
  145.        Desc: Conventry Carol NeXT score file.
  146.   2713 FUGUEC.Z                   20608
  147.        Desc: FUGUEC.score.Z Score file NeXT
  148.   2955 JOYS SEVEN.SCORE.Z          2944
  149.        Desc: Joys Seven NeXT score file
  150.   2950 KINGS.SCORE.Z               5248
  151.        Desc: March of the Kings NeXT score file
  152.   2952 NOUVELET.SCORE.Z            2176
  153.        Desc: Noel Nouvelet NeXT score file
  154.   2712 PACHEL.Z                   37120
  155.        Desc: PACHEL.score.Z Score file NeXT
  156.   2711 PARTITA.Z                  20480
  157.        Desc: PARTITA.score.Z Score file NeXT
  158.   2956 PATAPAN.SCORE.Z             4352
  159.        Desc: Pat-a-pan NeXT score file
  160.   2951 ROCKING.SCORE.Z             2304
  161.        Desc: Rocking Carol NeXT score file
  162.   7433 SANDS.TAR.Z               465792
  163.        Desc: An app that plays Score music files
  164.  
  165.  eot ------
  166.  
  167.  Foo.Bar!  Unix Humor:  (ANDY)  Andy Finkenstadt
  168.  ========
  169.  
  170.  Item forwarded  by  ANDY         to GARS
  171.  
  172.  Sub: Types of Unix Administrators
  173.  
  174.  KNOW YOUR UNIX SYSTEM ADMINISTRATOR-- A FIELD GUIDE
  175.  
  176.  There are four major species of Unix sysad:
  177.  
  178.  1) The TECHNICAL THUG.  Usually a systems programmer who has been
  179.  forced into system administration; writes scripts in a polyglot of the
  180.  Bourne shell, sed, C, awk, perl, and APL.
  181.  
  182.  2) The ADMINISTRATIVE FASCIST.  Usually a retentive drone (or rarely,
  183.  a harridan ex-secretary) who has been forced into system
  184.  administration.
  185.  
  186.  3) The MANIAC.  Usually an aging cracker who discovered that neither
  187.  the Mossad nor Cuba are willing to pay a living wage for computer
  188.  espionage.  Fell into system administration; occasionally approaches
  189.  major competitors with indesp schemes.
  190.  
  191.  4) The IDIOT.  Usually a cretin, morpohodite, or old COBOL programmer
  192.  selected to be the system administrator by a committee of cretins,
  193.  morphodites, and old COBOL programmers.
  194.  
  195.  
  196.  
  197.  HOW TO IDENTIFY YOUR SYSTEM ADMINISTRATOR:
  198.  
  199.  
  200.  ---------------- SITUATION: Low disk space. ----------------
  201.  
  202.          TECHNICAL THUG: Writes a suite of scripts to monitor disk
  203.  usage, maintain a database of historic disk usage, predict future disk
  204.  usage via least squares regression analysis, identify users who are
  205.  more than a standard deviation over the mean, and send mail to the
  206.  offending parties.  Places script in cron.  Disk usage does not
  207.  change, since disk-hogs, by nature, either ignore script-generated
  208.  mail, or file it away in triplicate.
  209.  
  210.          ADMINISTRATIVE FASCIST: Puts disk usage policy in motd.  Uses
  211.  disk quotas.  Allows no exceptions, thus crippling development work.
  212.  Locks accounts that go over quota.
  213.  
  214.          MANIAC:
  215.  # cd /home
  216.  # rm -rf `du -s * | sort -rn | head -1 | awk '{print $2}'`;
  217.  
  218.          IDIOT:
  219.  # cd /home
  220.  # cat `du -s * | sort -rn | head -1 | awk '{ printf "%s/*\n", $2}'` | compress
  221.  
  222.  
  223.  ---------------- SITUATION: Excessive CPU usage. ----------------
  224.  
  225.          TECHNICAL THUG: Writes a suite of scripts to monitor
  226.  processes, maintain a database of CPU usage, identify processes more
  227.  than a standard deviation over the norm, and renice offending
  228.  processes.  Places script in cron.  Ends up renicing the production
  229.  database into oblivion, bringing operations to a grinding halt, much
  230.  to the delight of the xtrek freaks.
  231.  
  232.          ADMINISTRATIVE FASCIST: Puts CPU usage policy in motd.  Uses
  233.  CPU quotas.  Locks accounts that go over quota.  Allows no exceptions,
  234.  thus crippling development work, much to the delight of the xtrek
  235.  freaks.
  236.  
  237.          MANIAC:
  238.  # kill -9 `ps -augxww | sort -rn +8 -9  | head -1 | awk '{print $2}'`
  239.  
  240.          IDIOT:
  241.  # compress -f `ps -augxww | sort -rn +8 -9  | head -1 | awk '{print $2}'`
  242.  
  243.  
  244.  ---------------- SITUATION: New account creation. ----------------
  245.  
  246.          TECHNICAL THUG: Writes perl script that creates home
  247.  directory, copies in incomprehensible default environment, and places
  248.  entries in /etc/passwd, /etc/shadow, and /etc/group.  (By hand, NOT
  249.  with passmgmt.) Slaps on setuid bit; tells a nearby secretary to
  250.  handle new accounts.  Usually, said secretary is still dithering over
  251.  the difference between 'enter' and 'return'; and so, no new accounts
  252.  are ever created.
  253.  
  254.          ADMINISTRATIVE FASCIST: Puts new account policy in motd.
  255.  Since people without accounts cannot read the motd, nobody ever
  256.  fulfills the bureaucratic requirements; and so, no new accounts are
  257.  ever created.
  258.  
  259.          MANIAC: "If you're too stupid to break in and create your own
  260.  account, I don't want you on the system.  We've got too many goddamn
  261.  sh*t-for-brains a**holes on this box anyway."
  262.  
  263.          IDIOT:
  264.  # cd /home; mkdir "Bob's home directory"
  265.  # echo "Bob Simon:gandalf:0:0::/dev/tty:compress -f" > /etc/passwd
  266.  
  267.  
  268.  ---------------- SITUATION: Root disk fails. ----------------
  269.  
  270.          TECHNICAL THUG: Repairs drive.  Usually is able to repair
  271.  filesystem from boot monitor.  Failing that, front-panel toggles
  272.  microkernel in and starts script on neighboring machine to load binary
  273.  boot code into broken machine, reformat and reinstall OS.  Lets it run
  274.  over the weekend while he goes mountain climbing.
  275.  
  276.          ADMINISTRATIVE FASCIST: Begins investigation to determine who
  277.  broke the drive.  Refuses to fix system until culprit is identified
  278.  and charged for the equipment.
  279.  
  280.          MANIAC, LARGE SYSTEM: Rips drive from system, uses
  281.  sledgehammer to smash same to flinders.  Calls manufacturer, threatens
  282.  pets.  Abuses field engineer while they put in a new drive and
  283.  reinstall the OS.
  284.          MANIAC, SMALL SYSTEM: Rips drive from system, uses ball-peen
  285.  hammer to smash same to flinders.  Calls Requisitions, threatens pets.
  286.  Abuses bystanders while putting in new drive and reinstalling OS.
  287.  
  288.          IDIOT: Doesn't notice anything wrong.
  289.  
  290.  
  291.  ---------------- SITUATION: Poor network response. ----------------
  292.  
  293.          TECHNICAL THUG: Writes scripts to monitor network, then
  294.  rewires entire machine room, improving response time by 2%.  Shrugs
  295.  shoulders, says, "I've done all I can do," and goes mountain climbing.
  296.  
  297.          ADMINISTRATIVE FASCIST: Puts network usage policy in motd.
  298.  Calls up Berkeley and AT&T, badgers whoever answers for network
  299.  quotas.  Tries to get xtrek freaks fired.
  300.  
  301.          MANIAC: Every two hours, pulls ethernet cable from wall and
  302.  waits for connections to time out.
  303.  
  304.          IDIOT:
  305.  # compress -f /dev/en0
  306.  
  307.  
  308.  ---------------- SITUATION: User questions. ----------------
  309.  
  310.          TECHNICAL THUG: Hacks the code of emacs' doctor-mode to answer
  311.  new users questions.  Doesn't bother to tell people how to start the
  312.  new "guru-mode", or for that matter, emacs.
  313.  
  314.          ADMINISTRATIVE FASCIST: Puts user support policy in motd.
  315.  Maintains queue of questions.  Answers them when he gets a chance,
  316.  often within two weeks of receipt of the proper form.
  317.  
  318.          MANIAC: Screams at users until they go away.  Sometimes
  319.  barters knowledge for powerful drink and/or sycophantic adulation.
  320.  
  321.          IDIOT: Answers all questions to best of his knowledge until
  322.  the user realizes few UNIX systems support punched cards or JCL.
  323.  
  324.  
  325.  ---------------- SITUATION: *Stupid* user questions. ----------------
  326.  
  327.          TECHNICAL THUG: Answers question in hex, binary, postfix,
  328.  and/or French until user gives up and goes away.
  329.  
  330.          ADMINISTRATIVE FASCIST: Locks user's account until user can
  331.  present documentation demonstrating their qualification to use the
  332.  machine.
  333.  
  334.          MANIAC:
  335.  # cat >> ~luser/.cshrc
  336.  alias vi 'rm \!*;unalias vi;grep -v BoZo ~/.cshrc > ~/.z; mv -f ~/.z ~/.cshrc'
  337.  ^D
  338.  
  339.          IDIOT: Answers all questions to best of his knowledge.
  340.  Recruits user to system administration team.
  341.  
  342.  
  343.  ---------------- SITUATION: Process accounting management. ----------------
  344.  
  345.          TECHNICAL THUG: Ignores packaged accounting software; trusts
  346.  scripts to sniff out any problems & compute charges.
  347.  
  348.          ADMINISTRATIVE FASCIST: Devotes 75% of disk space to
  349.  accounting records owned by root and chmod'ed 000.
  350.  
  351.          MANIAC:  Laughs fool head off at very mention of accounting.
  352.  
  353.          IDIOT:
  354.  # lpr /etc/wtmp /usr/adm/paact
  355.  
  356.  
  357.  -------------- SITUATION: Religious war, BSD vs. System V. --------------
  358.  
  359.          TECHNICAL THUG:  BSD.  Crippled on System V boxes.
  360.  
  361.          ADMINISTRATIVE FASCIST: System V.  Horrified by the people who
  362.  use BSD.  Places frequent calls to DEA.
  363.  
  364.          MANIAC: Prefers BSD, but doesn't care as long as HIS processes
  365.  run quickly.
  366.  
  367.          IDIOT:
  368.  # cd c:
  369.  
  370.  
  371.  -------------- SITUATION: Religious war, System V vs. AIX --------------
  372.  
  373.          TECHNICAL THUG:  Weeps.
  374.  
  375.          ADMINISTRATIVE FASCIST: AIX-- doesn't much care for the OS,
  376.  but loves the jackboots.
  377.  
  378.          MANIAC: System V, but keeps AIX skills up, knowing full well
  379.  how much Big Financial Institutions love IBM...
  380.  
  381.          IDIOT:  AIX.
  382.  
  383.  
  384.  ---------------- SITUATION: Balky printer daemons. ----------------
  385.  
  386.          TECHNICAL THUG: Rewrites lpd in FORTH.
  387.  
  388.          ADMINISTRATIVE FASCIST: Puts printer use policy in motd.
  389.  Calls customer support every time the printer freezes.  Tries to get
  390.  user who submitted the most recent job fired.
  391.  
  392.          MANIAC: Writes script that kills all the daemons, clears all
  393.  the print queues, and maybe restarts the daemons.  Runs it once a hour
  394.  from cron.
  395.  
  396.          IDIOT:
  397.  # kill -9 /dev/lp ; /dev/lp &
  398.  
  399.  
  400.  ---------------- SITUATION: OS upgrade. ----------------
  401.  
  402.          TECHNICAL THUG: Reads source code of new release, takes only
  403.  what he likes.
  404.  
  405.          ADMINISTRATIVE FASCIST: Instigates lawsuit against the vendor
  406.  for having shipped a product with bugs in it in the first place.
  407.  
  408.          MANIAC:
  409.  # uptime
  410.  1:33pm  up 19 days, 22:49,  167 users,  load average: 6.49, 6.45, 6.31
  411.  # wall
  412.  Well, it's upgrade time.  Should take a few hours.  And good luck on that
  413.  5:00 deadline, guys!  We're all pulling for you!
  414.  ^D
  415.  
  416.          IDIOT:
  417.  # dd if=/dev/rmt8 of=/vmunix
  418.  
  419.  
  420.  ---------------- SITUATION: Balky mail. ----------------
  421.  
  422.          TECHNICAL THUG: Rewrites sendmail.cf from scratch.  Rewrites
  423.  sendmail in SNOBOL.  Hacks kernel to implement file locking.  Hacks
  424.  kernel to implement "better" semaphores.  Rewrites sendmail in
  425.  assembly.  Hacks kernel to . . .
  426.  
  427.          ADMINISTRATIVE FASCIST: Puts mail use policy in motd.  Locks
  428.  accounts that go over mail use quota.  Keeps quota low enough that
  429.  people go back to interoffice mail, thus solving problem.
  430.  
  431.          MANIAC:
  432.  # kill -9 `ps -augxww | grep sendmail | awk '{print $2}'`
  433.  # rm -f /usr/spool/mail/*
  434.  # wall
  435.  Mail is down.  Please use interoffice mail until we have it back up.
  436.  ^D
  437.  # write max
  438.  I've got my boots and backpack.  Ready to leave for Mount Tam?
  439.  ^D
  440.  
  441.          IDIOT:
  442.  # echo "HELP!" | mail tech_support.AT.vendor.com%kremvax%bitnet!BIFF!!!
  443.  
  444.  
  445.  -------------- SITUATION: Users want phone list application. --------------
  446.  
  447.          TECHNICAL THUG: Writes RDBMS in perl and Smalltalk.  Users
  448.  give up and go back to post-it notes.
  449.  
  450.          ADMINISTRATIVE FASCIST: Oracle.  Users give up and go back to
  451.  post-it notes.
  452.  
  453.          MANIAC: Tells the users to use flat files and grep, the way
  454.  God meant man to keep track of phone numbers.  Users give up and go
  455.  back to post-it notes.
  456.  
  457.          IDIOT:
  458.  % dd ibs=80 if=/dev/rdisk001s7 | grep "Fred"
  459.  
  460.  
  461.  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  462.  
  463.  OTHER GUIDELINES:
  464.  
  465.  
  466.  ---------------- TYPICAL ROOT .cshrc FILE: ----------------
  467.  
  468.          TECHNICAL THUG: Longer than eight kilobytes.  Sources the
  469.  output of a perl script, rewrites itself.
  470.  
  471.          ADMINISTRATIVE FASCIST:  Typical lines include:
  472.  umask 777
  473.  alias cd 'cd \!*; rm -rf ching *hack mille omega rogue xtrek >& /dev/null &'
  474.  
  475.          MANIAC:  Typical lines include:
  476.  alias rm 'rm -rf \!*'
  477.  alias hose kill -9 '`ps -augxww | grep \!* | awk \'{print $2}\'`'
  478.  alias kill 'kill -9 \!* ; kill -9 \!* ; kill -9 \!*'
  479.  alias renice 'echo Renice\?  You must mean kill -9.; kill -9 \!*'
  480.  
  481.          IDIOT:  Typical lines include:
  482.  alias dir ls
  483.  alias era rm
  484.  alias kitty cat
  485.  alias process_table ps
  486.  setenv DISPLAY vt100
  487.  
  488.  
  489.  ---------------- HOBBIES, TECHNICAL: ----------------
  490.  
  491.          TECHNICAL THUG: Writes entries for Obsfuscated C contest.
  492.  Optimizes INTERCAL scripts.  Maintains ENIAC emulator.  Virtual
  493.  reality .
  494.  
  495.          ADMINISTRATIVE FASCIST: Bugs office. Audits card-key logs.
  496.  Modifies old TVs to listen in on cellular phone conversations.
  497.  Listens to police band.
  498.  
  499.          MANIAC: Volunteers at Survival Research Labs. Bugs office.
  500.  Edits card-key logs.  Modifies old TVs to listen in on cellular phone
  501.  conversations.  Jams police band.
  502.  
  503.          IDIOT: Ties shoes.  Maintains COBOL decimal to roman numeral
  504.  converter.  Rereads flowcharts from his salad days at Rand.
  505.  
  506.  
  507.  ---------------- HOBBIES, NONTECHNICAL: ----------------
  508.  
  509.          TECHNICAL THUG: Drinks "Smart Drinks."  Attends raves. Hangs
  510.  out at poetry readings and Whole Earth Review events and tries to pick
  511.  up Birkenstock MOTAS.
  512.  
  513.          ADMINISTRATIVE FASCIST: Reads _Readers Digest_ and _Mein
  514.  Kampf_.  Sometimes turns up car radio and sings along to John Denver.
  515.  Golfs.  Drinks gin martinis.  Hangs out in yuppie bars and tries to
  516.  pick up dominatrixes.
  517.  
  518.          MANIAC: Reads _Utne Reader_ and _Mein Kampf_.  Faithfully
  519.  attends Dickies and Ramones concerts.  Punches out people who say
  520.  "virtual reality."  Drinks damn near anything, but favors Wild Turkey,
  521.  Black Bush, and grain alcohol.  Hangs out in neighborhood bars and
  522.  tries to pick up MOTAS by drinking longshoremen under the table .
  523.  
  524.          IDIOT: Reads _Time_ and _Newsweek_-- and *believes* them.
  525.  Drinks Jagermeister.  Tries to pick up close blood relations-- often
  526.  succeeds, producting next generation of idiots.
  527.  
  528.  
  529.  ---------------- 1992 PRESIDENTIAL ELECTION: ----------------
  530.  
  531.          TECHNICAL THUG: Clinton, but only because he liked Gore's
  532.  book.
  533.  
  534.          ADMINISTRATIVE FASCIST: Bush. Possibly Clinton, but only
  535.  because he liked Tipper.
  536.  
  537.          MANIAC: Frank Zappa.
  538.  
  539.          IDIOT: Perot.
  540.  
  541.  
  542.  ---------------- 1996 PRESIDENTIAL ELECTION: ----------------
  543.  
  544.          TECHNICAL THUG: Richard Stallman - Larry Wall.
  545.  
  546.          ADMINISTRATIVE FASCIST: Nixon - Buchanan.
  547.  
  548.          MANIAC: Frank Zappa.
  549.  
  550.          IDIOT: Quayle.
  551.  
  552.  
  553.  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  554.  
  555.  COMPOUND SYSTEM ADMINISTRATORS:
  556.  
  557.  
  558.          TECHNICAL FASCIST: Hacks kernel & writes a horde of scripts to
  559.  prevent folk from ever using more than their fair share of system
  560.  resources.  Resulting overhead and load brings system to its knees.
  561.  
  562.          TECHNICAL MANIAC: Writes scripts that SEEM to be monitoring
  563.  the system, but are actually encrypting large lists of passwords.
  564.  Uses nearby nodes as beta test sites for worms.
  565.  
  566.          TECHNICAL IDIOT: Writes superuser-run scripts that sooner or
  567.  later do an "rm -rf /".
  568.  
  569.          FASCISTIC MANIAC: At first hint of cracker incursions, whether
  570.  real or imagined, shuts down system by triggering water-on-the-brain
  571.  detectors and Halon system.
  572.  
  573.          FASCISTIC IDIOT:
  574.  # cp /dev/null /etc/passwd
  575.  
  576.          MANIACAL IDIOT:  Napalms the CPU.
  577.                                                          -Stephan Zielinski
  578.  
  579.  --
  580.  Selected by Maddi Hausmann.MAIL your jokes(jokes ONLY)to funny@clarinet.com
  581.  Attribute the joke's source if at all possible.  A Daemon will auto-reply.
  582.  
  583.  --
  584.  Selected by Maddi Hausmann.  MAIL your joke (jokes ONLY) to funny@clarinet.com
  585.  Attribute the joke's source if at all possible.  A Daemon will auto-reply.
  586.  
  587.  Jokes ABOUT major current events should be sent to topical@clarinet.com
  588.  (ie. jokes which won't be funny if not given immediate attention.)
  589.  Anything that is not a joke submission goes to funny-request@clarinet.com
  590.  
  591.  eot ------
  592.  
  593.  DataComm: Digital Communications  (LRARK)  Ricky Mobley
  594.  =========
  595.   - The quest for greater throughput
  596.  
  597.  Well here we are again in the dog-days of summer. Outside activities will
  598.  increase to the point that your computer keys could become dusty from lack
  599.  of use. I find it to be an excellent time to come inside out of the heat
  600.  (especially at night) and do some house cleaning on the good ole system.
  601.  Why, just this week I am planning to replace my tape drive with one of a
  602.  higher capacity. That reduces the number of excuses I have for not properly
  603.  backing up my file systems. Then to increase the flow of netnews through
  604.  my site, I'll be adding an external hard disk to the system since the
  605.  internal bay is full.
  606.  
  607.  Modem wise I will wait for newer-better-faster, etc.  I am happy with 14.4k
  608.  bps until these others become more widely available. Ahh, I can see it now ..
  609.  Replace my existing voice line (that I connect the modem to) with a ISDN
  610.  connection.  That will give me a 56k bps data link and a standard voice
  611.  line that I can reconnect the 14.4k bps back into.  How is that for data
  612.  flow?  That will do until I can get access to ATM or Frame Relay devices.
  613.  
  614.  I had a chance recently to address data communications futures at a nearby
  615.  university.  Four of us spoke to 35 or 40 young bright people and I could
  616.  see the wheels turning in their minds as we baited them with ideas.  I
  617.  expect one or more of those students to introduce us to the future of data
  618.  communications within the next 10 years.  We spoke about old technology and
  619.  limitations, and the switched voice circuits that we still use today to pass
  620.  low speed data on.  We then looked at packet switched circuits,  which
  621.  encompass SONET, ATM and Frame Relay type transmissions.  It was our feeling
  622.  that packet type networks would yield substantial throughput of data to
  623.  carry us into the future.  We are constantly pushing limits and bandwidths
  624.  with new ideas of data access.  We are also packing more data into the same
  625.  space allowing us additional throughput.
  626.  
  627.  Today you think of data access as character based with a smattering of
  628.  graphic symbols, color, or a simple ANSI sequence to animate the display.
  629.  What we are planning towards will be a network to carry full motion video.
  630.  This network would support several high speed data links with a few low
  631.  speed channels for interactive systems.  When this happens many of our
  632.  present day libraries could very well become large computer storage
  633.  facilities with local display terminals and remote access units to allow
  634.  quick retrieval of that data.  Colleges and universities have hosted several
  635.  internet connections for many years to get this process under way.  This has
  636.  become a forerunner of what is to come.
  637.  
  638.  If you stop to look at where and when we started on this data quest, you
  639.  will see that we have made great strides in improving our abilities to share
  640.  and access vital information.  All of this has happened in 10 short years.
  641.  This indicates that the growth is far from linear; but one that is
  642.  logarithmic.
  643.  
  644.  Where will you be in 10 years?  Where will you be in 5 years?  Will your
  645.  system be capable of handling 56k bps type connections (and all the overhead
  646.  of interrupts that this brings)?  I doubt that most of you will require that
  647.  kind of access, but for some of us we say, it's never too late!
  648.  
  649.  Rick Mobley, LRARK
  650.  
  651.  eot ------
  652.  
  653.  Lock and Key  Unix Security:  (SARAH)  Sarah M. Collier
  654.  ============
  655.  
  656.   - Firewalls (extracted from Security Digests)
  657.     ---------
  658.  
  659.  From:    news@wolves.Durham.NC.US (The Wolfe of the Den)
  660.  Subject: Firewall availability?
  661.  Date:    2 May 93 04:19:41 GMT
  662.  
  663.  I asked sometime early in 1992 about making firewall systems, and got a
  664.  discouraging reply that it was still pretty much a "roll-your-own" sort
  665.  of a deal.
  666.  
  667.  Get yourself a router box and tweak the code or tables to limit the
  668.  services offered through the router.
  669.  
  670.  Has there been any progress in the availability of firewall technology
  671.  in the recent past?
  672.  
  673.  That is, has the price of a firewall capable router or bridge box come
  674.  down any?  (What sort of prices are they currently?)
  675.  
  676.  What sort of suggestions would you make to a person who is dealing with
  677.  a professionally paranoid, non-technical, boss?
  678.  
  679.  Situation: I have a TCP/IP/RPC internet that supports a series of unix
  680.  workstations (binaries only) and office macintoshes.  The net is a
  681.  proper IP subnet, registered, but currently disconnected and served by
  682.  MX records for email.
  683.  
  684.  I'm considering connecting 1 machine to the rest of the net with a
  685.  stripped down IP connectivity that doesn't do any routing so that I can
  686.  get some of the necessary IP connections I *need* for the future.
  687.  (Specifically, a Mac that isn't capable of IP routing.)
  688.  
  689.  It would be more useable to the situation if I could provide a real
  690.  firewall situation where I could assure the boss that only allowed
  691.  services could come in, yet we could initiate FTP or email (or gopher or
  692.  telnet or etc...).
  693.  
  694.  Any information would be appreciated.
  695.  
  696.  I will create a summary of what I get and report it back here, so email
  697.  would be the preferable response method.
  698.  
  699.  Thanks!
  700.  
  701.  Greg Woodbury
  702.  --
  703.  Usenet Net News Administrator @ The Wolves Den  (G. Wolfe Woodbury)
  704.  news@wolves.durham.nc.us  news%wolves@cs.duke.edu  ...duke!wolves!news
  705.  "The flame war is a specific Usenet art form." --me
  706.  [This site is not affiliated with Duke University. (Idiots!) ]
  707.  ------------------------------
  708.  From:    mjr@tis.com (Marcus J Ranum)
  709.  Subject: Re: Firewall availability?
  710.  Date:    3 May 1993 01:34:33 GMT
  711.  
  712.  >Has there been any progress in the availability of firewall technology
  713.  >in the recent past?
  714.  
  715.          Several folks sell commercial firewalls: ANS, Raptor, DEC,
  716.  and others. Many of them are technologically quite interesting, though
  717.  as you'd expect they're similar in a lot of ways.
  718.  
  719.  >That is, has the price of a firewall capable router or bridge box come
  720.  >down any?  (What sort of prices are they currently?)
  721.  
  722.          Depends on what you call a "firewall." A Cisco router with
  723.  a bunch of packet-screening rules in it will give you adequate
  724.  security unless you expect to come under a high level of attack
  725.  from experts. You should be able to get a Cisco for a couple
  726.  of thousand, between 5 and 10. There's also the Karlbridge which
  727.  is EISA-PC based. Grab the firewalls archive and take a look in
  728.  there for the announcement. I can't recall how much it cost. The
  729.  original version was free, or quite cheap.
  730.  
  731.          At the higher end of the spectrum are multiple-machine and
  732.  router firewalls, like the DEC SEAL or Raptor's Eagle. ANS sells/rents
  733.  their firewall - which is appealing if you want something on a yearly
  734.  rate schedule. All of these higher-end firewalls are much more expensive
  735.  than just a router, but provide significantly better security and
  736.  more functionality in some ways.
  737.  
  738.  >What sort of suggestions would you make to a person who is dealing with
  739.  >a professionally paranoid, non-technical, boss?
  740.  
  741.          I'd point them (depending on the financial restrictions) at
  742.  one of the commercial offerings, since it has a "support structure"
  743.  and "corporate backing" and all those things that make bosses happy.
  744.  Depending on your in-house expertise, I find it's sometimes *cheaper*
  745.  to buy a firewall, since developing one that's worth anything can
  746.  take a few months and that can equate to as much as a commercial
  747.  firewall costs, depending on how much your staff is paid. DEC's SEAL
  748.  is interesting, in that it's less a package than it is a configration
  749.  and training experience - it comes with complete source code for all
  750.  the utilities, and they walk you through setting it up at your site.
  751.  I don't know what level of support DEC has for SEAL these days -
  752.  it was a consulting offering, and most of the consultants who used
  753.  to deliver it have since left the company.
  754.  
  755.  >I'm considering connecting 1 machine to the rest of the net with a
  756.  >stripped down IP connectivity that doesn't do any routing so that I can
  757.  >get some of the necessary IP connections I *need* for the future.
  758.  >(Specifically, a Mac that isn't capable of IP routing.)
  759.  
  760.          This is a basic dual-homed gateway. You can get pretty good
  761.  security with something like this. In order to have a high level of
  762.  connectivity between the inside and the outside, however, you would
  763.  need to run some kind of proxy servers for telnet/FTP/etc on the
  764.  gateway, or you'd have to let users log into the gateway itself
  765.  which is a bad idea, in my experience.
  766.  
  767.          I suggest you check out the firewalls mailing list archives.
  768.  I think they're FTPable from ftp.greatcircle.com, and there are
  769.  references to tools like "socks" which help develop proxy servers,
  770.  and some other interesting stuff.
  771.  
  772.          Good luck!
  773.  mjr.
  774.  ------------------------------
  775.  
  776.  From:    d1h1883@sc.tamu.edu
  777.  Subject: Re: Firewall availability?
  778.  Date:    4 May 93 14:23:43 GMT
  779.  
  780.  In article <1s1sr9$3ic@sol.TIS.COM> mjr@tis.com (Marcus J Ranum) writes:
  781.  > >Has there been any progress in the availability of firewall technology
  782.  > >in the recent past?
  783.  >
  784.  >       Several folks sell commercial firewalls: ANS, Raptor, DEC,
  785.  > and others. Many of them are technologically quite interesting, though
  786.  > as you'd expect they're similar in a lot of ways.
  787.  >
  788.  > >That is, has the price of a firewall capable router or bridge box come
  789.  > >down any?  (What sort of prices are they currently?)
  790.  >
  791.  >       Depends on what you call a "firewall." A Cisco router with
  792.  > a bunch of packet-screening rules in it will give you adequate
  793.  > security unless you expect to come under a high level of attack
  794.  > from experts. You should be able to get a Cisco for a couple
  795.  > of thousand, between 5 and 10. There's also the Karlbridge which
  796.  > is EISA-PC based. Grab the firewalls archive and take a look in
  797.  > there for the announcement. I can't recall how much it cost. The
  798.  > original version was free, or quite cheap.
  799.  >
  800.  [...]
  801.  > mjr.
  802.  
  803.  Well to add to this list, there is also Drawbridge which is available from
  804.  sc.tamu.edu in pub/security/TAMU. This is a free IP bridging filter
  805.  available under the GNU General Public License and includes all source
  806.  code.
  807.  
  808.  This package is built around an easily assembled PC which runs the bridging
  809.  filter. It uses tables (generated from a compiler) rather than the
  810.  algorithmic method found in most filtering implementations which makes
  811.  it very efficient and highly configurable. It was developed here at Texas
  812.  A&M to protect the entire campus which consists of 5000+ IP nodes. It of
  813.  course provides you only as much security as a filtering router; it just
  814.  makes it more efficient and easier to do.
  815.  
  816.  You have to decide what level of protection you need before choosing a
  817.  firewall. In our academic environment we have to walk a fine line between a
  818.  demand for easy access to the Internet and the need for security.
  819.  Drawbridge meets these requirements pretty well.
  820.  
  821.  Dave
  822.  --
  823.  David K. Hess                                Graduate Assistant
  824.  David-Hess@tamu.edu                        Supercomputer Center
  825.  (409) 845-6907 (work)                      Texas A&M University
  826.  
  827.  eot ------
  828.  
  829.  Down and Dirty: Quick Scripts that do something useful  (GARS) Gary Smith
  830.  ==============
  831.  
  832.  Subject: Re: Password protection when changing VC's ??
  833.  Archive-Name: hog.pl
  834.  Submitted-By: Ian Jackson <ijackson@nyx.cs.du.edu>
  835.  
  836.  -----BEGIN PGP SIGNED MESSAGE-----
  837.  
  838.  In article <1t0bap$1uo@usenet.INS.CWRU.Edu>
  839.  sdh@po.CWRU.Edu (Scott D. Heavner) writes about a program on his Suns
  840.  at work which locks a terminal until you type in a password.
  841.  
  842.  The version he mentioned used a .-file to store the password.
  843.  
  844.  Here is a Perl script which uses your system password. It won't work
  845.  if you have shadow passwords, and as it's a script it shouldn't be
  846.  installed suid root or sgid shadow.
  847.  
  848.  I have a C version somewhere which should be safe, though you'll
  849.  probably need to change it to use getspent. Let me know if you want
  850.  it; if enough people ask I'll post it.
  851.  
  852.  #!/usr/local/bin/perl --
  853.  # Perl version of hog
  854.  
  855.  $#ARGV<0 || die "nhog: no arguments allowed (was given $#ARGV)";
  856.  
  857.  sub sane_exit {
  858.          exec 'stty', $sanetty;
  859.  }
  860.  
  861.  $sanetty = `stty -g`;
  862.  foreach ( 'INT','QUIT','TSTP' ) { $SIG{$_} = 'IGNORE'; }
  863.  $SIG{'TERM'} = 'sane_exit';
  864.  
  865.  @pwent = getpwuid($<);
  866.  @pwent || die "Shit! You're not in the password file";
  867.  
  868.  $encrpw= $pwent[1];
  869.  if (length($encrpw)<13) {
  870.      print STDERR <<END;
  871.  You do not appear to have a DES encrypted password available to hog.
  872.  Perhaps your system has shadow passwords. Sorry, I can't work here.
  873.  END
  874.      exit 1;
  875.  }
  876.  
  877.  $failed = 0;
  878.  system 'stty -echo -echoe -echok echonl';
  879.  
  880.  while (1) {
  881.          print STDERR "(@pwent[0]) password:";
  882.          $_ = <STDIN>;
  883.          length && chop;
  884.          length || next;
  885.          $crval = crypt($_,substr($encrpw,0,2));
  886.          last if $crval eq $encrpw;
  887.          print STDERR "password incorrect\n";
  888.          $failed++;
  889.          sleep 1;
  890.          next;
  891.  };
  892.  
  893.  print "Welcome back";
  894.  print "; there was 1 failed attempt" if $failed==1;
  895.  print "; there were $failed failed attempts" if $failed>1;
  896.  print ".\n";
  897.  do sane_exit();
  898.  
  899.  -----BEGIN PGP SIGNATURE-----
  900.  Version: 2.2
  901.  
  902.  iQCVAgUBK/VyacMWjroj9a3bAQG9oQP+LGwkdtm/5XCc8X2nURpUozRGnsZSPpib
  903.  dDhx+0CY38mjGjrrAMstx9OKVUriKwFq1RS09bytAc5bHGadOa6ypN4Ufq+tFB0P
  904.  oVU694otUxZftmESlcRP5LPoJe3NFg6SXc9SaB4wCsnYhh9zapTTA+FF9Km081LF
  905.  PG5uXwXAd0w=
  906.  =YgK+
  907.  -----END PGP SIGNATURE-----
  908.  --
  909.  Ian Jackson  <ijackson@nyx.cs.du.edu> (non urgent email only - see below)
  910.  home: 35 Molewood Close, Cambridge, CB4 3SR, England; phone: +44 223 327029
  911.  work & urgent email: <iwj@cam-orl.co.uk> Olivetti Research Ltd; +44 223 343398
  912.  PGP2 public key on request; fingerprint = 5906F687 BD03ACAD 0D8E602E FCF37657
  913.  
  914.  eot ------
  915.  
  916.  usr/local: Items (scripts and news) snarfed from various sources
  917.  =========
  918.   - Shells and Directories with Spaces in their Names
  919.  
  920.  From: raymondc@microsoft.com (Raymond Chen)
  921.  This came up in personal conversation with Paul Haahr and Byron Rakitzis
  922.  (implementors of es and rc, respectively), who suggested that it may be
  923.  worth a slightly wider audience.
  924.  
  925.  The basic question is:  How well does your shell handle directories with
  926.  spaces in their names?
  927.  
  928.  \begin{quote}
  929.  [Whitespace and indentation added to aid readability]
  930.  
  931.  [/bin/rc]
  932.  ; ls -F1
  933.          Alice's Adventures in Wonderland/
  934.          The Hunting of the Snark
  935.          Through the Looking Glass/
  936.  
  937.  ; echo 'Alice''s Adventures in Wonderland'/*
  938.          Alice's Adventures in Wonderland/1      [filenames deleted]
  939.  
  940.  ; echo Alice''''s' 'Adventures' 'in' 'Wonderland/*
  941.          Alice's Adventures in Wonderland/1      [filenames deleted]
  942.  
  943.  ; foo='Alice''s Adventures in Wonderland'
  944.  
  945.  ; echo $foo/*
  946.          Alice's Adventures in Wonderland/1      [filenames deleted]
  947.  
  948.  [/bin/sh and /bin/bash]
  949.  
  950.  $ echo "Alice's Adventures in Wonderland"/*
  951.          Alice's Adventures in Wonderland/*
  952.  
  953.  $ echo Alice\'s\ Adventures\ in\ Wonderland/*
  954.          Alice's Adventures in Wonderland/*
  955.  
  956.  $ foo="Alice's Adventures in Wonderland"
  957.  
  958.  $ echo $foo/*
  959.          Alice's Adventures in Wonderland/*
  960.  
  961.  $ echo "$foo"/*
  962.          Alice's Adventures in Wonderland/*
  963.  
  964.  [/bin/csh]                              # Have your sickness bags handy, folks!
  965.  
  966.  % echo "Alice's Adventures in Wonderland"/*
  967.          Alice's Adventures in Wonderland/: No such file or directory
  968.  
  969.  % echo Alice\'s\ Adventures\ in\ Wonderland/*
  970.          Alice's Adventures in Wonderland/: No such file or directory
  971.  
  972.  % set foo="Alice's Adventures in Wonderland"
  973.  
  974.  % echo $foo/*
  975.          Wonderland/: No such file or directory
  976.  
  977.  % echo "$foo"/*
  978.          Alice's Adventures in Wonderland/: No such file or directory
  979.  
  980.  \end{quote}
  981.  
  982.  At the time of my original experiments, /bin/sh, /bin/bash and /bin/csh
  983.  were the only [Nie]tzsch[e] shells I had access to.  Since then, I have
  984.  learned that es and zsh both pass.  I have not tested tcsh, tksh, zksch,
  985.  or Paul's FORTRAN shell.
  986.  
  987.  See how well *your* favorite shell handles this simple test.  You may
  988.  be surprised.  (Of perl, emacs, and vi, none escapes completely unscathed.)
  989.  --
  990.  Raymond Chen (raymondc@microsoft.com)
  991.  
  992.  Disclaimer: (don't blame me, the lawyers forced me to put this in)
  993.          The views expressed in this message are my own and in no way reflect
  994.          the views of Microsoft Corporation.
  995.  
  996.  
  997.  eot ------
  998.  
  999.  TUTORIALS
  1000.  =========
  1001.  
  1002.  Reclaiming Lost Data  (MIKE.NOLAN)  Mike Nolan
  1003.  --------------------
  1004.  Lessons Painfully Learned
  1005.  Part II - A Backup Strategy
  1006.  by Mike Nolan
  1007.  
  1008.  Last month I presented a method I used to help recover some important files
  1009.  lost when I accidentally deleted 120MB of data.  This month I offer the
  1010.  backup method I installed afterwards.
  1011.  
  1012.  There probably are as many different solutions for backup on Unix
  1013.  systems as there are system administrators.  This method uses the
  1014.  cpio program to write to the streaming tape device, but with a couple of
  1015.  twists:
  1016.  
  1017.  1.  There is a common set of files that is backed up every day, and a
  1018.      variable set of files based on the day of the week (Monday-Friday),
  1019.      because you can't fit 900 MB of data on a 525MB streamer tape.
  1020.      (The working version of the script is a bit longer than the one
  1021.      provided below, because I have removed some code that shuts down
  1022.      and restarts our Oracle database.)
  1023.  
  1024.  2.  The tape is read back using the cpio 'verbose' parameter, which
  1025.      produces a list of files in the cron file, which is mailed to root
  1026.      at the end of the job.  This is compared with the list of files
  1027.      to see that all the files on the backup list made it to the tape,
  1028.      and thus verifies that the tape is readable.  This doesn't guarantee
  1029.      an error-free backup, but so far it has proven reliable enough for me.
  1030.  
  1031.      The comparison is done by an awk program, I use procmail to look
  1032.      for incoming mail to root and pass only the backup job to the awk
  1033.      script.  Thus the whole backup and verification process is automatic,
  1034.      and each morning I receive an e-mail on the status of last night's
  1035.      backup.  (And the absence of any notice means the backup didn't run.)
  1036.  
  1037.  The backup list for Tuesday demonstrates a relatively unused 'find'
  1038.  parameter:
  1039.  
  1040.     if [ $dow = 'Tuesday' ]
  1041.     then
  1042.        find /base1/oracle7 -name dbs -prune -o -type f -print  \
  1043.          >> /tmp/backup.list
  1044.     fi
  1045.  
  1046.  The 'prune' parameter prevents all files under the dbs subdirectory
  1047.  from being included in the list of files to be backed up.  (These files
  1048.  are part of the daily backup group, so including them a second time would
  1049.  be redundant.)  Another way to accomplish the same trick would be to build
  1050.  the file list with duplicates in it, then do a 'sort -u' to make sure
  1051.  that each line is unique.
  1052.  
  1053.  The awk program processes the output from cron, puts all the files on
  1054.  the backup list into an array, then processes the list of files produced
  1055.  by the cpio readback, mailing a report of the results to me.
  1056.  
  1057.  
  1058.  #!/bin/sh
  1059.  # This is a shell archive (shar 3.32)
  1060.  # made 07/08/1993 05:22 UTC by nolan@notes.tssi.com
  1061.  # Source directory /base3/nolan
  1062.  #
  1063.  # existing files WILL be overwritten
  1064.  #
  1065.  # This shar contains:
  1066.  # length  mode       name
  1067.  # ------ ---------- ------------------------------------------
  1068.  #   1509 -rwxr--r-- backup.job
  1069.  #    776 -rw-r--r-- bkupchk.awk
  1070.  #
  1071.  if touch 2>&1 | fgrep 'amc' > /dev/null
  1072.   then TOUCH=touch
  1073.   else TOUCH=true
  1074.  fi
  1075.  # ============= backup.job ==============
  1076.  echo "x - extracting backup.job (Text)"
  1077.  sed 's/^X//' << 'SHAR_EOF' > backup.job &&
  1078.  X#!/bin/sh
  1079.  X#
  1080.  X# backup.job - daily backup job   06/18/93 MN
  1081.  X#
  1082.  X# run from cron by root
  1083.  X#
  1084.  X
  1085.  XPATH=/sbin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/lib:.
  1086.  X
  1087.  Xecho DAILY BACKUP JOB
  1088.  Xwall <<EOF
  1089.  XBeginning daily backup of selected data files
  1090.  XEOF
  1091.  X
  1092.  Xcd /
  1093.  Xdate > backup.begun
  1094.  X
  1095.  Xdate
  1096.  X
  1097.  X#
  1098.  X# these file areas get backed up every day
  1099.  X#
  1100.  X
  1101.  Xcd /base1/oracle7/dbs
  1102.  Xfind /base1/oracle7/dbs -type f -print > /tmp/backup.list
  1103.  X
  1104.  X#
  1105.  X# other file areas get backed up on a rotating schedule
  1106.  X#
  1107.  X
  1108.  Xdow=`date +%A`
  1109.  Xif [ $dow = 'Monday' ]
  1110.  Xthen
  1111.  X   find /home -type f -print >> /tmp/backup.list
  1112.  Xfi
  1113.  Xif [ $dow = 'Tuesday' ]
  1114.  Xthen
  1115.  X   find /base1/oracle7 -name dbs -prune -o -type f -print  \
  1116.  X        >> /tmp/backup.list
  1117.  Xfi
  1118.  Xif [ $dow = 'Wednesday' ]
  1119.  Xthen
  1120.  X   find /base2 -type f -print >> /tmp/backup.list
  1121.  Xfi
  1122.  Xif [ $dow = 'Thursday' ]
  1123.  Xthen
  1124.  X   find /base3/nolan -type f -print >> /tmp/backup.list
  1125.  Xfi
  1126.  Xif [ $dow = 'Friday' ]
  1127.  Xthen
  1128.  X   find /base3/nolan.src -type f -print >> /tmp/backup.list
  1129.  Xfi
  1130.  Xif [ $dow = 'Saturday' ]
  1131.  Xthen
  1132.  X   echo 'Saturday?'
  1133.  Xfi
  1134.  Xif [ $dow = 'Sunday' ]
  1135.  Xthen
  1136.  X   echo 'Sunday?'
  1137.  Xfi
  1138.  X
  1139.  X#
  1140.  X# do backup with generated list of files
  1141.  X#
  1142.  X
  1143.  Xcat /tmp/backup.list | cpio -ocBv > /dev/rmt/c0t3d0s0
  1144.  Xecho 'backup completed'
  1145.  X
  1146.  X#
  1147.  X# 'verify' backup by getting list of files on the tape
  1148.  X# This isn't a true verify, but it'll have to do for now!
  1149.  X# the cron output will be examined by root
  1150.  X# to make sure all files show up on the verify list.
  1151.  X# (procmail and awk script used to do this)
  1152.  X#
  1153.  X
  1154.  Xcpio -itv < /dev/rmt/c0t3d0s0
  1155.  Xecho 'verify completed'
  1156.  Xdate
  1157.  X
  1158.  Xcd /
  1159.  Xdate > backup.done
  1160.  SHAR_EOF
  1161.  $TOUCH -am 0707233193 backup.job &&
  1162.  chmod 0744 backup.job ||
  1163.  echo "restore of backup.job failed"
  1164.  set `wc -c backup.job`;Wc_c=$1
  1165.  if test "$Wc_c" != "1509"; then
  1166.          echo original size 1509, current size $Wc_c
  1167.  fi
  1168.  # ============= bkupchk.awk ==============
  1169.  echo "x - extracting bkupchk.awk (Text)"
  1170.  sed 's/^X//' << 'SHAR_EOF' > bkupchk.awk &&
  1171.  X#
  1172.  X# bkupchk.awk - examine backup crontab log
  1173.  X# mail report of results to me
  1174.  X
  1175.  XBEGIN { mode = "start"
  1176.  X}
  1177.  X
  1178.  X
  1179.  Xmode=="backup" {
  1180.  Xif (NF == 1) backuplist[$1] = "written"
  1181.  Xif ($2 == "blocks") print $0, "written" > "/tmp/out.wk"
  1182.  X}
  1183.  X
  1184.  Xmode=="verify" {
  1185.  Xif (NF > 8) backuplist[$NF] = "read"
  1186.  Xif ($2 == "blocks") print $0, "read" >> "/tmp/out.wk"
  1187.  X}
  1188.  X
  1189.  X/Database .* shut down/ {
  1190.  Xmode = "backup"
  1191.  X}
  1192.  X
  1193.  X/backup completed/ {
  1194.  Xmode = "verify"
  1195.  X}
  1196.  X
  1197.  X/verify completed/ {
  1198.  Xmode = "done"
  1199.  X}
  1200.  X
  1201.  XEND {
  1202.  Xerrors=0
  1203.  Xfor (file in backuplist) {
  1204.  X   if (backuplist[file] != "read") {
  1205.  X      print "File", file, "not backed up?"  > "/tmp/out.wk"
  1206.  X      errors++
  1207.  X    }
  1208.  X   }
  1209.  Xif (errors > 0) system ("cat /tmp/out.wk |
  1210.  Xmailx -s 'Backup errors!' nolan, tom")
  1211.  Xelse system ("cat /tmp/out.wk |
  1212.  Xmailx -s 'Backup successful' nolan" )
  1213.  X}
  1214.  SHAR_EOF
  1215.  $TOUCH -am 0707233693 bkupchk.awk &&
  1216.  chmod 0644 bkupchk.awk ||
  1217.  echo "restore of bkupchk.awk failed"
  1218.  set `wc -c bkupchk.awk`;Wc_c=$1
  1219.  if test "$Wc_c" != "776"; then
  1220.          echo original size 776, current size $Wc_c
  1221.  fi
  1222.  exit 0
  1223.  
  1224.  
  1225.  
  1226.  =END=
  1227.  
  1228.  
  1229.  
  1230.  Rookie Review  (JANET.S)  Janet McNeely
  1231.  -------------
  1232.  Part 5 of a continuing series
  1233.  _Unix for the Impatient_  by Paul W. Abrahams and Bruce Larson
  1234.  
  1235.  _Unix for the Impatient_ is well named.  This 500+ page book by Paul
  1236.  W. Abrahams and Bruce Larson takes the Unix beginner on a whirlwind
  1237.  tour of the system, with quick introductions to history and basic
  1238.  concepts. Then it's off to basic operations.  When you're done with
  1239.  this chapter, if you've been working along with it, you know how to
  1240.  accomplish most common tasks.
  1241.  
  1242.  Catch your breath, because next you'll be introduced to Information
  1243.  Services and shell programs, and learning basic usage of vi and ed.
  1244.  Finally you get to Emacs, grep, telnet, ftp and other network
  1245.  communications processes, and lastly, an introduction to the
  1246.  X-Window System.
  1247.  
  1248.  I'll be honest.  I've only gotten about a third through the book and
  1249.  I really need to go back, this time with the 3B1 on.  _Unix for the
  1250.  Impatient_ is probably the book I'd spend my hours cramming with if
  1251.  I were going to a job interview for a Unix administration job next
  1252.  week.  It wastes no time with trivia, but hits just enough detail to
  1253.  help the reader achieve a minimum level of function and knowledge in
  1254.  a minimum amount of time.
  1255.  
  1256.  eot ------
  1257.  
  1258.  What makes a Realtime Operating System "Realtime"  (MIKE.MC)  Mike McCabe
  1259.  ------------------------------------------------
  1260.  
  1261.  This article will be a discussion of the attributes and requirements that
  1262.  are necessary to make an operating system "Realtime".
  1263.  
  1264.  First, what does the term Realtime mean?
  1265.  
  1266.  Realtime as its known in the Computer and Operating System parlance is a
  1267.  term used to describe a system that reacts in a very predictable and
  1268.  timely fashion to external or internal events.
  1269.  
  1270.  Most computer Operating systems are not realtime systems including the
  1271.  general flavor of Unix that is being sold today.  However, there does
  1272.  exist quite a few proprietary operating systems out there that are either
  1273.  realtime or pseudo realtime systems and the Unix market as the Posix
  1274.  standard continues to get a foothold is shifting from non-realtime
  1275.  operation to a realtime operation.
  1276.  
  1277.  A pseudo realtime system is a system like VMS for Digital Equipment Corps.
  1278.  Vax and Alpha Lines.  This system supports realtime functionality but
  1279.  only to a degree and at certain priority levels.  However, DEC's OSF/1
  1280.  system which is a flavor of Unix does support full realtime control of the
  1281.  operating system.
  1282.  
  1283.  What are some of the capabilities that make a system Realtime?
  1284.  
  1285.  Ok, time to use some buzzwords which I will explain in a moment.  The
  1286.  basic capabilities required from any realtime operating system are as
  1287.  follows:
  1288.  
  1289.          Pre-emptible Kernel Architecture
  1290.          Globally Shared Memory Regions
  1291.          Process Resource Sharing with locking mechanism
  1292.          High Speed Asynchronous Event Handling
  1293.          Realtime File Access
  1294.  
  1295.  Now I'll take these one at a time and attempt to explain what they mean...
  1296.  
  1297.  Pre-Emptible Kernel Architecture:
  1298.  
  1299.  Most Unix's use a scheduling process that allows a task or process to
  1300.  essentially capture the cpu until such time as the process blocks which
  1301.  simply means that it tries to access a resource or kernel function.  At
  1302.  this time the standard Unix process scheduling system looks at the list
  1303.  of processes that are ready to run and picks the highest priority one
  1304.  off the list.  There is a basic flaw in this in that if you have a runaway
  1305.  task (i.e. an infinite loop) it could completely steal all the cpu time
  1306.  and never let anything else run.  Most standard systems get around this
  1307.  by setting a timeout or timeslice for each process that allows the operating
  1308.  system to still share the cpu resource.  This is an example of a non-
  1309.  premptible kernel however.  A fully premptible kernel is one in which
  1310.  at most any time a high priority task can prempt the running of either
  1311.  the kernel itself or a lower priority task.  The only exceptions to this
  1312.  are during some types of I/O where critical timing is needed for example
  1313.  to a harddisk.  Due to the nature of this kind of system you can develop
  1314.  a task or process that you can guarantee will run say every 20 milliseconds.
  1315.  
  1316.  
  1317.  Globally Shared Memory Regions:
  1318.  
  1319.  A realtime system should provide a means that is very high speed for
  1320.  processes to share data and to communicate with each other.  This can be
  1321.  accomplished by using a shared memory region.  A shared memory region is
  1322.  a region of the systems physical memory that multiple processes can
  1323.  both write to and read from as if the area was local memory.  With this
  1324.  kind of ability very high speed interprocess communications systems can
  1325.  be developed.
  1326.  
  1327.  Process Resource Sharing with locking mechanism:
  1328.  
  1329.  An operating system provides a process with access to many resources.
  1330.  A resource is any system device or function where multiple requests may
  1331.  come in but only some can be given access at a time.  In order to control
  1332.  this a realtime operating system provides a means to reserve a spot
  1333.  on the list for getting access to the resource as well as a means to
  1334.  prioritize the requests.  This feature is typically called a Resource
  1335.  Locking Mechanism.
  1336.  
  1337.  High Speed Asynchronous Event Handling
  1338.  
  1339.  There are several buzzwords for this capability of a realtime operating
  1340.  system.  You may hear the words "Event Flag" or "Semaphore".  Both of these
  1341.  are words that describe a basic concept of realtime systems and that is
  1342.  the ability to either schedule or asynchrounously interrupt a process
  1343.  to have it perform some time critical task.  What this means is that you
  1344.  can schedule a task to perform some critical data collection from a piece
  1345.  of hardware or I/O device on a very accurate cyclic basis while the
  1346.  rest of the process does processing of some other non-critical form.
  1347.  
  1348.  Realtime File Access
  1349.  
  1350.  It is said that most computers spend the majority of their time accessing
  1351.  the disk drives.  In a realtime system environment the time required to
  1352.  access the disk drive can be a very long time to a task that needs to
  1353.  be ready to handle another access in mere milliseconds or microseconds.
  1354.  In order to improve the timing and access capability to the disk I/O system
  1355.  in a realtime system a special type of file may be created which typically
  1356.  is contiguous (all together not spread out) on the disk and shadowed in
  1357.  memory. (kind of like a cached file).  The kernel provides facilities to
  1358.  handle the actual writing of the data to the disk thereby allowing the
  1359.  high speed process to get back to doing its higher speed function instead
  1360.  of waiting on the slow disk.
  1361.  
  1362.  This discussion is by no means a complete description of the issues that
  1363.  make up a realtime operating system but I feel that the biggest issues have
  1364.  been touched on in this article.  For a more complete description of
  1365.  the capabilities required and supplied by realtime systems I would suggest
  1366.  contacting the IEEE to order their standards document on the Posix realtime
  1367.  extensions (standard 1003.4).
  1368.  
  1369.  Mike McCabe
  1370.  
  1371.  eot ------
  1372.  
  1373.   ---------------
  1374.   REMINDER - This newsletter is being sent to you 'by request'. If you do
  1375.  not wish to keep receiving it, e-mail a stop notice to GARS. On the other
  1376.  hand, we would very much appreciate it if you would pass the word that we
  1377.  do distribute this item near the tenth (10th) of the month of issue to any-
  1378.  one on GEnie who requests it.
  1379.    P L E A S E  also remember contributions are most welcome. Please e-mail
  1380.  items and/or suggestions to GARS.
  1381.  
  1382.  etx ------
  1383.  
  1384.  
  1385.   Trademark and Copyright notices:
  1386.   Unix is a Trademark  of UNIX System Laboratories, Inc.; GEnie, LiveWire, and
  1387.   RoundTable are Trademarks of General Electric Information Services  Company;
  1388.   Xenix and ms-dos are Trademarks of  Microsoft  Corporation; NeXT NeXTstation
  1389.   and NeXTstep  are Trademarks  of  NeXT Computer Systems, Inc., Coherent is a
  1390.   Trademark of Mark Williams Company, Sun, SPARC, SunOS are Trademarks of  Sun
  1391.   Microsystems, Inc., SCO is a Trademark of  Santa Cruz Operations, Telebit is
  1392.   a Trademark of Telebit Corporation, Hayes  and  Smartmodem are Trademarks of
  1393.   Hayes Microcomputer Products, Inc.
  1394.  
  1395.   The contents of this newsletter are copyright(c) 1992 and may be copied whole
  1396.   or in part only if original  credit is included. The GEnie UNIX RoundTable is
  1397.   not affiliated with AT&T or UNIX System Laboratories, Inc.
  1398.  
  1399.   eof ------
  1400.  
  1401.  
  1402.  
  1403.  
  1404. =END=