Passwd, shadow a group

linux_server.jpg V pred­chád­za­jú­cej čas­ti sme si uvied­li nie­čo o tom, ako Li­nux rie­ši po­uží­va­te­ľov – use­rov – svoj­ho sys­té­mu. Vie­me, aké sú to sú­bo­ry passwd, sha­dow a group. No pri­dá­va­nie po­uží­va­te­ľov je iba jed­na „po­vin­nosť“ správ­cu. Nie kaž­dý deň sa však do sys­té­mu pri­dá­va­jú no­ví po­uží­va­te­lia ale­bo od­chád­za­jú už exis­tu­jú­ci.
Ta­ký správ­ca má aj „den­né“ po­vin­nos­ti. A tým sa ten­to­raz bu­de­me ve­no­vať.

Tie­to den­né čin­nos­ti mô­že­me roz­de­liť do nie­koľ­kých sku­pín:

- po­moc / help
- in­for­má­cie o po­uží­va­te­ľoch
- prá­ca s ad­re­sár­mi a sú­bor­mi
- prá­ca s dis­kom
- prá­ca s pa­mä­ťou
- prá­ca s pro­ces­mi
- os­tat­ná prá­ca na kon­zo­le

Po­moc – help
„Keď všet­ko zly­há, ot­vo­rím ma­nuál,“ to je mo­ja teo­ré­ma č. 1. My sme sa už ma­nuá­lo­vý­mi strán­ka­mi za­obe­ra­li. No eš­te ne­vie­me, že sa strán­ky de­lia do de­sia­tich sek­cií:

Sku­pi­na Opis
1 Opis po­uží­va­teľ­ských prí­ka­zov
2 Opis prog­ra­mo­vých kniž­níc
3 Opis kniž­níc ja­zy­ka C
4 Opis kon­fi­gu­rač­ných sú­bo­rov
5 Opis syn­taxe kon­fi­gu­rač­ných sú­bo­rov
6 Opis hier
7 Opis prá­ce s textom
8 Opis prí­ka­zov pre sprá­vu sys­té­mu
9 Opis li­nuxové­ho jad­ra
10 No­vin­ky a os­tat­né ma­nuá­lo­vé strán­ky

Roz­de­le­nie bo­lo za­ve­de­né pre­to, aby sa v ma­nuá­lo­vých strán­kach da­lo lep­šie orien­to­vať. Mu­sí­me si uve­do­miť, že ur­či­tý prí­kaz či prog­ram ne­mu­sí mať vy­tvo­re­né všet­ky sek­cie ma­nuá­lo­vej strán­ky. Zá­le­ží na tvor­co­vi prí­ka­zu (prog­ra­mu) či vý­vo­jo­vom tí­me, či da­nú sek­ciu vy­tvo­ria, ale­bo nie. Je jas­né, že ta­ký prí­kaz shut­down is­to ne­bu­de mať vy­tvo­re­nú sek­ciu 6 (hry).

Ma­nuá­lo­vú strán­ku s ur­či­tou sek­ciou si mô­že­me nec­hať vy­pí­sať prí­ka­zom, nap­rík­lad:

 [root@as­te­rix root]# man 8 smbd
Mož­no si po­vie­te, pre­čo by sme ma­li po­uží­vať jed­not­li­vé sek­cie, keď si mô­že­me nec­hať vy­pí­sať ce­lé ma­nuá­lo­vé strán­ky jed­no­duc­hým prí­ka­zom:

 [root@as­te­rix root]# man smbd
Veď je to to is­té.

Nie je to cel­kom prav­da. V Li­nuxe exis­tu­jú prí­ka­zy a sú­bo­ry rov­na­ké­ho me­na. Ke­by sme ne­pou­ží­va­li sek­cie v ma­nuá­lo­vých strán­kach, moh­lo by sa stať, že sa o tom dru­hom prí­ka­ze či sú­bo­re nič ne­doz­vie­me.
Vhod­ným prík­la­dom je passwd.
Vie­me, že to mô­že byť me­no prí­ka­zu na vy­tvá­ra­nie he­siel jed­not­li­vým po­uží­va­te­ľom, ale zá­ro­veň je to aj me­no sú­bo­ru, kde sú ulo­že­né úda­je o jed­not­li­vých po­uží­va­te­ľoch. Ide te­da o dve od­liš­né ve­ci! Ak za­dá­me prí­kaz:

 [root@as­te­rix root]# man passwd
