T. I. N. T. F. M.

(This IsN't The F*cking Manual :)))

UNIX
a la Hamster

Negyedik fejezet, melyben Micimackó megtanulja használni a chmod parancsot, utána pedig elmegy Malackához ebédelni

Jé, van itt valaki? Vagy csak véletlenül klickeltél ide? Az más. De ha mégsem...

Az előbb emlegettem a fájlok elérési jogait, de nem mondtam meg, hogy hogyan kell ezeket átírni, hogyan lehet ezeket buherálgatni... Szóval hogy is volt, mik voltak? Volt az olvasási jog ...ez elég világos, nem? (feladat: lépjünk be egy olyan user könyvtárába, akinek nincs letiltva, és olvasgassuk a fájljait, hátha találunk érdekes dolgokat, mondjuk egy .bash-history-t, ami a user által bash alól legutóbb indított parancsok és programok listája...) Aztán volt az írási jog . Ez azt jelenti, hogy átírhatod a fájlt, akár le is törölheted, ha könyvtárra vonatkozik, akkor abban a könyvtárban tudsz file-okat létrehozni. Végül van a fájl végrehajtási jog. Ha könyvtárról van szó, akkor abba a könyvtárba be tudsz lépdesni, nem megy az agyadra a rendszer 'permission denied' errorral.

Tudjuk már, milyen jogok vannak, de hogyan lehet ezekkel gazdálkodni?
Erre szolgál a náccerű

  chmod
parancs. Persze nem csak így magában, hanem kapcsolókkal, stb. kiegészítve, ahogy azt kell... Először például azt szeretné tudni, hogy kikre vonatkozzon az elérési jogok változtatása. Lehetőségek: Aztán kíváncsi rá, hogy milyen joggal mit csináljon. Egy jog adása a + jelecskével történik, a - segítségével elvehetünk (jájj, mecsoda fogalmazás), ami meglepően logikus, nem? A jogok meg asszem elég egyértelműek: r(ead), w(rite), (e)x(ecute)... Ja, és aztán még grátiszba kíváncsi arra is, hogy melyik fájlra/dirre gondoljuk a változtatást... (a kis kíváncsi...) Tehát:
   chmod u-r this.file
végrehajtásával elértük, hogy ne tudjuk a this.file-t olvasni... Vagy
   chmod a+w .rhosts
az .rhosts című fájt mindenki szabadon buherálhatja... De bonyolíthatunk is, a Unix lépest tud tartani velünk:
   chmod go-rwx gumi.bot
Így rajtunk kívül senki semmit nem tud csinálni a gumi.bot című fájllal. Szóval ez egy jó játék, de ez nem minden. A Unix ugyanis a kockafejeknek nyújt egy lehetőséget, hogy kódolják a jogok adását... Számokkal... (már rosszul kezdődik, mi?) Ennek a logikája:

olvasási jog: 4 kredit
írási jog : 2 kredit
futtatás : 1 kredit (ha a kreditet valaki komolyanveszi, azt megütöm!)

Most már csak egy közepes méretű szuperszámítógép (mondjuk egy Cray T3-as) segítségére van szükségünk, hogy kiszámolhassuk, melyik számmal milyen változtatást eszközölhetünk. Persze három szám kell, mivelhogy vagyunk mi (user), a groupunk (majdnem groupie-t írtam...:) és mindenki más... Példa: (lassan gépelem, hogy felfogjad:-)

   chmod 666 pokoli.op
Ez írási/olvasási jogot ad mindekinek az adott fájlon.

Közelítsük meg másik irányból a problémát: Ha létrehozunk egy fájlt, alapesetben mi vagyunk annak tulajdonosai. Mi van, ha ez az állapot nem tetszik valakinek? Nos, az illető felállhat, és visszaülhet kedvenc nemunix-oprendszere elé, vagy változtathat a

   chown user.csoport fájl
parancs segítségével a helyzeten, persze jól teszi, ha nem így gépeli be, hanem behelyettesítheti a behelyettesítenivalókat, pl.:
   chown hamster.users /sbin
Amit még korábban megígértem...

Ugye DOS alatt is voltak kis hülyeségeink, hogy egy fájlt ne kelljen megkeresnünk mindig, ilyenkor buta fejjel csinál az ember egy batchfile-t, aminek rövidebb a neve... Na van valami hasonló a UNIX alatt is, linkelésnek hívják, könnyebbé teheti az életünket. Arról lehet felismerni az ezzel kezelt fileokat, hogy az ls -al -re valahogy így néznek ki attríbutumilag:

   lrwxrxwrxw  kaki 34 May 34 12:00 irc -> ../IRC/binaries/bin/ircII@
Szóval ez a file itten úgy csinál, mintha itt lenne, közben a '->' után leírt helyen tartózkodik. Alapvetően kétféle link van, van a link, és van a nagyon link...ja... ..bocsi...szóval van a szimbolikus , és van a hard link . Ez itten egy szimbolikus (vagy soft-) link, a hard azért más, mert azon az eredeti fájl jogai, elérhetôségei műxenek, és neonkék házikabátot hord közben. De nem. Szóval a hardlinknél esetleg észre sem veszed, hogy linkről van szó, úgy néz ki, mintha egy sima másik file lenne...

Linkeket az

   ln
paranccsal hozunk létre, az első paraméter az eredeti file neve/pathja, a második pedig az új név. Ha használunk egy -s kapcsolót, akkor soft linket csináltunk, és örülhetünk jól...:)
   ln -s eredeti.file dejo_ez_csak_egy_link_nem_file.hurraaa
Ha idáig eljutottunk, akkor már ehetjük kanállal a rántott húst, mert nagyon király dudék vagyunk... Pihenjünk hát!

Zene: TV-torna

Most pedig nézzük meg azt, hogy mennyi helyünk van a rendszerben, mennyit használhatunk, egyátalán milyen a rendszer, amiben tartózkodunk.

De csak a reklám után. ("ne menjenek el, mert nem kapnak vacsorát, stb..")

Vissza Előre