So You Want To Be A UNIX Wizard? (The Loginataka)

So You Want To Be A UNIX Wizard? (The Loginataka)

Post by Eric S. Raymo » Thu, 20 May 1993 04:36:54

Archive-name: unix-faq/loginataka
Last-update: Tue May 18 15:18:42 1993

                        THE LOGINATAKA
                (Dialogue between a Guru and a Newbie)
                        Version 2.1

Speak, O Guru: How can I become a UNIX Wizard?

O, Nobly Born: know that the Way to Wizardhood is long, and winding, and
fraught with Risks.  Thou must Attune thyself with the Source, attaining the
arcane Knowledge and Conversation of the System Libraries and Internals.  Yea;
and such an all-consuming Time and Energy Sink is this as to greatly Imperil
thy Grade Point Average (if one thou hast), not to mention thy Sex Life (if one
thou hast).  But persevere, oh Larval One; rewards beyond the Dreams of Lusers
await thee!

Speak, O Guru: What books should I study?  Are the O'Reilly "Nutshell"
guides a good place to start?

O, Nobly Born: know that the O'Reilly books are but the palest Shadow, the
outermost Portal of the True Enlightenment.

If thou desirest with True Desire to tread the Path of Wizardly Wisdom, first
learn the elementary Postures of Kernighan & Pike's _The_Unix_Programming_
Environment_; then, absorb the mantic puissance of March Rochkind's _Advanced_
Unix_Programming_ and W. Richard Stevens's _Advanced_Programming_In_The_UNIX_
Environment_.  Immerse thyself, then, in the Pure Light of Maurice J.  Bach's
_The_Design_Of_The_UNIX_Operating_System_.  Neglect not the Berkelian Way;
study also _The_Design_Of_The_4.3BSD_UNIX_Operating System_ by Samuel Leffler,
Kirk McKusick et. al.  For useful hints, tips, and tricks, see _UNIX_Power_
Tools_, Tim O'Reilly, ed.  Consider also the dark Wisdom to be gained from
contemplation of the dread _Portable_C_And_UNIX_Systems_Programming_, e'en
though it hath flowed from the keyboard of the mad and doomed Malvernite whom
the world of unknowing Man misnames "J. E. Lapin".

These tomes shall instruct thy Left Brain in the Nature of the UNIX System;
to Feed the other half of thy Head, O Nobly Born, embrace also the Lore
of its Nurture.  Don Libes's and Sandy Ressler's _Life_With_UNIX_ will
set thy Feet unerringly upon that Path; take as thy Travelling Companion
the erratic but illuminating compendium called _The_New_Hacker's_Dictionary_
(Eric S. Raymond, ed., with Guy L. Steele Jr.).

(In this wise shalt thou travel the Way of the Camel.)

Speak, O Guru: To attain Mastery, how many Kernels do I need to take apart
and reassemble?

O Nobly Born: this question reveals that indeed thou hast touched upon an
Ineffable Truth about UNIX --- that thou canst not Plumb its Mysteries by
mere Study but must become One with it through Practice.  The true Way to the
Knowledge of the Source is not the timid and footling way of the Student,
but the Divine Foolery of the Hacker.  Hack, then; strive against Mighty
Problems, have joy in thy Striving, and let the Crashes fall where they
may (maintaining the while, for the Good of thy Karma, a Rigorous Backup

(In this wise shalt thou travel the Way of the Lion.)

In this day of Boot-Time Autoconfiguration and Dynamically Loadable Device
Drivers, reassembling a Kernel is no longer the daunting Test and Seal of
Mastery that once it was.  However, writing and verifying thine own Device
Driver for some piece of * Hardware is still a worthy challenge to
thy Budding Guruhood.

Speak, O Guru: Some there are who claim that the sole Path to Wizardry and the
proper Way of every Right-Thinking Hacker is to rewrite the UNIX Kernel from
Scratch.  Is this not Sacrilege?

Sacrilege, O Nobly Born?  Nay!  Certainly the Kernel Source is the Inmost
Mystery of UNIX --- but there is a Mystery beyond that Mystery.  The Nature
of UNIX inhereth not in any one Version but in the Design Tradition of which
all UNIXes are Evolving Parts.  

The Rite of the Rewrite is not the only Path to Mastery, but it is perhaps
the highest and most Sacred of all Paths.  Few indeed are those who, travelling
it, have crossed the dark and yawning Abyss of Implementation to Delivery.
Many, yea, many in truth stagnate yet in the Desert of Delay, or linger ever
in the ghastly limbo called Perpetual Beta.

Speak, O Guru: What, then, is the True Path to Wizardhood?

O Nobly Born: learn, and seek within thyself.  Cultivate the cunning of
the Serpent and the courage of the Tiger; sup deeply from the Wisdom of
those who came before thee.  Hack, and hack again; grow, by trial and by
error.  Post thy best hacks to the Net and gain in Repute thereby.  Also, O
Nobly Born, be thou grave and courteous in thy speech; be helpful to those
less than thee, quick to succour and slow to flame.

If thou dost these things faithfully, if thou travellest with high heart
and pure intention, soon shall thy callow Newbiehood be shed.  By degrees
imperceptible to thyself shalt thou gain Power and Wisdom, striving and
doing all the while.  Gradually shall thy puissance unfold and deepen.

O Nobly Born, if thou dost all these things, thy Wizardhood shall surely come
upon thee; but not of a sudden, and not until after thy arrogant Mind hath
more than half forgotten that such was its aim.  For know this --- you may not
by thyself in Pride claim the Mantle of Wizardry; that way lies only Bogosity
without End.

Rather must you Become, and Become, and Become, until Hackers respect thy
Power, and other Wizards hail thee as a Brother or Sister in Wisdom, and you
wake up and realize that the Mantle hath lain unknown upon thy Shoulders since
you knew not when.

(In this wise shalt thou travel the Way of the Child.)


1. comp.unix.wizards comp.lang.c comp.sys.sun alt.unix.wizards

Has anyone seen this type of error on the following platform and the Sun C
Compiler ??  The C program in question returns an integer from main and core
dumps with the error message below.  We replaced the return with an exit and
the error disappeared.  We ran the program in the debugger with check -all
and it gets a segmentation fault on the return statement.

Platform: SunOS oscar 5.4 Generic_101945-36 sun4d sparc

reading symbolic information for prdbc301
core file header read successfully
core file read error: address 0xdf7f1de0 not in data space
error while reading shared library list
program terminated by signal SEGV (no mapping at the fault address)

PLEASE SEND me e-mail instead of posting back an answer.

Thanx in advance,

Julie M. Kalman

2. MV3D FAQ v0.32

3. alt.unix.wizard,, comp.unix.admin

4. How to get domain name using Socket


6. magicfilters and a2ps

7. Welcome to comp.unix.questions and comp.unix.wizards [Monthly posting]

8. RH 5.0 doesn't recognize IDE CD ROM drive


10. Welcome to comp.unix.questions and comp.unix.wizards [Monthly posting]

11. UNIX-WIZARDS Digest, INO-UNIX Digest

12. Welcome to comp.unix.questions and comp.unix.wizards [Monthly posting]