doz­vie­me sa nie­čo o prog­ra­me passwd – vý­pis č. 1.

PASSWD(1)                 User uti­li­ties                PASSWD(1)  NA­ME        passwd - up­da­te a user's aut­hen­ti­ca­tion to­kens(s)  SYN­OP­SIS        passwd [-k] [-l] [-u [-f]] [-d] [-S] [user­na­me]  DES­CRIP­TION        Passwd is used to up­da­te a user's aut­hen­ti­ca­tion to­ken(s).

       Passwd is con­fi­gu­red to work through  the  Li­nux-PAM API.
       Es­sen­tial­ly,  it  ini­tia­li­zes it­self as a "passwd" servic­e
       with Li­nux-PAM and uti­li­zes con­fi­gu­red password mo­du­les to
       aut­hen­ti­ca­te and then up­da­te a user's password.

Ak však za­dá­me prí­kaz:
 [root@as­te­rix root]# man 5 passwd
doz­vie­me sa po­dsta­tu sú­bo­ru passwd, kto­rý sa nac­hád­za v ad­re­sá­ri /etc – vý­pis č. 2.

PASSWD(5)                  Fi­le for­mats                 PASSWD(5)   NA­ME        passwd - password fi­le  DES­CRIP­TION        Passwd  is  a  text fi­le, that con­tains a list of the sys-        tem's ac­counts, gi­ving for each ac­count so­me use­ful in­for-
       ma­tion li­ke user ID, group ID, ho­me di­rec­to­ry, shell, etc.
       Of­ten, it al­so con­tains the en­cryp­ted passwords  for  each
       ac­count.   It  should  ha­ve  ge­ne­ral read per­mis­sion (ma­ny
       uti­li­ties, li­ke ls(1) use it  to  map  user  IDs  to  user
       na­mes), but wri­te ac­cess on­ly for the su­pe­ru­ser.

In­for­má­cie o po­uží­va­te­ľoch
Veľ­mi čas­to root, ale aj bež­ný po­uží­va­teľ po­tre­bu­je ve­dieť, kto ok­rem ne­ho eš­te v sys­té­me pra­cu­je. Root to naj­čas­tej­šie po­uži­je vte­dy, keď z ur­či­tých dô­vo­dov mu­sí sys­tém vy­pnúť ale­bo zre­se­to­vať. Vte­dy sluš­nosť ve­lí pre­ve­riť si, či niek­to nie je prá­ve pri­po­je­ný. Ak áno, po­žia­da­me ho, aby prá­cu ko­rek­tne ukon­čil.
Na zis­ťo­va­nie in­for­má­cií o po­uží­va­te­ľoch exis­tu­je v Li­nuxe nie­koľ­ko prí­ka­zov.

w
Ten­to prí­kaz nás in­for­mu­je o ak­ti­vi­te po­uží­va­te­ľov na sie­ti. Za­daj­me
 [root@as­te­rix root]# w
Prík­lad vý­sled­ku toh­to prí­ka­zu je na vý­pi­se č. 3.

 11:39am  up 24 min,  3 users,  load ave­ra­ge: 0.28, 0.23, 0.16 USER     TTY      FROM              LO­GIN@   ID­LE   JCPU   PCPU  WHAT root     tty1     -                11:22am  0.00s  0.23s  0.22s  /usr/bin/mc -P ora­vec   tty2     -                11:38am 17.00s  0.04s  0.04s  -bash 
orav­mir  tty6     -                11:37am  1:53   0.51s  0.01s  /bin/sh /usr/X1

V zá­hla­ví nás in­for­mu­je, ako dl­ho už sys­tém beží – up. Nas­le­du­je po­drob­ný vý­pis, kde je uve­de­né prih­la­so­va­cie me­no (USER), ter­mi­nál (TTY), z kto­ré­ho je pri­po­je­ný, čas prih­lá­se­nia do sys­té­mu (LO­GIN@), do­ba je­ho neak­ti­vi­ty (ID­LE), čas vy­uži­tý pro­ces­mi na da­nom ter­mi­ná­li (JCPU), pro­ces, kto­rý prá­ve beží (WHAT) a je­ho čas (PCPU).

who
Ten­to prí­kaz je o nie­čo jed­no­duc­hší vo svo­jom vý­pi­se. Keď za­dá­me
 [root@as­te­rix root]# who
