nix for yEPH sers
xelson rFpF fee e
genter for ienti gomputing
heprtment of wthemtis
niversityof th
lt vke gityD th VRIIP
e
elX @VHIA SVIESPSR
PREtunEVU gontents
I sntro dution I
P ht9s in the xme P
Q gommnd ro essors P
R gommnd gorresp ondene S
S pile ree yrgniztion IQ
T serD hiretoryD nd pile xmes IU
U hevie xmes IU
V vogil xmes IV
W ip esD sGy ediretionD nd fkground tos IW
IH erminl upp ort in nix PH
II iyp nd vogout PI
IP gommnd elises PI
IQ invironment gustomiztion PP
IR qetting relp ynEline PP
IS yp ertorsD heelsD nd up erE sers PQ
IT smp ortnt nixools PR
IU purther eding PS
sndex PU
i I sxyh gsyx I
I sntro dution
his do ument hs een written to provide strting p ointforopsEPH users
who will e working on nix systemsD prtiulrly the x worksttionsF st is
not smll o ok out nixY the lst setion gives pointers to severl o oks
tht should prove usefulF therD it is intended to provide the reder with
onnetions etween fmilir opsEPH onepts nd their nlogues on nixF
nix hs often e ritiized for tersenessD lk of mnemoni ommndsD nd
ommnd inonsistenyD plus for overEemphsis of intertive omputer use s
opp osed to thnum er runhing4F o onsiderle extentD these ritiisms
re grounded in ftF roweverD nyone who uses nix for n extended p erio d
nd lerns how to mke go o d use of the multitude of to ols ville lmost
without exeption eomes onvertF hespite its wrtsD nix is in mnywys
very eutiful op erting system whih hs hdD nd ontinues to hveD enorE
mous inuene on op erting systems designD progrmming lngugesD softwre
developmentenvironmentsD nd even on hrdwreofseverl new rhiteturesF
sts lenD sleekD design n e ttriuted lrgely to the smll numer of very
tlented reserhers t e8 fell v ortories who develop ed it for the rst
severl yers of its rst existene on hEIID with susequent p orts to sfw
QUH nd roneywell qgy systemsF everl of them deservemention hereD for
you will see their nmes mentioned frequently in nix ooksD litertureD nd
do umenttionX
uen hompson for the op erting system kernel nd le systemY
hennis ithie for the g lngugeY
teve tohnson for the ortle g ompilerD nd the y nd lex ompiler
genertor to olsY
frin uernighnD eter ein ergerD nd el eho for numerous softwre
to ols nd o oks out nix nd gY
tu peldmn for the rst portrn UU ompiler nywhereD fUUD nd for mkeD
p ossily the llEtime gretest softwretoolever writtenF
smplementtions of nix run on mhines s smll s the sfw gD nd s
lrge s the gryPF ith only few exeptions @ghgD pujitsuD nd sfwAD nerly
every new sup eromputer intro dued to the mrket sine IWVS hsD or will so on
hveD nixF xo other op erting system in the world runs on so mny dierent
hrdwre rhiteturesD providingD for the rst time in omputing9s fortyEyer
historyD the p ossiility of true progrmmer nd softwre p ortility ross mulE
tiple rhiteturesF prom mngement9s p oint of viewD this should mkeitmuh
esier to hose omputers more on the sis of hrdwre p erformneD nd less
on mintining the sttus quo tht hs left minfrme omputing environments
only sup erilly dierent thn they were in IWTQ when the rst multiEmo del
rhitetureD the sfw QTH seriesD ws intro duedF P re9 sx ri xewi P
P ht9s in the xme
uen hompson hose the nme nix s pun on the op erting system wultisD
from whih it orrowed mny idesF he initil implementtion on the hEII
ws in ssemly o deD ut this ws so on rewritten in the g lngugeF hennis
ithie develop ed g from fD whih in turn me from fgvD one of the rst
p ortle systems progrmming lngugesF fgv nd f still existD nd f hs
pro dued desendntD wrgyD whih is used to write the terlo o wple
lger systemF g hs ompletely overshdowed them howeverF
e8 fell v ortories hs trdemrked the nme nixD so other vendors
who liense it from them must usully ome up with new nmesF e8 hs
now gone through puli releses of ersion TD ersion UD ystem sssD ystem
D f @rogrmmer9s ork enhAD nd hf @ho umenter9s ork enhAF
ersion V is in developmentinternllyF
ferkeley hs hd RFHD RFID RFPD nd RFQ of fh @ferkeley tndrd histriE
utionA nixF heir ontriutions to nix re legionY the most signintre
the originl p ort to the hig e rhitetureD the ddition of virtul memory
pging supp ortD the fst le systemD the g shell @shAD nd gGs networking
supp ortF
rewlettEkrd lls theirs r Y it is sed on ystem with ferkeley
extensionsF
un9s implementtion is lled nix in their do umenttionY they re pE
prently liensed to do soF st is sed on RFQ fh with ystem omptiilityD
nd un is working together with e8 to pro due ommon nix merging
the fetures of oth these m jor implementtionsF
siii hs pulished p ortle op erting system interfe denition lled
ysD derived from suset of ersion UD ystem s s sD nd ystem F
qould9s implementtion is EQPF he sfw version is lled esF yn
the gry PD it is lled xsgyF
yn the sfw gD we hve enix from enturegomD nd enix from wiE
rosoftF
xo o dy to my knowledge hs yet pro dued lenedEup version lled
uleenixF
Q gommnd ro essors
nix oers vriety of ommnd pro essorsD lled shellsD whih re nlogous
to omintions of the opsEPH iigD wsgD nd gv F
he originl oneD shD is known s the fourne shellD fter its uthorD teve
fourneF he most populr one in ferkeley nix environments is fill toy9s
shD the g shellD so lled euse of its resemlne to the g progrmming
lngugeF sh oers etter progrmmilityD ommnd historyD ommnd lisE
ingD nd imp ortntlyD jo ontrol llowing strting nd stopping foreground nd Q gywwexh ygiy Q
kground josF
e newer shell is the uorn shellD kshD whih omines fetures of oth sh
nd shD nd oers ommnd funtions nd imsEstyle ommnd editingF he
fpsh is fkus funtionlEprogrmming style shellF xeither ksh nor fpsh
hs reeived wide distriutionD ut ksh myeventully reple sh if it reeives
strong e8 kingF
sn un nixD shells nd other progrms myeonveniently run in winE
dowing environmentY see the mn pges on dxtoolD shelltoolD suntoolsDnd
tektoolF
nlikethe opsEPH iigD nix shells hve only smll num er of uiltEin
ommndsD nd these re exlusively for ontrol of shell optionsF ht orreE
sp onds to most iig ommnds re tul exeutle progrms whose nmes
re not known to the nix shellsY they must therefore e typ ed without E
revitionF hey re serhed for in the le system in hin of diretories
dened ytheer environmentvrileD muh like the opsEPH X logil
nmeF por this resonD nd lso euse nix ws originlly develop ed on slow
teletyp e printing terminlsD nix ommnds tend to e shortD with mny PE
nd QEletter ommndsF
he opsEPH iig hs knowledge of the syntx for ll of its uiltEin omE
mndsD nd gv gives ordinry users the ility to dd new ones whih re
indistinguishle from iig ommnds s fr s their user interfe is onE
ernedF hen you typ e something like gywsvi GcD the iig knows wht
swithes re villeD nd will disply them in resp onse to your queryDutno
ttempt hs een mde to lod ny prtiulr ompiler into memoryF e progrm
whose syntx is not uiltEin to the iigD suhs pyeFiiDnnotgiveyou
help until it is runningF ht is why pye Gc do es not workD ut pye
followed y rrige return nd Gc do esD sine y tht timeD the progrm
is exeutingF he prtiulr order of swithes nd lenmes on the ommnd
line is up to who ever dened the prsing syntxD nd onsequentlyD opsEPH
ommnds exhiit vriety of stylesD inluding su ommnd mo desD suh s
used y the f svh nd hsigy ommndsD whih hve lrge numer of
optionsF
sn nixD the shells do not rry uiltEin knowledge of individul progrm
options nd lenme exp ettionsF snstedD they ssume tht l l ommnds
re invoked with the syntx ommndver foptionl swithesg filelistF
withes re onventionlly prexed yhyphen @though there re exeptionsD
suhstr nd rAF sn nyeventD everything fter the ommndver is ssumed
to e p otentil lelistD nd the text is snned for wildrd hrters @whih
use lenme expnsionAD nd the ommnd line is expnded into list of
lnkEseprted rgumentsF he min routine in the progrm itself is then
presented with two prmeters|n integer ount of the num er of rgumentsD
nd vetor of p ointers to eh of the rgumentsF
por mny purp osesD this is quite dequteF xo progrm hs to hndle wildE
rd expnsionD sine it sees only the nl list of ommndEline rgumentsF Q gywwexh ygiy R
yption prsing is simple euse the initil hrter of eh rgument is exE
mined to see whether it is hyphen or notY if it isD n option swith is ssumedD
nd the remining hrters of the rgument re further exmined to lssify
the rgumentF ytherwiseD the rgument is ssumed to e lenmeF
here re severl disdvntges of this pprohF
xo inEline help is ville from the shellD like it is with the opsEPH
iigF his is serious wofessentilly every other op erting system
ut opsEPHD nd fores user who hs prtilly typ ed ommnd line
nd then forgotten the nme of swithtoreh for printed mnulD or
ort the typ ein nd go serh for onEline do umenttionF
snvlid syntx in the ommnd line is not deteted until the progrm hs
lredy een lo ted in the le systemD loded into memoryD nd strtedD
whihwstes system resouresF ine typ ogrphil errors re ommonD
this hpp ens frequentlyF
he lenme expnsion done y the shell is limited to the size of the
p ointer vetor uerD whih is unfortuntely xed when the shell is uiltF
elthough it is lrgeD it is not lrge enough to hold expnsions of severl
lrge diretoriesY for exmpleD ls El GusrGmnGmncGB overows the shell
uer nd the ommnd do es nothingF
feuse the shells hndle wildrd expnsionD everyone ssumed tht
would lwys e suientD nd no nix lirry tht s m wre of proE
vides userEllle funtion for wildrd expnsionF husD progrm
like nix uermit nnot hndle get BFB ommndD unless tht request
ws on the ommnd lineF
ixpnding wildrds implies serhing the le systemD nd the wy tht
the shellsD nd progrms like trDhve done this is to red the diretory
les themselvesD mking user o de unneessrily knowledgele out deE
tils tht relly should e known only to the kernelF sn un9s ltest relese
of nixD diretories n only e red vi sp eil lirry llsD insted of y
expliit op ens nd reds of diretory lesD inditing tht the imp ortne
of my ritiism is only now eginning to e understo o dF
he nonEtrivil pttern mthing o de required y most editors nd the
shells hs only reently een dded to the stndrd lirries on some nix
systems @regexp@QAAF
he opsEPH pproh for wildrd expnsion p ermits the user to present
wildrded le sp eition to the wonitor through system llD then to
retrieve one mthing lenme with eh susequent system llF sf the progrm
wishes to oer fnier pttern mthingD it n esily do so y requesting the
most generl le sp eition from the wonitor in the rst pleD then pply the R gywwexh gyiyxhixgi S
pttern mth lter to eh returned nmeF pe neverhstoellotedto
store ll the le nmes t oneD sine the wonitor is le to hndle the uering
of lenmesY there is no diulty then in sking for listing of ll the les in
the le systemD hsigy X`BbBFBFBF sn nixD this n only e done y
suterfuge of dditionl options of some ommndsD like lsF sf the user relly
wnts omplete list of ll the les in the wildrd expnsionD then there is no
diulty in dynmilly llo ting the spe for them s they re retrieved one
y oneF
sn some reent implementtions of RFQfhD users hve mo died shells to
provide some limited inEline help with lenme expnsionF yn the unD if the
sh environmentvrile file is setD then if gtlEh is typ ed on the ommnd
line @not t the eginningD euse tht would e n endEofEle signlAD list
of ll les whihmth to tht p oint is displyedF his tion is suppressed for
the rst word on eh line @the ommnd verAD so you nnot use it to ndD
syD ll ommnds tht egin with ertin letterF st is unfortunte tht nix
hose the query s pttern mthing hrterY it should hve een reserved
for future use s help hrterF gtlEh is muh less oviousF
R gommnd gorresp ondene
he following tles give rief summry of opsEPH ommnds @otined y
typing c4 to the iigA nd p opulr progrms with nix equivlentsF
sn some sesD there is lose mth etween themD nd in othersD only
very rough equivleneF por exmpleD lthough nix hs mount nd umount
ommndsD these orresp ond to privileged opsEPH y ommnds i hsu
eesvefvi nd hswy xD rther thn to the iig esqxD hiesqxD wy xD
nd hswy x ommndsF here is no wyfor nix user to request tht the
op erting system esqx or wy x devieD suh s tp e driveY the op erting
system provides no suh ontrolF snstedD the user just referenes the devie
nme nd hop es no one else hd the sme ide t the sme time @eFgF tr Ev
B writes on GdevGrmtH without nyvolume veritionAF R gywwexh gyiyxhixgi T
rivte yEPH gommnds nix iquivlents
evi leve
exyrihsigy ls
fivv eho En gtlEq
gh dD pwd
hu i duD df
psviEeggiEgy x EnGE
psxqi nger
uivyeh t
v lpr
wuhs mkdir
gv EnGE
lpr
ngerD lstD psD rwhoD who
qi EnGE
ivv sp ell
iie for
gy pioD pD tr
pQ strsfQ
hivii nd | rm
i test
i t
heiEevi leve
es sleepD wit
re envD printenv
hsigy shD kshD sh R gywwexh gyiyxhixgi U
tndrd yEPH gommnds nix iquivlents
c prop osD mnD whtisD whereisD whih
eggi EnGE
ehsi EnGE
eqesx 33D 35
eixh t bb
egrsi rD tr
esqx EnGE
eegr EnGE
feguegi ddD mt
fvexu ler
fieu gtlEh fter write
f svh mkdirD rmdir
gexgiv trmD lprm
gvyi EnGE
gywsvi D fUUD mkeD p D piD pixD px
gyxxig dD pwd
gyxsx i shX fg
gy p
giei edD emsD exD vi
gip xrefD tgsD pxref
gei stripD shX gtlEnY see lso gywsvi
heswi dte
hh dD dxD dxto olD sd
hiesqx EnGE
hif q EgD fUU EgD p Eg plus dD dxD dxto olD sd
higvei EnGE
hipsxi shX setenvD shX exp ort xewia
hivii rm
hiys EnGE
hiegr EnGE
hsigy ls
hsefvi gtlEh from su
hsgeh EnGE
hswy x EnGE
hy shel l ommndle
ihs edD emsD exD sedD texteditD vi
ixefvi su
ixhEeggi EnGE
iyp EnGE
i x EnGE
iewsxi EnGE R gywwexh gyiyxhixgi V
tndrd yEPH gommnds nix iquivlents
iig i ommndnme
i xqi EnGE
phsigy ls El
pyu shX gD fgY swither
piii shX fg plus gtlE
qi EnGE
riv prop osD mnD ems gtlEr s
rsy history
sxpywesyx tqD envD lp qD printenv
uii shX g
uwsg EnGE
vyeh D fUUD ldD mkeD p D piD pixD px
vyqy logout or gtlEh
wiqi EnGE
wyhsp EnGE
wy x EnGE
xewi EnGE
ysqsxev EnGE
y gtlEh
iii EnGE
sx lpr
xgr EnGE
r shD sh
h EnGE
EnGE
hsigy ls Eltu
igisi mesg
iixi EnGE
ip i mesg
iweu t bGdevGnull
ixewi mv
ii shX kill EW 75
isii EnGE
isxh ddD mt
x ommndnme
ei shX gtlEn
i leveD shX set ver oseD psswd
us ddD mt
e shX fg
fws t
e ngerD lstD psD rwhoD wD who R gywwexh gyiyxhixgi W
tndrd yEPH gommnds nix iquivlents
eui sh leD sh leD shX soure leD shX F le
evu mesgD write
hsigy ls Elt
iwsxev resetD sttyD tset
exvei EnGE
i tD lessD moreD view
xeegr EnGE
xhigvei EnGE
xhivii EnGE
xuii EnGE
xvyeh ddD mt
hsigy ls El
hsigy ls Elt R gywwexh gyiyxhixgi IH
gommon yEPH rogrms nix iquivlents
ewi mstex
eu wk
ffyeh rn
fyvhx tgrindD vgrind
gf D indent
gtlE gtlED time
hief expndD unexpnd
hspp diD diQD sdi
hyg wix formtD roD nroD tro
hyxvh tD setkeys
igry eho
iqi egrep
pesv s
pqi fgrep
psvgyw diD diQD sdi
psxqi nger
py fpr
py fpr
p ftpD rpD tftpD uupD uusend
qih stty
qi grep
rieh hed
sxhix D indent
sxpg du
uiws kermit
vei ltex
vsfip lirefD nm
vy devpsD lptopsD trnsript
wegy s
weui mke
weupsv fsplitD mklD split
weuvsf rD rnli
wevi mple
wshe s
wvgyv pr
ww mil
xie ngerD netsttD ruptimeD rwhoD tr S psvi ii yqexsesyx II
gommon yEPH rogrms nix iquivlents
eyg psto
grs gprofD monitorD profD tov
gvyyu gprofD monitorD profD tov
pyw EnGE
py pfort
ryy sript
i pretty
ivv sp ell
epy eD fUUD rtfor
ih gi redue
xypp formtD roD nroD tro
gsfi sri e
ih sed
ihs edD exD sed
ih stty
pQ sfQ
xyfyv ionD sno ol
y sortD tsort
ggyw diD diQD sdi
esv til
ivxi telnetD rloginD rshD uux
i tex
wegy ppD mRD tmro
xi tip
sv nsitp eD ddD mtD tr
swUP wk
eqi nd
riv uhelp
xs units
v ls Gusr
higyhi uudeo de
ixgyhi uueno de
ee nsitp e
wriv vmshelp
ip xrefD pxref
iegr egrepD fgrepD grepD ngrep
S pile ree yrgniztion
opsEPH nd nix oth oer wht pp ers to the user to e treeEstrutured
le system mde up of ordinry dt les nd diretory lesY the diretory les
ontin lists of lesD inluding p ossily diretory lesF opsEPH le nmes re S psvi ii yqexsesyx IP
se insensitiveD nd onventionlly displyed in upp erEseF nix le nmes
re se sensitive X les fooD pyyDndpoo re distintF ine egs s upp erEse
letters ollte efore lowerEse lettersD nix users trditionlly sp ell ll le
nmes in lowerEseD exept those few sp eil les tht they wnttoppert
the strt of diretory listingD suhs wkefileD iehwiD nd yhyD where they
re more likely to e notiedF
rere is omprison of these le tree struturesF
hiretory yjet opsEPH
hiretory file nmeFhsigyFI
oot diretory devieX`yyEhsigyb
opElevel diretory nme devieX`yyEhsigybpyyFhsigyFI
opElevel diretory devieX`pyyb
udiretory devieX`pyyFfeb
yrdinry file devieX`pyyFfebfileFextFgen
hiretory yjet nix
I
hiretory file nynme
oot diretory Gdevie
opElevel diretory nme GdevieGfoo
opElevel diretory GdevieGfoo
udiretory GdevieGfooGr
P
yrdinry file GdevieGfooGrGfileFext
here re oth go o d nd d p oints of these le systemsF
foth hve the onept of defult login diretory nd urrent defult
diretory4D so frequentlyD only the le nmeD not its full diretory pthD hs
to e sp eiedF nix supp orts reltive diretory pthsD nd opsEPH will to o
with the next version of the wonitor to e instlled in lte spring IWVUF his
redues the mountoftyping users hve to doD nd mkes it p ossile to dene
ommnd les whihnever hve to nme full diretory pth expliitlyD llowing
diretory trees to e moved from mhine to mhine without hving to edit
` b
their ommnd lesF he vyUW nix implementtion mkes extensive
use of this pilityF
yn nixD les in the urrent diretory n e nmed without n expliit
pthD or prexed y reltive pth FGD sine F is shorthnd for the urE
rent diretoryF he prent diretory shorthnd is FFD so le in tht direE
tory ould e referred to s FFGfilenmeF his nottion n e rep etedX
I
nix hs no sp eil diretory nme formtY the diretory le ttriute is stored with the
le protetion its
P
nix do es not hve le genertionsD lthough multiple p erio ds re p ermitted in nmesD so
they n e simulted|fileFextFI is vlid le nmeF S psvi ii yqexsesyx IQ
FFGFFGFFGfilenme is le in the gret grndprent diretoryF ou rrely
need to use the FG nottionD ut it is sometimes hndy to dismigute leE
nme with n initil hyphen from n option swithD whihislwys egun y
hyphen in nixY for exmpleD rm Efoo rises n error messge rmX unknown
option Dutrm FGEfoo deletes the le suessfullyF
enother useful shorthnd supp orted y sh nd severl utilitiesD ut not y
shD is tilde to represent the login diretoryX GFshr is le in tht diretoryF
por shD you must use stndrd environment vrileD rywiX 6rywiGFshrY
this works with sh to oF
yn oth systemsD diretory les re sp eil|they myeredleyuser
progrm @on opsEPHD only y mking system llsD for resons mde evident
elowAD ut only the op erting system kernel is ever p ermitted to write themD
in order to mintin le system integrityF
he nix formt is simple nd onsistentD ut one nnot tell from the nme
if le represents diretory le or notF his often do es not mtterD for if you
sk for diretory listing of le whih is diretoryDyou get list of the les
in tht diretoryD ut if it is norml dt leD you just get the nme kY
oth ses re onsidered legitimteD nd no error is rised for eitherF
he nix le nming syntx nd op erting system supp ort for it mke
devies equivlent to les from the p oint of view of the progrmmerF rere re
some exmplesX
GdevGtty user terminl
GdevGmt tp e drive
GdevGlpr line printer sp o oler
GdevGnull null devie
GuGmGjonesGfooFr ordinry le
he null devie is lwys empty for inputD nd never full for outputY it is priE
mrily useful for providing dummy input nd output lesF
he opsEPH formt is more omplexD ut lerly distinguishes diretory
les from ordinry dt lesF hevie nmes n e used in ple of le nmesD
ut the diretory nd le sp eition re just ignoredF husD for the ove
nix exmplesD opsEPH hs
X user terminl
wX tp e drive
vX line printer sp o oler
x vX null devie
eX` FtyxibpyyFfeFQ ordinry le
here isD howeverD signint distintion in the implementtion of the diretory
systemF e opsEPH diretory ontinsD mong other thingsX
le nmesY S psvi ii yqexsesyx IR
le ttriutes @yte ountD yte sizeD pge ountD protetionD ountD login
or lesEonlyD owner nmeD lst writer nmeD referene ountsD temp orry
or p ermnentD deleted ut not expungedD rhivedD visileGinvisileD XXXAY
times of retionD lst redD lst writeD lst up dteD lst kupD nd expiE
rtionY
for rhived lesD nmes of two seprte tp es on whih the le ontents
reside oElineY
logil disk ddress p ointers to the prent diretoryY
logil disk ddress p ointers to eh le9s ontentsY
disk quotsY
login psswordsF
ine the opsEPH op erting system hes tive diretories in memoryD nding
le in the urrent diretory normlly do es not require ny disk essesF he
pointers to prents nd hildren em edded in the diretory le men tht it
nnot e renmed or moved to new disk struture without eing reorgnized
nd rewrittenF here is no eetive limit to the numer of les in the entire
le systemY les n ontinue to e reted until there is no more disk spe
left in the le systemF sf diretory le lo k eomes orruptedD it is still
usully p ossile to reonstrut nd reover virtully ll of the whole le system
y virtue of the forwrd nd kwrd p ointers of the diretory lo ks @eh
le hs n index lo k whih p oints to its owner diretoryAF his is the jo of
the griguh utility whihisrunwhenever the higEPHGTH is re o oted fter
hrdwre or eletril filure whih p otentilly ould orrupt the le systemF
nder nixD diretory les ontin essentilly only two thingsX
le nmesY
for eh leD its index into mster tle of ll les in the system @the
nix inode tleAY
e nix diretory le lwys ontins n entry for its prent diretory nd itselfD
nd soD likeopsEPH diretoryDnnotemoved without internl reorgnizE
tionF yn the other hndD nding the prent diretory from su diretory n
e done eiently from informtion in the diretory le itselfF
nix stores le referene ount in its mster ino de tleD whih llows
le to hvemultiple nmesF heleting le removes its nme from its owning
diretory nd derements the referene ountY only when the ountrehes zero
is the le spe tully freedF yne imp ortnt use of these linked les4 is
replition of dt les to lrge groups of usersD suh s students in lss|
they n ehhve their own opies of prolem test leD ut only one opyis T iD hsigyD exh psvi xewi IS
ever stored on diskF ewriting the le reks the links to the other opiesD so
one user nnot hnge nother9s les this wyF st lso mkes it esy to rete
lises for les or for le treesF
he mster le tle is indexed ytheinodenum er from the diretoryDnd
the entry it selets is struture ontining le ttriutes @ownershipD proteE
tionD etFA nd physil disk ddressF he wek p oint here is this single mster
le tleX
if it is lostD the whole le system is lostY
it is sprse liner tle of p erhps IHHDHHH to SHHDHHH entries in lrge
systemD so ess n e slowY
it is not extendleY one it lls upD the le system is fullD even if lots of
disk spe is still emptyF
hese issues hve reeived onsiderle ttention from nix develop ersF hupliE
te opies of the mster le tle nd frequent up dtes to diskD plus inresingly
relile disk medi nd intelligent externl disk ontrollersD hve mde the freE
quent le system losses of the pst rre to dyF snternl memory hing of lrge
prts of the mster tle improves the lo okup p erformneF xeither system hs
yet een le to del with the third prolemY when it strikesD the only reourse
is omplete rollo of the le system to tp eD then omplete system reuild
with n enlrged le tleF yn lrge systemD this ould esily e n llEdyjo
for the op ertions stF o redue the likeliho o d of systemEwide ino de tle
overowD nd to llow for seletive le system kupD nix disks re normlly
ongured into multiple logil volumesD eh with their own ino de tleF sf one
of these logil volumes suers overowD s long s it is not the ro ot volumeD it
n e unmounted nd reuilt without hlting the systemF
hisk quots in nix re mintined on the sis of le ownership from limits
set in the user uthoriztion lesD not y diretories s they re on opsEPHF
he nix pproh is usully more onvenient for userD sine the quot is
indep endentofthenum er of su diretoriesD ut it lso mkes it imp ossile to
regulte disk usge y diretory s n e done on opsEPHF
nix le systems tend to mke hevy use of diretoriesD whih n e onE
fusing for new usersF wostD howeverD dhere to ertin ommon onventions for
nming of system diretoriesF ee the mn pge on hier@UA for n outline of
the imp ortntonesF
T serD hiretoryD nd pile xmes
yn opsEPHD usernme is used to form the nme of the login diretoryY user
wsr hs login diretory X`wsrbF nder nixD the usernme is deterE U hisgi xewi IT
Q
mined from system uthoriztion leD nd need hve no prtiulr onnetion
with the login diretory nmeF
e nix login nme is limited to V hrters in lengthY opsEPH usernmes
neuptoQWhrters longF
pilenme length limits vry with the version of nixF yriginllyD lenme
omp onents @the prts etween slshes in the full nmeA ould not exeed IR
hrters in lengthY the limit on the full lenme inluding the pth sp eiE
tion ws unlerF ith RFQfhD ny lenme omp onentmyeuptoPST
hrters longD nd the entire lenme with omplete pth sp eition my
not exeed IHPR hrters in lengthF
pilenme omp onents my ontin ny hrters exept x v nd slshY
some versions of nix even p ermit nonEprintle hrters in lenmesF sn
generlD use of nonEprintle nd sp eil hrters is likely to interfere with
shell wildrd pro essing nd prsing syntxD so the reommended prtie is to
restrit lenme hrters to lettersD digitsD hyphenD nd undersoreF ilde nd
shrp re used y ss nd some editors to mrk kup opiesF st is p erfetly
eptle to hvemultiple p erio ds in nmeY for exmpleD y retes le
nmed yFtFhF roweverD to ese le p ortility to other op erting systemsD
you should limit yourself to one p erio d p er lenmeD nd void mixed se nd
sp eil hrtersF
wost nix lnguge ompilers require xed lenme suxesD like FD FfD
FoD Fp nd FsF ixeutle progrms nd shell sripts onventionlly hve no
lenme suxD mking them indistinguishle from one notherY the shells E
tully red the rst few hrters of the le to gure out whih of the twole
typ es it isF
pilenmes eginning with leding p erio d re treted s hidden lesF hell
wildrd expnsion do es not inlude them unless pttern eginning with
p erio d is givenF he ommnd ls E will show ll lesD inluding the hidden
onesF ypillyD suh les re used for providing progrm defult initiliztion
dtD suh s for loginD nd for shells nd editorsF
U hevie xmes
yne of the gret strengths of nix is tht the op erting system provides
uniform view of devies s lesD llowing stndrd sGy funtions to e used
to redD writeD nd ontrol oth without regrd to the sometimes sustntil
dierenes etween themF uernel devie drivers re provided for eh of the
devies on the systemY devie xxx pp ers to the user s le GdevGxxxF
hoing ls Gdev will list ll of the system deviesF GdevGtty is the stndrd
nme for the jo9s ontrolling terminlF GdevGnull is the null devie|reding
Q
yn nixD the norml text le GetGpsswd is mintined y the system mngerF hese
les list uthorized usersD their enrypted psswordsD group nd user num ersD login diretoryD
nd defult ommnd interpreterF V vyqsgev xewi IU
from it lwys returns immedite endEofEleD nd writing to it disrds the
outputF yn un worksttionD GdevGf is grphis frme uerF
GdevGmt is the stndrd mgneti tp e driveF everl p oints should e noted
out itX
p es re usully ville s rw4 devie s wellD nmed GdevGrmtF
wultiple drives re identied y triling digits GdevGmtHD GdevGmtID FFFD
GdevGmtISF
he drive numer is frequently keyed to defult tp e densityD s well
s to n utoErewindEfterEwrite fetureF gonsult mn setion mtio@RA for
detilsF his izrre ehvior is o sioned ylk of supp ort in the kernel
for tp e funtions whih ould p ermit seprte ontrol of tp e formts nd
p ositioningF
V vogil xmes
nix hs shell nd environment vriles whih re somewht nlogous to
opsEPH logil nmesF hey dier in two imp ortnt sp etsF pirstD their
vlues re ritrry text stringsD insted of eing restrited to lenme stringsF
eondD they re hndled y the shellsD nd not ythe nix kernelF
his mens tht they n eD nd ommonly reD used for ommuniting
ritrry strings to progrms t runtimeD whih n otin their vlues with the
getenv@A system llF
e opsEPH progrm n op en le nmed w xqXpyyFfeD nd the wonitor
will lo ok up the denition of the logil nme w xqXD whihmight e hin
of diretory nmesD nd prex eh one in turn to the lenme pyyFfe until it
ndsvlid le sp eitionF sn nixDevery progrm whihwnts this feture
must hndle it expliitlyD nd there is not even stndrd lirry funtion to do
the joF he shells utomtilly serh the diretory list in the er vrile
to nd le to e exeutedF
ith shD you set lo l shell vrile y set xewiavlueD nd view the
list of urrent vriles y setF ith shD the syntx is xewiavlueD nd the
set ommnd gin displys the urrent listF uh vriles n e used for
lter string sustitution in shell ommndsY wherever the string 6xewi is found
on the ommnd lineD its urrentvlue will e sustitutedF
omkevriles ville to progrms whih re run from the shellD they
must e put into the environmentF ith shD this is done y setenv xewi
vlueD nd with shD y export xewiavlueD or for the durtion of single
ommndD y xewiavlueY ommndnmeF ith oth shellsD printenv will
disply the urrentvrile listF W siD sGy ihsigsyxD exh feguqy xh tyf IV
W ip esD sGy ediretionD nd fkground tos
nix intro dued three enormously vlule notions whihhd previously not
existed in ommeril op erting systemsF hey re the su jet of this setionF
he rst of these is tht every jo hs sso ited with it three stndrd
sequentil sGy stremsX stdinD stdoutD nd stderrF hese re intended for
norml inputD norml outputD nd norml outputD nd ll three re utomtE
illy op ened nd ville for use when ny jo egins exeutionD independent
of the progrmming lnguge it is written inF
he shells hndle ssignmentof les to these three stremsY if you do not
sp eify otherwiseD they defult to the ontrolling terminlF o rediret themD
you just dd phrse nywhere on the ommnd lineX
trem ediretion
stdin `infilenme
stdout boutfilenme @overwritesA
stdout bboutfilenme @pp endsA
stderr shX 8filenme @overwritesA
stderr shX 88filenme @pp endsA
stderr shX Pbfilenme @overwritesA
stderr shX Pbbfilenme @pp endsA
st is frequently desirle to merge the output of stderr nd stdoutF ith
shD you use b8Y with shD you use Pb8IF he p eulir numers used in the
sh syntx re n ovious p o or designY they reet the ft tht the op erting
system gurntees tht these will e represented in system lls ytheinteger
le desriptors H @stdinAD I @stdoutAD nd P @stderrAF
he seond imp ortnt onept is piping|stdout from one proess n e
pip ed4 into stdin of nother y using the syntx progI | progPY the vertil
r is the pip e sym olF ip es re oneEwy sequentil dt strems whih for
eieny re not mterilized in disk lesF hen the rst pro ess lls up the
pip eD it is susp ended until the seond pro ess empties the pip eF ypil pip e
uer sizes re out Ru ytesD lthough this my dep end on the prtiulr imE
plementtionF fesides sving on disk storgeD pip es mke it p ossile for single
pro ess to ommunite to nother n mount of dt lrger thn the le sysE
tem ould ontinD nd they p ermit simple simultneous pro essingF rogrms
tht trnsform their single input to pro due single output strem re known
s lters D nd most nix to ols n e used tht wyF es n exmpleD simple
sp elling heker ould e implemented y progrm whihroke do ument
into strem of wordsD with its output pip ed into ditionry lo okup progrm
whih in turn eho ed exeptions to its outputF his ould strt pro duing exepE
tions so on fter strtupD insted of witing until p ossily very long do ument
ws roken into wordsF snstrution pip elining is one of the imp ortntwys to
improve hrdwre p erformneD nd it helps in softwre p erformne to oF IH iwsxev ysx xs IW
ometimes you wnt to trp the dt owing through pip eD p erhps to view
error messges on the terminlD or ollet them in leF ell tht is required is
progrm tht opies its stdin to its stdoutD nd simultneously mkes opy
inleF he tee progrm @nmed for Ejoint in pluming pip eA do es thisX
progI | tee filenme | progPF
he third imp ortnt onept is kground jo pro essingF hen the shell
strts nother pro ess running through the fork@A nd exe@A system llsD it
normlly wits for the pro ess to omplete efore reding more of its own inputF
roweverD if the ommnd line is terminted y n mp ersnd @8AD the shell do es
not witD nd the pro ess runs in the kgroundD usully t lower priorityD
while the shell immeditely resumes its input pro essingF his is n extremely
onvenient fetureD euse it llows the user to void hving the terminl tied
up while long running pro essD suh s text serhor ompiltionD is in
progressF
ou n even strt kground jo nd logoutD letting it run to ompletionD
providing you protet it from the hngup signl issued t logout whih normlly
termintes ll running pro esses elonging to tht shellF he nohup @no hngupA
ommnd tkes re of thisY typ e nohup someommnd nd then logoutF
he sh even llows you to susp end nd resume pro essesY the lkofthis
jo ontrol feture in e8 ystem s s s nd ystem nix is one of its more
serious ws in omprison to ferkeley nixF
IH erminl upp ort in nix
erminl ontrol hs een p erennil prolem in every omputer systemD eE
use few terminl vendors hve een le to gree on wht ommnd sequenes
should e used to do the sme thingD nd even when they lim to greeD in
prtieD devitions re often foundF wny omputer vendors therefore tend
to only oer supp ort for their own terminlsD whih nturlly ost more thn
omp eting pro dutsF
he ferkeley nix develop ers hd no suh hrdwre isD nd hose the
orret4 wy to hndle terminl supp ort|they dened terminl pility
dtseD termpD nd set of utility progrms to supp ort itF termp on
most nix systems hs entries for etween RHH nd SHH terminl typ esF
rogrmsD suh s sreen editors nd spredsheetsD tht use termp need
not ontin ny terminlEsp ei o deD nd require only tht the user mke
the terminl typ e known to themF his is done with the iw environment
vrileD whihisonventionlly set t login time y ommnds in the Flogin
leD p ossily fter prompting the user to supply typ eF por exmpleD s m
writing this prgrph on IHH omptile terminlD so s just need to typ e
setenv iw vtIHH if sm using shD or iwavtIHHY export iw if s m
using shF
fy defultD the dtse le is stored in GetGtermp whih is not writle II iyp exh vyqy PH
y ordinry usersF o llow testing terminl desriptionD you n put it in
lo l leD sy mytermpD then dene n environmentvrile to p ointtoitX
setenv iwge GuGlogindirGmytermpY n solute pthnme is required
hereF
ine the termp le is resonly lrge nd therefore time onsuming to
red for every ommnd tht hs to use termpD the onvention hs een
dopted tht the dtse entry for the terminl typ e n e given insted in
the iwge vrile itselfF his is long ugly string whih you would never
typ e y hndY the tset progrm will do it for youF he leding slsh in the
solute pth nme for privte termp leisusedtodismigute it from
n tul termp entryF
II iyp nd vogout
he endEofEle signl in nix is gtlEhD rther thn the gtlE you re used to
in yEPH nd other op erting systemsF o e reognized s suhD it must e
typ ed t the eginning of lineF he shells re just ordinry progrms without
ny sp eil privilegesD nd they to o ept n endEofEle signl s prt of the
norml ourse of eventsD nd when they get itD they terminteF his mens if
you typ e gtlEh to your login shellD you re logged outF sf you intended to do
thtD wellD it ertinly is quiktotyp e single ontrol hrter nd e logged
outF fut supp ose you thoughtyou were exeuting nested shellD or p erhps you
typ ed hed input to your own progrmD nd then ouldn9t remem er whether
you gve it the endEofEle signlF qetting unexp etedly logged o is nuisne
in tht you lose your ommnd history nd ny environment hngesD nd if
you logged in vi dilup or networkD you hve lso lost tht onnetion to oF
portuntelyDthesh oers wytoprevent this unhppy identY you just
set the shell vrile ignoreeof to n ritrry vlue @eFgF set ignoreeofAF
he shell will then resp ond with se 4logout4 to logoutF4 if you typ e in
gtlEhF
IP gommnd elises
he fourne shellD shD hs no ommnd lis filityY if you wnt to mke n
lis for some ommndD then you must rete ommnd sript le for tht
purp oseF
sh hs the lis ommndY you ould typ e lis tdir ls Elt to mke
ommnd tdir whihworks liketheopsEPH hsigy ommndF his is
muh fster thn reting seprte ommnd leD sine no le system ess
is requiredF sh users tend to hevily ustomize their environments through the
lis ommndF e re lis will disply the urrent list of ommnd lisesF IQ ixsyxwix g ywsesyx PI
IQ invironment gustomiztion
wny progrms in nix p ermit the user to provide defult strtup options in
hidden le @one eginning with leding p erio dAD usully in the login diretoryF
por exmpleD the login progrm reds the Flogin le when you login to
the systemD just like the opsEPH vyqsxFgwh le is pro essedF imilrlyD the
Flogout le is red nd exeuted when you logoutF egrettlyD nix hs
no onept of groupEwide or systemEwide login ommnd lesY this mkes it
neessry for eh user9s Flogin nd Fprofile les to referene ny group or
system les expliitlyF
sh reds strtup informtion from the le FshrYthismkes it nlogous
to the opsEPH gywwexhFgwh leF he orresp onding strtup le for sh is
FprofileF hese les re the pproprite ples to insert your p ersonlized
lises nd environmentvrilesF ho not put them in the Flogin leD euse
tht le is not red yspwned shellsF
ims reds strtup informtion from FemsF
he mil progrm hs Fmilr s its strtup leD nd will utomtilly
forwrd mil senttoyou to one or more ddresses listed in the le FforwrdF
ine ww on opsEPH is vstly sup erior to nix milDssetmy Fforwrd le to
use ll mymilon nix systems to e sentto opsEPHF
sn order to use rpD rloginDndrsh etween dierent nix systemsD you
must estlish Frhosts le in your diretory with the prop er ontentsF ee
mn rlogin for detilsF
IR qetting relp ynEline
ell ut the smllest nix systems tend to hve sustntil onEline do umenE
ttionD mostly in the form of mnul pgesF he originl nix do umenttion
onsulted lrgely of fell v ortories rep ortsD pp ers pulished in the fell ysE
tem ehnil tournlD nd short ommnd desriptions formtted in uniform
syntx for the printed mnulF
he printed mnul ws divided into V setionsD with setion I desriing the
min user ommndsD nd setion Q the op erting system interfeY the reminE
ing setions were devoted to more osure ommndsD nd system mngement
to olsF xewer releses of nix myhve more mnul setionsD nd sometimes
these re further su dividedY eFgF setion Qp desri es the portrnEllle opE
erting system interfeF nix do umenttion generlly refers to mnul pges
y nme nd setionD suhsls@IA nd hier@VAF
he les tht pro due the printed mnul re stored in diretories GusrGE
mnGmnI XXXGusrGmnGmnV s les suitle for input to the troff typ esetter
progrmD s wellsforthenroff typ ewriter text formtter progrmF he mn
ommnd serhes these diretories for the requested leD runs the required
formtter on itD nd displys the output textF por eienyD the output is lso IS yieyD riivD exh iE i PP
ptured nd stored in orresp onding diretory GusrGmnGtI XXX GusrGE
mnGtVY mn tully serhes these diretories rst in n ttempt to void
the formtting stepF
mn9s serh order is y inresing setionD nd it stops with the rst mth
it ndsF husD if you typ e mn ttyD it will disply the setion I entryF here is
lso n entry in setion R for this topiY to see itD you must typ e mn R ttyF
ometimes there is ii evy entry on mnul pge whih p oints you to
extended do umenttion in nother setionD ut often there is notF
o nd out wht mnul pges mighteofinterestD you n typ e propos
keywordDormn Ek keywordY this will disply the title lines of ll les in the
mnul diretories tht ontin the requested keywordF his informtion is
tully stored seprtely in the le GusrGmnGwhtis to void hving to serh
lrge num er of lesF
mn mn will disply mn9s own do umenttionF mn R intro shows the
intro dutory pge for setion RD whihontins useful summry of the setion
ontentsF
sn desp ertionD you n resort to serhing n entire mnul pge diretoryD
eFgF egrep 4foo|r4 GusrGmnGmnIGBF
IS yp ertorsD heelsD nd up erE sers
ivery op erting system hs some ritil funtions whih only ertin privileged
users re p ermitted to exeuteF yvious ones re shutting down the systemD nd
essing proteted lesF yn opsEPHD these re sso ited with yiey
nd riiv pilities normlly restrited to systems p ersonnelF sn dditionD
they re not in eet until expliitly requested y the ixefvi ommndD nd
they re turned o y the hsefvi ommndF elsoD more thn one user n
hvesuh privilegesD whih is imp ortnt when the st exeeds one p ersonF
nix reserves sp eil privileges to single login nmeD rootD nd tht user is
lled the superEuserF feuse op erting st myhvefrequent need for sup erE
user privilegesD the su ommnd is provided to llowspwning new ommnd
shell for root from running joY nyone who knows the pssword n issue
this ommndF hen the user logs out from this joD ontrol returns to the
originl shellF his orgniztion is unfortunteD euse it mkes it neessry
for severl p eople to know the sme psswordD nd it do es not provide for
distriution of privileges ross severl levels of p ersonnelF
IT smp ortnt nix ools
nix oers ewildering vriety of softwre to olsD nd it is hrd for novie to
wde through their mn pges nd determine whihrethemostvlule ones
to lern rstF es little exp erimentD s rn two ommnds on severl dierent IT swyex xs yyv PQ
nix systemsF he rst ounts the num er of ommnds in the three stndrd
diretories where system ommnds resideX
ystem gommnd pile gount
qould EQP ls Gin GusrGin GusrGu | wEw PVR
rWHHH r ls Gin GusrGin GusrGu | wEw PVI
sg RFPfh ls Gin GusrGin GusrGu | wEw PWS
un Q ls Gin GusrGin GusrGu | wEw QHP
e RFQfh ls Gin GusrGin GusrGu | wEw PVU
he seond ounts the numer of ommnds in the stndrd lo l dditions
diretoryY most systems will hve more thn one of theseF
ystem gommnd pile gount
qould EQP ls GusrGlo l | wEw IHU
rWHHH r ls GusrGlo l | wEw T
sg RFPfh ls GusrGlo l | wEw RP
un Q ls GusrGlo l | wEw TH
e RFQfh ls GusrGlo l | wEw ITP
sn summryD there re QHH to RSH dierent ommnds on typil nix systemD
not ounting the few dozen uiltEin shell ommndsF
rerethenislistoftheop wenty ommnds you should lern rstY those
ner the strt of the list hve higher priorityF
mn nd propos | get help
sh or sh | ommnd shell
more or less | pge through ommnd output @utomti on newer nix
systemsA
ls | diretory listing
d nd pwd |hngeGprint urrent diretory
t |typ e or opyle
p |opy le or diretory
mv |move @renmeA le or diretory
mkdir |mke diretory
eho |hek shell ommnd line expnsion
ems or vi | sreen editors
mke | uild softwre IU p ri iehsxq PR
grepD egrepD fgrepD ngrep | string serh
sed | utomted text editing
wk | text pro essing lnguge
r nd rnli | soureGo jet lirry utilities
diff | soure omprison
sript | log terminl session
rm |remove @deleteA le
rmdir |remove @deleteA diretory
ith this rep ertoire of sore of ommndsD you should e le to work quite
suessfullyF xote tht not single ompiler is listed hereY mke n hndle tht
for you for simpler sesF esoned nix users vlue mke highlyD nd sk it to
diret muh of their routine workF
IU purther eding
un providesnum er of feginner9s quides whih re useful for new usersX
qetting trted with nix
etting p our nix invironment
elf relp with rolems
indows nd indow fsed o ols
wil nd wessges
hoing wore with nix
sing the xetwork
qmesD hemosD nd yther ursuits
here re now gret mny intro dutory ooks out nix on the mrketD
nd you my wish to p eruse lo l o okstore shelvesD or ome nd exmine my
p ersonl lirryF rere re some whihs hve found prtiulrly vluleX
wurie tF fhD he hesign of the nix yperting ystemD rentieErll
@IWVTA dvned denitive tretise on the internls of nix
frin F uernighn nd o ikeD he nix rogrmming invironmentD
rentieErll @IWVRA must for every serious nix user IU p ri iehsxq PS
wrtFohkindD edvned nix rogrmmingD rentieErll @IWVSA
must for every systems progrmmerD or p erson writing o de whihmust
run in vrietyof nix implementtions
ure ghristinD he nix yperting ystemD iley @IWVQA n intermeE
dite tretmentof nix to ols nd internlsD without the detil in fh9s
o ok
e8D nix ystem edings nd epplitionsDolumes I nd PD rentieE
rll @IWVUA olletion of reprints from the fell ystem ehnil tournl
of key pp ers on the development nd evolution of nix sndex
e h
ehoD eFFD I devie nmesD IRD IU
esD P diretory lesD IR
lisesD PI diretory nmesD IU
proposDPP diretory pthD IQ
uthoriztion lesD IT disk quotsD IT
hfD P
f
i
fD P
environmentvrilesD IV fhD wFtFD PT
iypD PI
kground josD IW
iigD P fkusD tFD Q
fgvD P
fell v ortories rep ortsD PP
p
fell ystem ehnil tournlD PPD
PT
peldmnD FsFD I
ferkeley nixDPDPH
le ttriutesD IT
o oks out nixDPS
le genertionsD IQ
fourne shellD PD PI
le referene ountD IS
fourneD FFD P
le system rolloD IT
fh @ferkeley tndrd histriuE
le tree omprisonsD IQ
tionAD P
le tree orgniztionD IQ
lenme length restritionD IU
lenme sp elling onventionsD IQ
g
lenmesD IU
fo otnoteD IQD IU gD P
portrnD ID PP
se distintionD IQ
pujitsuD I ghgD I
ghristinD uFD PT
ommnd shellsD P
q
orresp ondene etween opsEPH nd
nix ommndsD S
gme of the nmeD P
gryPDI
genertionsD IQ
gtlEhD PI
urrent defult diretoryD IQ
ustomiztionD PP
r
helpD PP
PT sxhi PU
hierrhil le systemD IQ x
rywi environmentvrileD IR
nme of the gmeD P
roneywell qgyD I
nroffDPQ
r D P
y
s
onEline do umenttionD PP
sGy rediretionD IW
op ertorD PQ
sfw QTH seriesD I
sfw gD I
imp ortnt to olsD PR
inode tleD IS
prent diretoryD IS
er environmentvrileD Q
t
gvD P
hEIID I
tohnsonD FgFD I
ikeD FD PT
toyD FD P
pip esD IW
ysD P
punD P u
fD P
uernighnD fFFD ID PT
uleenixD P
uorn shellD Q
reding out nixDPS
iehwiDIQ v
renming diretoriesD IS
linked lesD IT
ithieD hFwFD I{P
logil nmesD IV
o hkindD wFtFD PT
logoutD PH{PI
ro otD PQ
w
wkefileDIQ
shell vrilesD IV
mnDPP
shellsD P
wple lger systemD P
short ommnds|whyD Q
wrgyD P
sup erEuserD PQ
mster le tleD IT
sup eromputerD I
memory hingD IT
X logil nmeD Q
wsgD P
system uthoriztion leD IU
wirosoftD P
ystem s s sD PD PH
wultisD P
ystem D PD PH sxhi PV
teletyp eD Q
iw environmentvrileD PH
termpDPH
iwge environmentvrileD PI
terminl supp ortD PH
hompsonD uFD I{P
yhyDIQ
op wenty ommndsD PR
tree strutureD IQ
troffDPQ
xsgyD P
usernme length restritionD IU
usernmesD IU
EQPD P
enixD P
enturegomD P
ersion TD P
ersion UD P
ersion VD P
wrtsD I
terlo oD P
ein ergerD FtFD I
wheelD PQ
enixD P