na vý­pi­se č. 4 vi­dí­me zoz­nam prá­ve prih­lá­se­ných po­uží­va­te­ľov, ter­mi­nál, z kto­ré­ho sa prih­lá­si­li, dá­tum a čas prih­lá­se­nia.

root     tty1     Oct 28 11:22 ora­vec   tty2     Oct 28 11:38
orav­mir  tty6     Oct 28 11:37

fin­ger
Ten­to prí­kaz nás in­for­mu­je ok­rem prih­la­so­va­cie­ho me­na po­uží­va­te­ľa aj o je­ho úpl­nom me­ne, ak je v sys­té­me uve­de­né. My už vie­me, že úpl­né me­no je ulo­že­né v sú­bo­re /etc/passwd. Prík­lad po­uži­tia prí­ka­zu fin­ger je na vý­pi­se č. 5.

Lo­gin     Na­me              Tty      Id­le  Lo­gin Ti­me   Of­fi­ce     Of­fi­ce Pho­ne ora­vec    Mi­ros­lav Ora­vec   tty2       13  Oct 28 11:38 orav­mir   mior              tty6       14  Oct 28 11:37 root      root              tty1           Oct 28 11:22

Prá­ca so sú­bor­mi a ad­re­sár­mi
Pa­mä­tá­me sa na po­uč­ku no­me­ro uno: „V Li­nuxe sa na všet­ko hľa­dí ako na sú­bor“? Je to nao­zaj tak, a pre­to prá­ca so sú­bor­mi je v Li­nuxe naj­dô­le­ži­tej­šia. V se­riá­li Za­čí­na­me s Li­nuxom sme si čo-to o prá­ci so sú­bor­mi uvied­li. Ten­to­raz sa na to po­zrie­me ďa­lej.
ls
Prí­kaz ls je asi naj­čas­tej­šie po­uží­va­ný prí­kaz v prí­ka­zo­vom riad­ku. Je­ho úlo­hou je vy­pí­sa­nie ob­sa­hu prís­luš­né­ho ad­re­sá­ra. To, o kto­rý ad­re­sár ide, zá­vi­sí od pa­ra­met­rov prí­ka­zu ls.
Syn­tak­tic­ký zá­pis je ls [voľ­by][ad­re­sár]
Ak po­uži­je­me prí­kaz bez pa­ra­met­rov, vy­pí­še sa ob­sah ak­tuál­ne­ho ad­re­sá­ra v naj­jed­no­duc­hšom tva­re – vý­pis č. 6.

Des­ktop	ls­la.txt			sam­ba-2.2.7a-1.i386.rpm dfh.txt	ls.txt			sam­ba-3.0.0rc2-2_rh73.i386.rpm df.txt	man­passwd.txt		sam­ba-3.0.0rc2-2_rh9.i386.rpm
fin­ger.txt	Ope­nOf­fi­ce.org1.0.3
freemt.txt	ping1.txt
Len na pri­po­me­nu­tie – ak­tuál­ny ad­re­sár je ten, v kto­rom sa prá­ve nac­hád­za­me.
Ten­to struč­ný vý­pis mô­že­me predĺžiť voľ­bou –l (long).

Po­znám­ka:
Voľ­by sa za­čí­na­jú zna­mien­kom mí­nus -, za kto­rým bez med­ze­ry nas­le­du­je pís­me­no ozna­ču­jú­ce voľ­bu. Voľ­by mô­že­me zlu­čo­vať tak, že nás­led­nú voľ­bu uvád­za­me bez zna­mien­ka mí­nus, napr. ls –la.
To­to pra­vid­lo pla­tí pre všet­ky prí­ka­zy v Li­nuxe.


Ak chce­me zob­ra­ziť aj skry­té sú­bo­ry, pri­dá­me voľ­bu –a (vý­pis č. 7).

[root@as­te­rix orav­mir]# ls -la  cel­kom 52668 drwx------   22 orav­mir  orav­mir      4096 okt 28 11:56 . drwxr-xr-x    6 root     root         4096 okt 28 11:38 .. -rw-------    1 orav­mir  orav­mir         0 sep 11 18:19 .auto­run.lck -rw-------    1 orav­mir  orav­mir       147 sep 27 18:28 .bash_his­to­ry
-rw-r--r--    1 orav­mir  orav­mir        24 sep  1 10:14 .bash_lo­gout
-rw-r--r--    1 orav­mir  orav­mir       191 sep  1 10:14 .bash_pro­fi­le
-rw-r--r--    1 orav­mir  orav­mir       124 sep  1 10:14 .bashrc
drwx------    3 orav­mir  orav­mir      4096 sep 27 18:19 Des­ktop
-rw-rw----    1 orav­mir  orav­mir  11832412 dec 11  2002 sam­ba-2.2.7a-1.i386.rpm
-rw-rw----    1 orav­mir  orav­mir  21155910 sep  2 22:06 sam­ba-3.0.0rc2-2_rh73.i386.rpm
-rw-rw----    1 orav­mir  orav­mir  20456987 sep  2 22:07 sam­ba-3.0.0rc2-2_rh9.i386.rpm

Mu­sí­me si uve­do­miť, že skry­té sú­bo­ry sa v Li­nuxe ozna­ču­jú bod­kou pred me­nom sú­bo­ru. S tým sú­vi­sia aj at­ri­bú­ty sú­bo­rov. Na­lis­tuj­te si v se­riá­li Za­čí­na­me s Li­nuxom časť, kde si vy­svet­ľu­je­me roz­diel med­zi at­ri­bút­mi sú­bo­rov v pros­tre­dí MS Win­dows a v Li­nuxe! Po­kým nez­vlád­ne­me prís­tu­po­vé prá­va, ich cha­rak­te­ris­ti­ku a nas­ta­vo­va­nie, ne­do­siah­ne­me v li­nuxovom server­i nič po­zi­tív­ne!
Od­po­rú­čam (na­ria­ďu­jem!) naš­tu­do­vať tú­to te­ma­ti­ku v tom roz­sa­hu, ako je uve­de­ná v se­riá­li Za­čí­na­me s Li­nuxom! My sa o tie­to zá­kla­dy bu­de­me opie­rať v nás­led­nom vy­svet­ľo­va­ní a ne­bu­de­me mať čas sa k nim vra­cať!
Ok­rem zá­klad­ných prí­ka­zov so sú­bor­mi a ad­re­sár­mi, ako je pwd, cd, rm,mv,cp, mkdir a rmdir, kto­ré sú vy­svet­le­né v spo­me­nu­tom se­riá­li, dob­rý správ­ca – root po­uží­va eš­te tie­to:

touch
Ten­to prí­kaz má viac spô­so­bov po­uži­tia, my sa nau­čí­me ten, kto­rý v praxi vy­uži­je­me naj­viac, a to mož­nosť vy­tvá­rať no­vé práz­dne sú­bo­ry.
Ak za­dá­me prí­kaz
 [root@as­te­rix root]# touch vy­sle­dok.log
v ak­tuál­nom ad­re­sá­ri sa vy­tvo­rí sú­bor s náz­vom vy­sle­dok.log. Ak vám prá­ve ne­na­pa­dá, ako to vy­užiť, po­čkaj­te a uvi­dí­te!

cat
Ok­rem vy­tvá­ra­nia práz­dnych sú­bo­rov veľ­mi čas­to v praxi po­tre­bu­je­me vy­pí­sať ob­sah sú­bo­ru (na ob­ra­zov­ku). Na to je vhod­ný prí­kaz cat:
 [root@as­te­rix root]# cat su­bor.txt
vy­pí­še ob­sah sú­bo­ru na ob­ra­zov­ku.
Ak chce­me vy­pí­sať sú­bor v ob­rá­te­nom po­ra­dí, te­da od kon­ca sú­bo­ru až na za­čia­tok, po­uži­je­me prí­kaz tac.
(Ak nám na­pad­ne, že ná­zov prí­ka­zu je adek­vát­ny je­ho fun­kcii, sme na správ­nej ces­te stať sa li­nuxovým gu­ru.)
mo­re
Čas­to je však vy­pi­so­va­ný sú­bor dl­hší, ako je po­čet riad­kov ob­ra­zov­ky, a tak sa za­čia­tok sú­bo­ru sí­ce mih­ne na ob­ra­zov­ke, ale po­tom ute­čie mi­mo ob­ra­zu a my si tak mô­že­me pre­ze­rať iba je­ho po­sled­né riad­ky, kto­ré na ob­ra­zov­ke zos­ta­li stáť. Aby sme scrollo­va­niu (čí­taj skrol...) za­brá­ni­li, po­uži­je­me prí­kaz mo­re. Je­ho úlo­hou je zob­ra­ziť sú­bor po jed­not­li­vých ob­ra­zov­kách – ako­by strán­kach. Pre­čí­ta­nú časť po­su­nie­me ďa­lej stla­če­ním med­zer­ní­ka.

less
less nez­na­me­ná v tom­to prí­pa­de me­nej, ale je to zlep­še­ný va­riant prí­ka­zu mo­re. Prí­kaz
 [root@as­te­rix root]# less su­bor.txt 
spô­so­bí ta­kis­to vý­pis na ob­ra­zov­ku, ale má kom­for­tnej­šie ov­lá­da­nie. Mô­že­me nie­len po­sú­vať vý­pis dop­re­du, ale aj nas­päť. Sta­čí, ak po­uži­je­me klá­ve­sy Pa­geUp, Pa­ge­Down, kur­zo­ro­vé šíp­ky, En­ter a, sa­moz­rej­me, med­zer­ník.

fi­le
Prí­kaz fi­le po­uží­va­me na zis­te­nie ty­pu sú­bo­ru a pri­tom ten sú­bor ne­mu­sí­me ot­vá­rať. Syn­tak­tic­ký zá­pis je
fi­le me­no_sú­bo­ru. 
Prí­ka­zom
 [root@as­te­rix root]# fi­le *
dos­ta­ne­me opis všet­kých sú­bo­rov a po­dad­re­sá­rov v da­nom ad­re­sá­ri. Pri­po­mí­nam, že ad­re­sár je tiež ur­či­tá for­ma sú­bo­ru, a tak väč­ši­na prí­ka­zov pre sú­bo­ry pla­tí aj pre ad­re­sá­re (ok­rem vý­ni­miek ako mkdir, rmdir a pod.).

du
Chce­me ve­dieť veľ­kosť niek­to­ré­ho sú­bo­ru ale­bo ce­lé­ho ad­re­sá­ra na dis­ku? Sta­čí, ak po­uži­je­me du.
Syn­tak­tic­ký zá­pis je du [voľ­by][sú­bor ale­bo ad­re­sár].
Ak chce­me zis­tiť veľ­kosť všet­kých sú­bo­rov, pri­dá­me pa­ra­me­ter –a (all).
Ak sa nám ne­pá­či vý­pis veľ­kos­ti v blo­koch, pri­dá­me voľ­bu -b pre vý­pis v baj­toch ale­bo -k pre vý­pis v ki­lo­baj­toch.

Vy­hľa­dá­va­nie sú­bo­rov
Na vy­hľa­dá­va­nie sú­bo­rov sa v Li­nuxe (a aj v Unixe) po­uží­va veľ­mi moc­ný prí­kaz find. Má mno­ho rôz­nych vo­lieb a kri­té­rií, po­dľa kto­rých vy­hľa­dá­va.
Pred­stav­me si, že chce­me vy­hľa­dať sú­bor po­dľa me­na za­lo­ha.tgz, ale ne­vie­me, kde sa mô­že nac­hád­zať, tak­že rad­šej za­čne­me hneď od ko­re­ňa. Vý­sle­dok chce­me vy­pí­sať na ob­ra­zov­ku. Za­dá­me te­da prí­kaz
 [root@as­te­rix root]#  find / -na­me za­lo­ha.tgz –print
Keď find náj­de viac sú­bo­rov s tým is­tým me­nom, vy­pí­še ich všet­ky. Vý­pis spô­so­bí prá­ve pa­ra­me­ter –print.
Ak chce­me vy­hľa­dá­vať po­dľa iné­ho kri­té­ria, napr. veľ­kos­ti, po­uži­je­me na­mies­to pa­ra­met­ra –na­me iný pa­ra­me­ter –si­ze. Ako sme si po­ve­da­li, find je moc­ný nás­troj, a ak chce­me po­uží­vať aj iné voľ­by, preš­tu­duj­me si ma­nuá­lo­vé strán­ky prí­ka­zu find. (No ako? Pred­sa man find, nie...?)

lo­ca­te
Dru­hou mož­nos­ťou, ako náj­sť sú­bor, je po­uži­tie prí­ka­zu lo­ca­te. Ten však pra­cu­je na inom prin­cí­pe ako find. lo­ca­te ne­vyh­ľa­dá­va sú­bor sku­toč­ne na dis­ku, ale vo svo­jej da­ta­bá­ze, kde má za­pí­sa­né umies­tne­nie všet­kých sú­bo­rov, sta­čí sa len po­zrieť. Tým do­sa­hu­je rých­lej­šie vý­sled­ky ako find. Ne­vý­ho­dou je, že tá da­ta­bá­za ne­mu­sí byť vždy ak­tuál­na. Pre­to ak chce­me vy­uží­vať lo­ca­te, mu­sí­me za­bez­pe­čiť ak­tua­li­zá­ciu da­ta­bá­zy prí­ka­zom lo­ca­te –U. Na za­uto­ma­ti­zo­va­nie to mô­že­me ro­biť den­ne ale­bo týž­den­ne s po­uži­tím prog­ra­mu cron.

grep
Prí­kaz grep (Glo­bal Re­gu­lar Expres­sion Prin­ter) vy­hľa­dá­va za­da­ný re­ťa­zec zna­kov v prís­luš­nom texto­vom sú­bo­re. Ak ten­to re­ťa­zec náj­de, vy­pí­še na ob­ra­zov­ku ria­dok, kde sa re­ťa­zec v sú­bo­re nac­hád­za.
Syn­tak­tic­ký zá­pis je
grep [voľ­by] re­ťa­zec me­no_sú­bo­ru
Naj­čas­tej­šie voľ­by sú –i a –l.
-i po­uži­je­me v prí­pa­de, ak nám ne­zá­le­ží na veľ­kos­ti pís­men v hľa­da­nom re­ťaz­ci (vie­me, že Li­nux je cit­li­vý na ma­lé a veľ­ké pís­me­ná).
-l po­uži­je­me vte­dy, ak na­mies­to riad­ka s vý­sky­tom re­ťaz­ca po­ža­du­je­me me­no sú­bo­ru, kde sa re­ťa­zec nac­hád­za, napr. grep –l SMB *.log vy­pí­še všet­ky sú­bo­ry s prí­po­nou log, v kto­rých sa vy­sky­tu­je re­ťa­zec SMB.
Naj­čas­tej­šie však grep bu­de­me po­uží­vať v spo­je­ní s rú­rou (nie mik­rovl­nnou ani tou na pe­če­nie).

Pres­me­ro­va­nie vstu­pu a vý­stu­pu
So sú­bor­mi veľ­mi tes­ne sú­vi­sí pres­me­ro­va­nie vstu­pu a vý­stu­pu. Nie­ke­dy bu­de­me po­tre­bo­vať pres­me­ro­vať vý­stup niek­to­ré­ho prog­ra­mu ale­bo prí­ka­zu na­mies­to na ob­ra­zov­ku do ur­či­té­ho sú­bo­ru. Na to vy­uži­je­me ope­rá­tor pres­me­ro­va­nia vý­stu­pu. Je to znak >. Uká­že­me si úpl­ne kon­krét­ny prík­lad. Mys­lí­te si, že som spo­me­nu­tý vý­pis č. 7 od­pi­so­val z ob­ra­zov­ky ruč­ne? Ale nie, sta­či­lo len pres­me­ro­vať vý­stup prí­ka­zu ls do sú­bo­ru napr. s me­nom vy­pis_ls.txt tak­to:
 [root@as­te­rix root]#  ls –la>vy­pis_ls.txt
Vý­stup prí­ka­zu, čo je v tom­to prí­pa­de ob­sah ak­tuál­ne­ho ad­re­sá­ra, sa ne­zob­ra­zil na ob­ra­zov­ke, ale sa ulo­žil do sú­bo­ru vy­pis_ls.txt na disk. Po­tom som len jed­no­duc­ho vzal sú­bor vy­pis_ls.txt a na­ko­pí­ro­val do toh­to textu.
V prí­pa­de, že sú­bor vy­pis_ls.txt pred­tým neexis­to­val, bu­de auto­ma­tic­ky vy­tvo­re­ný. V prí­pa­de, že exis­to­val, bu­de pô­vod­ný ob­sah zma­za­ný a nah­ra­de­ný no­vým ob­sa­hom.

Nie­ke­dy sa stá­va, že sa ne­ja­ký prí­kaz spúš­ťa opa­ko­va­ne a je­ho vý­sle­dok si chce­me uk­la­dať do sú­bo­ru tak, aby sa pô­vod­ný ob­sah ne­vy­ma­zal, ale aby sa no­vý ob­sah pri­po­jil na ko­niec pô­vod­né­ho ob­sa­hu. Vte­dy sta­čí po­užiť ope­rá­tor dopl­ňo­va­nia >>.
Opa­ko­va­né spúš­ťa­nie prí­ka­zu
 [root@as­te­rix root]#  ls –la>>vý­pis_ls.txt
za­bez­pe­čí ulo­že­nie všet­kých vý­sled­kov da­né­ho prí­ka­zu do jed­né­ho sú­bo­ru. Na tom­to prin­cí­pe sú v Li­nuxe za­lo­že­né lo­go­va­cie sú­bo­ry.
Pred­stav­me si, že čas­to vy­ko­ná­va­me ur­či­tú čin­nosť, kde sme nú­te­ní za­dá­vať ur­či­té hod­no­ty z klá­ves­ni­ce. Aby sme ich ne­mu­se­li stá­le ťu­kať, sta­čí, ak tie­to hod­no­ty ulo­ží­me do ur­či­té­ho sú­bo­ru a ten po­uži­je­me ako vstup pre da­ný prog­ram.
Pres­me­ro­va­nie vstu­pu prog­ra­mu za­bez­pe­čí­me ope­rá­to­rom <.
Ak spus­tí­me prí­kaz na vy­tvo­re­nie FTP spo­je­nia tak­to:
bu­de si ten­to prí­kaz od­obe­rať prís­luš­né hod­no­ty zo sú­bo­ru po­ky­ny.txt tak, ako ke­by sme mu ich za­dá­va­li ruč­ne z klá­ves­ni­ce.

Rú­ra – pi­pe
Rú­ra (angl. pi­pe) slú­ži na kom­bi­ná­ciu prí­ka­zov a ich roz­ši­ro­va­nie. Tak­to mô­že­me zre­ťa­ziť nie­koľ­ko prí­ka­zov za se­bou, pri­čom kaž­dý z nich bu­de po­va­žo­vať svoj vstup na­po­je­ný na vý­stup to­ho pred­chád­za­jú­ce­ho. Ope­rá­to­rom rú­ry je |.
Prí­kaz
 [root@as­te­rix root]#  ls –la|grep ho­la­ba­ba.gif
spô­so­bí vý­pis ob­sa­hu prís­luš­né­ho ad­re­sá­ra, ale ten­to vý­pis ne­bu­de na ob­ra­zov­ke ani pres­me­ro­va­ný do sú­bo­ru na disk, ale pria­mo pre­te­čie rú­rou ako vstup prí­ka­zu grep. Ten v tom­to vý­pi­se vy­hľa­dá re­ťa­zec s me­nom ho­la­ba­ba.gif, a ak ho náj­de, zob­ra­zí ria­dok, kde sa ten vy­sky­tu­je. Vi­dí­me, že je to me­no sú­bo­ru, je ta­ký a ta­ký veľ­ký a je­ho vlas­tní­kom je ten a ten.
(Vy­uži­tie rú­ry spo­lu s gre­pom si uká­že­me eš­te efek­tív­nej­šie, ako je hľa­da­nie na­hých žen­ských...)

Prá­ca s dis­kom
Mo­ja teo­ré­ma č. 2 ho­vo­rí: Čím väč­ší disk, tým rých­lej­šie sa za­pl­ní. Vie­me, že dis­ky nie sú ne­ko­neč­né, a pre­to tre­ba z ča­su na čas sle­do­vať ich napl­ne­nosť. Na to slú­ži prí­kaz df (disk full). Všeo­bec­ný zá­pis je df [voľ­by].
Za­daj­me te­raz prí­kaz
 [root@as­te­rix root]# df
Po­zri­me sa na vý­pis č. 8.

Fi­le­sys­tem           1k-blocks      Used Avai­lab­le Use% Moun­ted on /dev/hda3             20018668   3924792  15076964  21% /
none                    127920         0    127920   0% /dev/shm

Troc­hu ne­jas­né, nie?
Pre­to pri­dá­me voľ­bu –h :
 [root@as­te­rix root]# df -h
a po­zri­me sa na vý­pis č. 9.
Fi­le­sys­tem            Si­ze  Used Avail Use% Moun­ted on /dev/hda3              19G  3.8G   14G  21% /
none                  125M     0  124M   0% /dev/shm

To­mu­to už ro­zu­mie­me lep­šie, pre­to­že veľ­kosť udá­va­nú v blo­koch pre­vie­dol na zro­zu­mi­teľ­nej­šiu hod­no­tu.

free
Už vie­me, ako má­me ob­sa­de­ný hard disk, ale ako je to s ope­rač­nou pa­mä­ťou? Na to slú­ži prí­kaz free.
Má nie­koľ­ko pek­ných vo­lieb, napr:
-b pre vý­pis v baj­toch
-k pre vý­pis v ki­lo­baj­toch
-m pre vý­pis v me­ga­baj­toch
-t na­pí­še aj cel­ko­vý sú­čet.

Tak za­daj­me:
 [root@as­te­rix root]# free -mt
a zis­tí­me sku­toč­ný stav – vý­pis č. 10.
             to­tal       used       free     sha­red    buf­fers     cac­hed Mem:           249        240          9          0         11         76 -/+ buf­fers/cac­he:        152         97 Swap:          298          0        298 To­tal:         547        240        307


Tak to by bo­lo za­tiaľ všet­ko, na­bu­dú­ce sa bu­de­me ve­no­vať pro­ce­som. Čo vra­ví­te? Že je to ne­zá­živ­né a nud­né? No, mož­no áno, ale pat­rí to k sprá­ve server­a tak ako vo­lant k autu – bez to­ho sa ne­poh­ne­me!

Ďal­šie čas­ti >>

Zdroj: Infoware



Ohodnoťte článok:
   
 

24 hodín

týždeň

mesiac

Najnovšie články

Li­nux prak­tic­ky ako server úvod
Linux ako server je pomerne zložitá technológia. Jej výhodou je určitá modularita, keď sa nemusí nastaviť celý server naraz, ale postupne. čítať »
 
Syn­chro­ni­zá­cia ča­su v Li­nuxe
V predchádzajúcich dvoch častiach sme si ukázali, že Linux a všeobecne open source softvér sa nenachádza iba v serveroch a počítačových sieťach, ale aj v iných zariadeniach bežnej domácej potreby a v oblasti hobby. čítať »
 
Za­ria­de­nia za­lo­že­né na Li­nuxe
V predchádzajúcej časti sme si spomenuli definície nie - ktorých pojmov z oblasti nášho záujmu, teda Linuxu. Vysvetlili sme si, čo je to Open Source, Public Domain, proprietárny softvér a GNU GPL. Tentoraz ukážeme, ako sa tieto pojmy využívajú v praxi. čítať »
 
Po­jmy z ob­las­ti
Tentoraz na chvíľu trochu odbočíme od bezpečnosti Linuxu a jeho siete. V tejto neštandardnej časti seriálu sa mu budeme venovať len okrajovo. čítať »
 
Bez­peč­nosť bez­drô­to­vých sie­tí II.
V predchádzajúcej časti sme sa začali zaoberať bezpečnosťou bezdrôtových sietí. Poukázali sme na rôzne faktory zneužitia siete, podstatu rizika a vysvetlili sme základné prvky bezpečnosti. čítať »
 
Bez­peč­nosť bez­drô­to­vých sie­tí I.
V predchádzajúcich častiach sme sa venovali bezpečnosti linuxového servera. Riešili sme firewall, bezpečnosť prístupu na internet, zaoberali sme sa demilitarizovanou zónou a podobne. čítať »
 
Údr­žba lo­gov – kon­fi­gu­rá­cia log­ro­ta­te
V predchádzajúcej časti sme sa venovali rotácii logov. Vysvetlili sme princíp ukladania logov, spôsob, ako sa rotujú, a uviedli sme niečo o tom, čo a ako treba nastaviť čítať »
 
Údr­žba lo­gov – ro­tá­cia
V predošlej časti sme sa zaoberali spôsobom logovania informácií na iný alebo vzdialený počítač a ukázali sme, ako riešiť problém s logovaním uzavretých procesov pomocou chroot. čítať »
 
 
 
  Zdieľaj cez Facebook Zdieľaj cez Google+ Zdieľaj cez Twitter Zdieľaj cez LinkedIn Správy z RSS Správy na smartfóne Správy cez newsletter