You are on page 1of 14

Informatika 15.

A Linux opercis rendszer


Nagy, Gbor

Created by XMLmind XSL-FO Converter.

Informatika 15.: A Linux opercis rendszer


Nagy, Gbor
Lektor: Cseri, Tams
Ez a modul a TMOP - 4.1.2-08/1/A-2009-0027 Tananyagfejlesztssel a GEO-rt projekt keretben kszlt.
A projektet az Eurpai Uni s a Magyar llam 44 706 488 Ft sszegben tmogatta.
v 1.0
Publication date 2010
Szerzi jog 2010 Nyugat-magyarorszgi Egyetem Geoinformatikai Kar
Kivonat
A Linux opercis rendszer rvid bemutatsa
Jelen szellemi termket a szerzi jogrl szl 1999. vi LXXVI. trvny vdi. Egsznek vagy rszeinek msolsa, felhasznls kizrlag a
szerz rsos engedlyvel lehetsges.

Created by XMLmind XSL-FO Converter.

Tartalom
15. A Linux opercis rendszer ..........................................................................................................
1. 15.1 Bevezets ......................................................................................................................
2. 15.2 Trtneti ttekints ........................................................................................................
3. 15.3 A Linux legfontosabb jellemzi ....................................................................................
3.1. 15.3.1 A kernel .........................................................................................................
3.2. 15.3.2 Programok futtatsa .......................................................................................
3.3. 15.3.3 A fjlrendszer felptse ................................................................................
3.4. 15.3.4 Jogosultsgok a fjlrendszerben ....................................................................
3.5. 15.3.5 Felhasznlk kezelse ....................................................................................
4. 15.4 Hasznlat parancssorbl ................................................................................................
4.1. 15.4.1 A karakteres fellet alapelve s fajti ............................................................
4.2. 15.4.2 A shell program .............................................................................................
4.3. 15.4.3 Fontosabb parancsok .....................................................................................
5. 15.5 Grafikus fellet ..............................................................................................................
5.1. 15.5.1 Az X Window System ...................................................................................
5.2. 15.5.2 Ablakkezel rendszerek .................................................................................
6. 15.6 Disztribcik .................................................................................................................
6.1. 15.6.1 Csomagkezelk ..............................................................................................
7. 15.7 sszefoglals ................................................................................................................

iii
Created by XMLmind XSL-FO Converter.

1
1
1
1
1
2
3
4
5
5
5
6
7
8
8
8
9
9
9

15. fejezet - A Linux opercis


rendszer
1. 15.1 Bevezets
Ez a modul megprbl egy rvid, ttekint kpet adni a Linux opercis rendszerrl, amelynek egy jelents
rsze szmos ms UNIX-alap, vagy UNIX-szer opercis rendszer esetben is felhasznlhat tudst jelenthet.
A rvid sszefoglals rinti a kernel feladatait, a fjlrendszer felptst, a felhasznlk kezelst. Foglalkozik a
karakteres (parancssor) s a grafikus fellettel, azok mkdsi elvvel, bemutatja a legfontosabb parancssorban
hasznlhat programokat. A modul trgyalja a disztribcik s a csomagkezels tmakrt is.

2. 15.2 Trtneti ttekints


1969-ben ksztette Ken Thompson Unics nvre hallgat egyszer opercis rendszert az akkoriban elterjedt
PDP-7 tpus szmtgpre. Szerette volna a rendszert az jabb, PDP-11-es gpeken is kiprblni, de ahhoz az
assemblyben ksztett programot teljesen jra kellett volna rnia.
Hogy ne kelljen minden egyes gptpusra a teljes programot jra megrni az adott szmtgp assemblyjben, a
fejlesztsbe bekapcsold Dennis M. Ritchie s Brian Kernighan kidolgoztk a C programozsi nyelvet. A C
nyelv alkalmas megfelel teljestmny, de emellett hordozhat (tbbfle architektrra is lefordthat)
programok ksztsre, gy idelis eszkz tbbfle platformon is fut opercis rendszerek rsra.
Az ekkor mr UNIX nven fut opercis rendszer hamar npszer lett. Npszersgt tbbek kztt annak
ksznhette, hogy br nem volt nylt forrskd, de forrshoz sokan hozzfrhettek a potencilis
tovbbfejlesztk kzl. Idvel sokfle UNIX-szer opercis rendszer szletett, ezek egy rsze (kztk a Linux
is) nem hasznl UNIX kdot, csak a mkdsi elveiben s az azokhoz kapcsold szabvnyokban (a klnfle
POSIX szabvnyok vagy a fjlrendszerre vonatkoz Filesystem Hierarchy Standard) kveti.
Egy finn egyetemista, Linus Benedict Torvalds, 1991-ben tette kzz egy ltala rt egyszer rendszermag
(kernel) kdjt, amelyet elssorban a 80386 processzor vdett md feladat-vlt lehetsgeinek kiprblsa
vgett ksztett s mkdsi elveiben a UNIX rendszerek mintjt kvette. Br eleinte mg a szerz sem fztt
hozz komolyabb remnyeket, a fejleszts komoly projektt ntte ki magt elssorban kt tnyeznek
ksznheten. Az egyik, hogy a program a GPL nylt forrskd licensznek ksznheten brki szmra a
forrskdjval egytt szabadon hozzfrhet s akr tovbbfejleszthet azzal a felttellel, hogy a ltrehozott
programra is hasonl szablyoknak kell vonatkozni. A msik tnyez pedig a Linus s a fejlesztsbe
bekapcsoldk szmra akkor mr elrhet Internet, amely lehetv tette, hogy egymstl tvol l
programozk tudjanak hatkonyan egytt dolgozni egy munkn, kezdetben az e-mailben bekldtt mdostsaik
(patch), ksbb pedig klnfle vltozatkezel rendszerek (elszr bitkeeper, majd a sajt fejleszts git)
segtsgvel.
A Linus utn Linuxnak nevezett opercis rendszert a fejleszts sorn szmos platformra portoltk, rengetek
eszkzhz kszlt tmogats, s szolgltatsiban is rendkvli mrtkben bvlt. Napjainkban egy jl
hasznlhat, sokoldal alternatvt jelent szervereken, begyazott rendszerekben, az asztali gpekben s a
klnfle mobil eszkzkn egyarnt.

3. 15.3 A Linux legfontosabb jellemzi


3.1. 15.3.1 A kernel
A Linus Torvalds s trsai ltal fejlesztett program nem egy teljes opercis rendszer, hanem annak csupn a
magja, a kernel. A kernel biztostja az opercis rendszer alapvet feladatait felgyeli a programok futst,
gazdlkodik a processzorral vagy processzorokkal (temezs) s a memrival, elrhetv teszi a klnfle a
szmtgpben tallhat eszkzket s kezeli a szmtgp fjlrendszert. Nem tartalmazza viszont a kernel a
felhasznli felletet szolgltat programokat (karakteres vagy grafikus krnyezet) s a szmtgp
hasznlathoz szksges segdprogramokat sem.
1
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

Nem rsze a kernelnek a betltst vgz program sem. Korbban fleg a LILO (Linux Loader), mostanban
inkbb a GRUB (Grand Unified Boot) rendszerbetlt programokat szoktk hasznlni. Ezek kpesek a Linux
rendszermag betltsre s elindtsra vagy t tudjk adni a vezrlst egy msik rendszerbetltnek, egy eltr
opercis rendszer (pl. Windows) betltse rdekben. A szmtgp indtsakor tbbfle ilyen lehetsg kzl
is vlaszthatunk, ezek kzl egy alaprtelmezett egy megadott id utn automatikusan is elindulhat. A
rendszerbetltk gy lehetv teszik tbbfle opercis rendszer teleptst egy szmtgpre.

Rendszerbetlt menje karakteres felleten


A Linux kernel monolitikus, de modulris felpts. Monolitikus, mert nem egy teljesen lecsupasztott
mikrokernelt hasznl, amihez a kln folyamatknt csatlakoznak az opercis rendszer tovbbi feladatait
megvalst programok. A monolitikus kernelbl add htrnyokat a Linux a kernelmodulok segtsgvel
igyekszik kikszblni. A kernelnek a modulokban elhelyezett rszt opcionlisan, egy kln fjlbl tudjuk
betlteni. Jellemzen modulokban helyezkednek pldul el a kernelnek a klnfle eszkzk kezelst lehetv
tv rszei, vagyis az adott eszkzk meghajti.

3.2. 15.3.2 Programok futtatsa


A Linux tbb program egymssal prhuzamos futtatst teszi lehetv. Az egyms mellett fut programoknak
meg kell osztozniuk a szmtgp erforrsain gy, hogy egy program hibs mkdse ne okozzon fennakadst
a tbbi program szmra. Ennek a biztostsa az opercis rendszer feladata.
Az egyms mellett fut alkalmazsok szma jellemzen tbbszrse a szmtgpben tallhat
processzormagok szmnak, gy a programoknak idben kell megosztozniuk a processzoron, amit az opercis
rendszer temeznek nevezett rsze szablyoz. Gyorsan vltogatva a fut programok kztt, azoknak nhny
ezred- vagy szzadmsodperces kis szeleteket juttatva a processzor idejbl elrhet hogy akr egy csak
egyetlen processzort tartalmaz gpen is (ltszlag) egyszerre tud futni tbb program.
A szmtgp msik fontos, a fut programok kztt elosztand erforrsa a memria. A felhasznli
programok meghatrozott mret memria rszeket tudnak ignyelni (majd ksbb, ha nincs mr r szksgk
felszabadtani) az opercis rendszertl, amelyre nem a vals (fizikai) hanem virtulis cmek segtsgvel
hivatkoznak majd. Az opercis rendszernek a memriagazdlkodsrt felels rszei a virtulis cmeket vals
cmekre fordtjk le, s biztostjk, hogy egy program nem tudjon hozzfrni a nem ltala hasznlt
memriaterletekhez.
A virtulis cmzs lehetv teszi, hogy a rgebben hasznlt memriaterletek tartalmt a httrtrolra kirjk,
ahonnan szksg esetn visszaolvashatak. A program a visszaolvass utn ugyanazon a virtulis
cmtartomnyon ri el a memrinak ezt a rszt, mint korbban, gy a mkdsbe ez (a visszaolvasshoz
szksges idt leszmtva) nem okoz fennakadst. Ez a megolds lehetv teszi, hogy a programok
sszessgben tbb memrit foglaljanak le, mint amennyi RAM a szmtgpben rendelkezsre ll.
A rendszer indtsakor s a hasznlata sorn egy sszetett inicializcis folyamat gondoskodik a szksges
programok elindtsrl, illetve a szksg esetn trtn jraindtsrl. Ezek kztt a programok kztt vannak
a rendszer megfelel mkdse rdekben a httrben fut programok, klnfle esetenknt ms

2
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

szmtgpekrl is elrhet szerverprogramok, valamint a felhasznlk rszre a bejelentkezst valamilyen


mdon (karakteres terminl, grafikus fellet, hlzaton keresztl) biztost programok.

3.3. 15.3.3 A fjlrendszer felptse


A Linuxban a fjlrendszer egyetlen fbl ll, aminek alapjt a gykr fjlrendszer szolgltatja. A klnfle
httrtrolkon vagy hlzati helyeken elhelyezked fjlrendszerek mr meglv res knyvtrakban
csatlakozhatnak ehhez a rendszerhez. Ennek az elvnek az alkalmazsval minden szmtgpen egyetlen
egysges felpts fba rendezdnek az llomnyok, mikzben a fjlrendszer egyes rszei esetenknt klnfle
httrtrolkon vagy hlzati helyeken helyezkedhetnek el.
ltalban a telepts sorn, a merevlemez particionlsakor lehet kivlasztani, hogy az egyes partcikra milyen
fjlrendszer kerljn. Fjlrendszer alatt ebben a bekezdsben most azt a rendszert rtjk, ami lehetv teszi egy
merevlemez-partcihoz vagy ms eszkzhz tartoz adott mret blokkszer adatterleten knyvtrakba
rendezett fjlok adatainak s attribtumainak trolst. A Linux sokfle fjlrendszert tmogat (ext2, ext3, ext4,
reiserfs, reiser4, xfs, jfs), ezek klnfle tulajdonsgokkal jellemezhetek, egymshoz kpest klnfle
elnykkel s htrnyokkal rendelkeznek, amelyek ismeretben a szakemberek kivlaszthatjk az egy feladatra
leginkbb megfelelt; egyszer felhasznlknt a legbiztosabb a disztribci teleptje ltal felknlt
alaprtelmezsnl maradunk. Vannak olyan fjlrendszerek is, amelyeket ms opercis rendszerekkel vagy
klnfle eszkzkkel val kompatibilits miatt tmogat a Linux, mint pldul a vfat s az ntfs vagy CD s
DVD lemezek adatait trol iso9660.
A fjlrendszernek fontos szerep jut mivel a UNIX-szer opercis rendszerek egyik alapelve, hogy mindent
fjlokba kpeznek le. A UNIX-szer opercis rendszerek egy msik fontos alapelve is kapcsoldik a
fjlrendszerhez: minden belltst fjlokban, jellemzen olvashat szveges llomnyokban trolnak.
A Linux fjlrendszere a UNIX szoksait kvetve elsdlegesen nem szoftverenknt, hanem feladatonknt tagolt.
Mivel nincsenek betjelekkel megklnbztetett meghajtk, egy fjl minden esetben ugyanott tallhat meg.
A fjlrendszer gykert / karakterrel is jelljk. Szintn a / karakter szolgl arra, hogy az elrsi
tvonalban a knyvtrakat elvlasszuk egymstl. Amennyibe az elrsi tvonal a / karakterrel kezddik,
abszolt, a fjlrendszer gykertl rtelmezend, egybknt relatv, az aktulis knyvtrhoz viszonytott.
Az aktulis knyvtrra a ., a szl knyvtrra a .. nven lehet hivatkozni. A felhasznlk alaprtelmezett,
gynevezett home knyvtrt a ~ nven lehet elrni.
A fjlrendszer felptse a Filesystem Hierarchy Standard szabvnyt kveti. A legalapvetbb programok /bin
s a /sbin knyvtrakban tallhatak, az elbbiben a minden felhasznl szmra, az utbbiban a csak a
rendszer adminisztrtornak szksges alkalmazsok. Az ezeknek a programoknak szksges
fggvnyknyvtrak llomnyai /lib knyvtrban tallhatak.
A legtbb program a /usr knyvtrban tallhat. Az /usr/bin s az /usr/sbin knyvtrakban a futtathat
programok, az /usr/lib knyvtrban a binris programok fggvnyknyvtrai helyezkednek el. A
/usr/share knyvtr a programok platformfggetlen llomnyait tartalmazza. Ha valamelyik programnak a
forrskdja is teleptve van, az a /usr/src knyvtrba kerl. Amennyiben egy fggvnyknyvtrat a
szmtgpen lefordtand programokban is hasznlni akarunk, az /usr/include knyvtrba kerlnek azok a
fejlcllomnyok, amelyekre az osztott knyvtrak llomnyain tl mg ebben az esetben szksgnk van. Az
/usr/local knyvtr alatt szintn megtallhatak a fenti alknyvtrak, ezek az adott szmtgpre egyedileg
(jellemzen forrsbl) teleptett programokat tartalmazzk.
A /usr knyvtr tartalma a szmtgp mindennapi hasznlata sorn, ha nem teleptnk jabb programokat
vagy tvoltunk el illetve frisstnk meglvket, nem vltozik; ezrt a biztonsg fokozsa rdekben sokszor
kln meghajtra helyezik, s onnan csak olvashat opcival csatoljk fel a gykr fjlrendszer res /usr
knyvtrba. Azok az llomnyok amelyek a programok norml mkdse kzben is vltozhatnak, de nem
ktdnek szorosan valamelyik felhasznlhoz (mert akkor annak a home knyvtrba kerlhetnnek), a /var
knyvtrban helyezkednek el. A /var/log knyvtrba kerlnek pldul az egyes folyamatok naplllomnyai.
A /var knyvtr alatt tallhatak egyes szerverfolyamatok futtatsra hasznlt felhasznlk home knyvtrai is.
A /home knyvtrban tallhatak a felhasznlk knyvtrai. Egy felhasznl minden adata (munkja sorn
hasznlt llomnyok, programok felhasznlra vonatkoz belltsait tartalmaz fjlok) ebben a knyvtrban

3
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

(pl. /home/felhasznalo) tallhat. A root felhasznl knyvtra a /root knyvtr, gy a rendszer


adminisztrtora akkor is kpes bejelentkezni s a legalapvetbb programokat hasznlni, ha a /usr s a /home
knyvtrak tartalma a gykrtl eltr meghajtn helyezkedik el, s azok valami miatt nem csatolhatak fel.
Az ideiglenes llomnyok a /tmp, a /var/tmp vagy a felhasznl knyvtrban lv tmp knyvtrba
kerlhetnek.
Az egyes programok konfigurlst a /etc knyvtrban tallhat konfigurcis llomnyok segtsgvel
tudjuk elvgezni. A programok felhasznli szint belltsai nem itt, hanem a felhasznl knyvtrn bell
helyezkednek el.
A /dev knyvtrban talljuk az eszkzfjlokat. Ezeken a specilis fjlokon keresztl frhetnk hozz
kzvetlenl a szmtgpnek az opercis rendszer ltal kezelt eszkzeihez. Ktfle eszkz ltezik: karakteres
s blokk. Blokkok pldul az egyes merevlemezeket vagy azok partciit lekpez eszkzfjlok. Ezek a
lekpezett eszkz mretvel megegyez mret llomnyok, melyek tartalmhoz brmilyen programmal
hozzfrhet a megfelel jogosultsggal rendelkez felhasznl. A karakteres eszkzk a blokk eszkzkkel
ellenttben nem vletlen elrsek, hanem egy input vagy output adatfolyamot kpeznek le, mint pldul a
szmtgp soros vagy prhuzamos portja.
A /boot knyvtrban a rendszerbetlt szmra szksges llomnyok kapnak helyet. Itt tallhat meg
ltalban Linux kernelt tartalmaz llomny is. Egyes esetekben a /boot knyvtrat kln partcin helyezik el,
hogy tartalma a lemez elejre kerljn.
A /proc knyvtrban a kernel s a fut programok egyes adatait rhetjk el. A gykr fjlrendszer res /proc
knyvtrba ennek rdekben egy specilis fjlrendszert csatolnak fel. A /proc/modules llomny tartalmt
lekrdezve megkapjuk a betlttt kernelmodulok listjt, a /proc/1234/limits fjl tartalmbl pedig a 1234
sorszm folyamat (hogy van-e ilyen, s hogy micsoda, az esetenknt vltozik) szmra belltott korltokat.
Az alkalmilag felcsatolt fjlrendszereket (Ilyenek pldul cserlhet eszkzk vagy ms opercis rendszerek
ltal is hasznlt partcik fjlrendszerei, vagy sokszor a hlzati fjlrendszerek) a /mnt vagy a /media
knyvtraiba szoks felcsatolni. Napjaink felhasznlbart Linux disztribcii egy USB mass storage eszkz
(pldul egy pendrive) vagy egy DVD lemez behelyezst kveten automatikusan ltrehoznak egy
alknyvtrat s felcsatoljk oda a krdses eszkzn tallhat fjlrendszert. Egy klasszikus Unix rendszerben
ezt a feladatot egy a felhasznl ltal kiadott mount parancs vgezn el, pldul a mount -t vfat /dev/sdb1
/media/pendrive paranccsal lehet felcsatolni az rendszer ltal msodlaogs SCSI eszkzknt emullt USB-s
adathordordoznk els (s egyetlen) FAT tps partcijnak tartalmt a /media/pendrive knyvtr al.
A fjlrendszerben lehetsgnk van linkek hasznlatra is. Ennek leggyakrabban hasznlt formja a szimbolikus
link vagy ms nven puha (soft) link. A szimbolikus linkek specilis llomnyok, amelyek egy msik llomny
elrsi tvonalt tartalmazzk. A link teljesen egyenrtken hasznlhat azzal a fjllal vagy knyvtrral, amire
hivatkozik. Az elrsi tvonal, amire mutat, tetszleges lehet, akr egy nem ltez llomnyra is hivatkozhat,
ami esetn termszetesen nem lesz a szimbolikus link hasznlhat, de amint ltrejn a megadott fjl, a linken
keresztl elrhet lesz.
A linkek msik tpusa a kemny (hard) link. Ez gy mkdik, hogy egy fjlra tbb, egymssal egyenrang
bejegyzs is mutat. A fjl trlshet valamennyi r mutat bejegyzst trlni kell. Kemny linket ltrehozni a
mkdsi elvbl addan csak azonos fjlrendszeren lehetsges.

3.4. 15.3.4 Jogosultsgok a fjlrendszerben


A Linux a tbbi UNIX-szer opercis rendszerhez hasonlan olvassi (r), futtatsi (x) s rsi (w) jogokat
ismer amiket a fjl tulajdonoshoz (egy felhasznl), a fjl csoportjhoz (egy felhasznli csoport tagjai) s a
tbbi felhasznlhoz rendelve tudunk meghatrozni.
Az olvass a fjl vagy a knyvtr tartalmnak olvasst jelenti. Az rsi jog ahhoz szksges, hogy mdostani
tudjuk a tartalmt vagy trlni tudjuk. A futtats szksges ahhoz, hogy egy vgrehajthat kdot tartalmaz
llomnyt a felhasznl elindtson, vagy egy knyvtrba belphessen.
Egy adott mveletet egy felhasznl egy fjlon akkor tud vgrehajtani, ha:
a felhasznl a root felhasznl
4
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

vagy a felhasznl a fjl tulajdonosa s a fjl tulajdonosa rendelkezik a szksges jogosultsggal


vagy a felhasznl tagja a fjl csoportjnak s a fjl csoportja rendelkezik a szksges jogosultsggal
vagy a tbbi (other) felhasznl rendelkezik a szksges jogosultsggal
A hromfle jogosultsg (rs, olvass, futtats) s a hromfle jogosult (tulajdonos, csoport, tbbiek)
kombinciibl kilenc egymstl fggetlenl bellthat jog keletkezik.
Kln specilis jogosultsg a setuid, amivel a fjl tulajdonosa azt tudja engedlyezni, hogy ms, a fjl
futtatsra jogosult felhasznlk a fjlba tallhat programot az nevben futtathassk. Ez lehetsget nyjt
arra, hogy egyes, csak a root ltal elvgezhet mveleteket ms felhasznlk is vgrehajthassanak, de egyben
egy komoly biztonsgi kockzatot is jelent, amennyiben az engedlyezett programban valamilyen kihasznlhat
hiba van, aminek kvetkeztben a program eredetileg nem tervezett mveletek vgrehajtsra is hasznlhat.
A Linuxban nincs az llomnyoknak rejtett vagy rendszer attribtuma. Ha azt szeretnnk, hogy egy llomny
rejtett llomnyokhoz hasonlan viselkedjen, a nevt ponttal kell kezdeni. A ponttal kezdd nev llomnyokat
egyes felhasznli programok megfelel belltsok mellett nem jelentik meg, gy nem zavar pldul a home
knyvtrunkban elhelyezked sok specilis llomny s knyvtr egy dokumentum kivlasztsakor.

3.5. 15.3.5 Felhasznlk kezelse


A Linux tbbfelhasznls opercis rendszer. A rendszert hasznlni, a programokat futtatni tbbfle
felhasznlval, felhasznlnknt eltr jogosultsgokkal lehetsges.
Tbbfelhasznls rendszerek egyik fontos krdse az autentikci, vagyis a felhasznlk megbzhat
azonostsa. Ez ltalban a felhasznlnv s a jelsz megadsval trtnik egy karakteres vagy grafikus
fellet belptet program segtsgvel.
A msik fontos feladata egy tbbfelhasznls rendszernek az autorizci, vagyis annak eldntse, hogy a
felhasznlnak (a felhasznl ltal futtatott programoknak) milyen mveletekhez van jogosultsga. Ez a UNIX
rendszerek minden fjl filozfijval sszhangban ltalban fjlok jogosultsgain keresztl szablyozhat a
fjlrendszernl bemutatott mdon, esetleg egyes programok esetben konfigurcis fjlokon keresztl lehet
jogosultsgokat belltani.
A root (gykr) felhasznl minden jogosultsggal rendelkezik. Ezt a felhasznlt a rendszer adminisztrtora
szokta hasznlni. Egyes a httrben fut folyamatok rszre kln felhasznlkat s felhasznli csoportokat
hoznak ltre, mert amennyiben nem felttlenl szksges, biztonsgi okokbl nem clszer azokat a minden
jogosultsggal rendelkez root felhasznl nevben futtatni.
A felhasznl s a csoport neve helyett a httrben egy sorszmot hasznl a rendszer. Ezt a sorszmot trolja a
fjlok jogosultsgaival kapcsolatban is.

4. 15.4 Hasznlat parancssorbl


A szmtgp parancssorbl trtn hasznlata egy egyszer felleten nyjt sokfle lehetsget a hozzrt
felhasznl szmra. Az tlagos felhasznlk manapsg mr ritkn hasznljk, de a rendszer adminisztrlst
vagy az sszetettebb adatfeldolgozsi s programozsi feladatokat vgz szakemberek szmra nagyon hasznos
tud lenni.

4.1. 15.4.1 A karakteres fellet alapelve s fajti


Karakteres zemmdban a kpernyt nem pixelenknt, hanem karakterenknt kezeljk. A kpernyn ilyenkor
meghatrozott szm (pldul 80 karakter 25 sorban) karakter jelenthet meg egy meghatrozott
karakterkszlet elemeibl, megadhat sznnel s httrsznnel.
A kperny karakteres felletn egy a grafikus fellethez hasonl krnyezetet is kialakthatunk karakterekbl
sszerakott ablakokkal s kezelfelleti elemekkel. Az gy ltrejv szveges felhasznli felleten akr mg az
egeret is grafikus felleten megszokotthoz hasonlan tudjuk hasznlni.

5
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

A msik lehetsg a karakteres fellet hasznlatra a parancssor. A parancssorba egy felvezet karaktersorozat
(a prompt) utn utastsokat tudunk berni a billentyzet segtsgvel. Az utastsok vgrehajtsnak eredmnye
a kperny soron kvetkez rszre rdik ki, a kperny tartalma szksg esetn tovbb grdl.
A Linux opercis rendszerben a kperny karakteres zemmdjt virtulis terminlok segtsgvel szoks
hasznlni. Tbb virtulis terminl osztozhat egyetlen fizikai felleten (kperny s billentyzet), amelyek kztt
az ALT billenty s a terminl sorszmnak megfelel szm funkcibillenty egyidej lenyomsval lehet
vltani.
Br grafikus felletrl is t lehet vltani a karakteres zemmdban mkd virtulis terminlok valamelyikre a
CTRL, az ALT s a terminl sorszmnak megfelel szm funkcibillenty egyidej lenyomsval; ilyenkor
inkbb egy terminl ablakot clszer hasznlni. Ez a program a grafikus fellet egy ablakban nyjt egy, vagy
akr tbb karakteres felletet. Ha tbb karakteres fellet is fut egy ablakban, akkor a bngszprogramokban
mr megszokott mdon, flek segtsgvel vlaszthatunk kzttk.
A karakteres fellet hlzati adattvitel segtsgvel megjelenhet egy msik szmtgpen is. Ehhez a
szmtgpen futtatni kell a megfelel szolgltatst. Az adattvitel rgebben fleg a Telnet protokoll
segtsgvel trtnt, manapsg erre a clra szinte kizrlag az adatfolyam titkostst is biztost ssh protokollt
alkalmazzk. A kliens lehet egy msik UNIX-szer opercis rendszer parancssorban elindtott alkalmazs
vagy pldul egy Windows opercis rendszer alatt elindtott Putty program.

4.2. 15.4.2 A shell program


A karakteres felleten fut, a parancsokat rtelmez s vgrehajt programot shell-nek vagy magyarul
hjprogramnak szoks nevezni. Az elnevezs arra utal, hogy a program mintegy hjat kpez az opercis
rendszer magjn, a kernelen.
Tbbfle shell program ltezik, a kvetkezkben a leginkbb elterjedtnek mondhat Bourne shellt mutatjuk be.
A program a /bin/sh llomnyban tallhat.
A parancssorban kiadhat utastsok ltalban programok, amelyeknek egy paramterlistt is tadhatunk. A
parancs els rsze (az els szkzig) a programot hatrozza meg, a tovbbi pedig a paramterlistt adja.
A shell rendelkezik vltozkkal. Ezek rtkt a nevket kvet egyenlsgjel utn tudjuk megadni. Az rtkket
brmilyen parancsban lekrdezhetjk, amihez $ szimblumot kell a nevk el tenni. Pldul:
valtozo=szoveg
echo $valtozo

A fenti pldban elszr a szoveg karakterlncot helyezzk el a valtozo nev vltozban, majd ennek a
vltoznak az rtkt (vagyis azt, hogy szoveg) kirjuk a kpernyre. rdemes megfigyelni, hogy
rtkadskor nem tettnk dollrjelet a vltoz neve el, csak akkor, amikor az rtkt lekrdeztk. Meg kell mg
jegyezni, hogy a shell vltozk azonosti rzkenyek a kis s nagy betk kztti klnbsgekre.
Vannak olyan vltozk, amelyek rtknek hatsa van a shell vagy az abbl indtott programok mkdsre.
Ilyen pldul a $PATH, ami azt hatrozza meg, hogy az elrsi tvonal nlkl megadott utastsokhoz mely
knyvtrakban keressen megfelel programot. A $PATH vltoz rtke kettsponttal elvlasztva tartalmazza a
knyvtrak elrsi tvonalait, a helyi knyvtr (./) biztonsgi okokbl nincs kzttk.
A futtatott programok szveges kimenete (amit egy C nyelv program printf fggvnye, egy Pascal program
writeln utastsa, egy Ruby-ban rt alkalmazs puts metdusa, vagy egy shell program echo parancsa r ki a
kpernyre) arra a karakteres eszkzre kerl, ahol a shell fut. A program kimenett lehetsgnk van
tirnytani egy fjlba a > karakter segtsgvel, pldul a kvetkez mdon:
ls > fajljaim.txt

Az ls parancs kiratja az aktulis knyvtr tartalmt, de az nem a kpernyre, hanem fajljaim.txt


llomnyba kerl. Ha mr ltezik ilyen nev llomnyt azt ezzel az utastssal fellrjuk. Amennyiben ilyen
esetekben a ltez llomny vgre akarjuk fzni a program kimenett a > helyett a >> hasznlata
szksges.

6
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

Vannak programok, amelyek nem csak kimenettel, hanem bemenettel is rendelkeznek. Egyszeren elindtva egy
ilyen programot, a bemenett a billentyzet segtsgvel tudjuk bevinni, a CTRL+D billentykombincival
lezrva. Amennyiben a bemenetknt megadni kvnt szveg egy llomnyban mr rendelkezsre ll, a fjlt a <
karakter segtsgvel tudjuk a program bemenetre irnytani.
Gyakran elfordul, hogy egy program kimenett egy msik program bemenetre szeretnnk tirnytani. Erre a
kt program kz elhelyezett | karakter (pipe, vagy csvezetk nven szoks nevezni) segtsgvel nylik
lehetsg.
A shell kpes az gynevezett shell programok vgrehajtsra. Ezek a programok szveges llomnyokban
helyezkednek el. A szveges llomny els sora az rtelmezt hatrozza meg #! karaktereket kveten,
vagyis a mi esetnkben a #!/bin/sh szveget tartalmazza. Egybknt hasonl mdon kell eljrni ms
interpreteres nyelveken rt programok esetben is, hogy egy Linux alatt vgrehajthat llomnyt kapjunk. (A
Ruby nyelven rt programok esetben pldul az els sorba a #!/usr/bin/ruby szvegek kell rnunk, gy a
rendszer tudni fogja, hogy a programot a /usr/bin/ruby tvonalon elrhet rtelmezvel lehet futtatni.) A
program futtathatsghoz fontos tovbb, hogy az llomny vgrehajthat legyen.
A shell programok sorai tbbsgben olyan utastsok, amelyeket a parancssorba begpelve egyenknt is ki
lehetne adni. Ezeken fell tartalmazhat mg vezrlsi szerkezeteket (elgazsok, ciklusok) is.

4.3. 15.4.3 Fontosabb parancsok


Az egyes programokat nevknek (a programot tartalmaz fjl nevnek) a parancssorba rsval tudjuk
elindtani. Amennyiben a fjl elrsi tvonala nem szerepel a $PATH vltozban, gy azt is meg kell adni.
A program nevt a programnak sznt paramterek kvetik. A paramterek lehetnek fjlokra val hivatkozsok
vagy kapcsolk. A kapcsolkat egy vagy kt ktjellel kezdve szoks megadni. Egy ktjellel az egybets,
tovbbi opcikat nem ignyl kapcsolkat szoks kezdeni, amelyek gy halmozhatv vlnak, pldul az ls -l
-a helyett hasznlhatjuk az ls -la alakot.
Az albbiakban rviden bemutatjuk a legfontosabb programokat, amelyeket a parancssorban hasznlni
szoktunk.
cd: az aktulis knyvtr megvltoztatsa
mkdir: j knyvtr ltrehozsa
cp: llomnyok msolsa msik nev llomnyba vagy msik knyvtrba
rm: llomnyok trlse
mv: llomnyok tnevezse vagy tmozgatsa egy msik knyvtrba
ln: szimbolikus (puha) link ltrehozsa egy llomnyhoz vagy egy knyvtrhoz
ls: knyvtr tartalmnak kilistzsa
find: llomnyok keresse
chmod: llomnyok jogosultsgainak belltsa
chown: llomnyok tulajdonosnak belltsa
chgrp: llomnyok csoportjnak belltsa
du: egy knyvtr (s alknyvtrai) sszes llomnya ltal foglalt sszes hely kiszmtsa
df: a lemezek kapacitsnak, hasznlt s szabad terletnek kilistzsa
echo: egy tetszleges szveg kirsa
cat: egy szveges llomny tartalmnak kiratsa
7
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

head: egy szveges llomny els sorainak kiratsa


tail: egy szveges llomny utols sorainak kiratsa
grep: egy szveges llomny azon sorainak kiratsa, amelyek megfelelnek egy megadott felttelnek
sort: egy szveges llomny sorainak kiratsa sorba rendezst kveten
mount: egy j fjlrendszer felcsatolsa egy res knyvtrba
umount: egy fjlrendszer lecsatolsa
ps: fut folyamatok kilistzsa
kill: egy folyamat megszaktsa
passwd: a felhasznl jelszavnak megvltoztatsa
su: egy msik felhasznl szerepnek tvtele (amennyiben nem a root felhasznl nevben adjuk ki, a
krdses felhasznl jelszavnak megadst kveten)
sudo: egy utasts futtatsa egy msik felhasznl nevben (amennyiben nem a root felhasznl nevben
adjuk ki, a krdses felhasznl jelszavnak megadst kveten)
Az egyes programokrl a man program segtsgvel tudunk egy rszletes lerst krni. Pldul a man grep
utastst a parancssorba gpelve a grep program hasznlatt ler kziknyvoldalt tudjuk olvasni.

5. 15.5 Grafikus fellet


A Linuxban a grafikus fellet nem rsze a rendszermagnak, s nem felttlenl rsze az opercis rendszernek,
mivel sok esetben (szerverek, begyazott rendszerek) nincsen r szksg.
Amennyiben van grafikus fellet, az tbbfle, a Linux rendszermagjtl fggetlenl fejlesztett programbl pl
fel.

5.1. 15.5.1 Az X Window System


A Linuxban a grafikus fellet kezelsre az X Window Systemet, rvidtve X11-et, vagy csak egyszeren X-et
hasznljk. Az X szerver-kliens elven pl fel, az X szerver kezeli a grafikus felletet, a grafikus felletet
ignyl programok kliensknt fordulnak hozz a felhasznli felletk megjelentse rdekben.
A kliens-szerver felptsnek ksznheten a program akr egy msik szmtgpen is futhat, mint amelyiken a
grafikus fellete megjelenik. Fknt rgebben volt elterjedt szoks, hogy a karakteres terminlok mintjra X
szervert futtat grafikus terminlokat hasznltak tvoli nagy teljestmny szmtgpeken fut programok
kezelsre.
Az X csak a grafikus krnyezet felptshez szksges elemi mveleteket biztostja. Lehetv teszi az ablakok
kirajzolst s mozgatst s a beviteli eszkzk (billentyzet, egr, egyb pointerek, stb.) kezelst, de
nmagban mg nem nyjt egy felhasznli felletet, ahhoz egy ablakkezel rendszerre is szksgnk van.
A karakteres hjprogramokhoz hasonlan az X-bl is tbbfle ltezik, mint pldul az Xfree86 vagy az X.org.

5.2. 15.5.2 Ablakkezel rendszerek


Mivel az X Window System csak a grafikus fellet ltrehozshoz szksges elemi mveleteket tartalmazza,
szksgnk van mg egy ablakkezel rendszerre is. Az ablakkezel rendszer felel az ablakok tartozkainak
(keret s fejlc az ablak tmretezst vagy bezrst lehetv tv szoksos gombokkal) kirajzolsrt, a
felhasznli felletnek programok indtst s nyomon kvetst lehetv tv rszeinek (indtmenk s
ikonok, tlck) kezelsrt, valamint ezen kvl mg szmos a szmtgp hasznlatt megknnyteni vagy
hatkonyabb tenni hivatott segdprogramot biztost.

8
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

A legtbb Linux alatt hasznlt ablakkezel rendszer tbb munkaasztal prhuzamos kezelst teszi lehetv. Ez
gy mkdik, mintha tbb kpernynk lenne, amelyek mindegyikn szabadon tudjuk a fut programjaink
ablakait elrendezni. Azt, hogy melyik munkaasztal jelenjen meg a kpernynkn, az ablakkezelnek a virtulis
munkaasztalok kztti vltst biztost rszn tudjuk kivlasztani, ami jellemzen a munkaasztalok kicsinytett
kpeit tartalmaz gombokbl ll.
Ablakkezel programokbl bsges vlasztk ll a rendelkezsnkre. A legismertebbek a KDE s a Gnome.

6. 15.6 Disztribcik
Mivel egy Linux-alap opercis rendszer sokfle kln fejlesztett (de a nylt forrskd licenszeknek
ksznheten szabadon hozzfrhet s felhasznlhat) programbl pl fel, hasznlathoz ezeknek a
programoknak egy gyjtemnyre s a teleptsket valamint belltsukat elvgz tovbbi alkalmazsokra van
szksg. Az ilyen mdon sszell szoftvert disztribcinak nevezzk.
Sokfle Linux disztribci ltezik, vannak kzttk informatikai nagyvllalatok ltal fejlesztett millirdos
piaccal rendelkezk s hobbibl ksztettek egyarnt. Kszlnek olyan disztribcik is amelyeket kifejezetten
egy adott alkalmazsi terletre vagy eszkzre fejlesztenek. Sok disztribci egy msikra pl, attl tbb vagy
kevesebb mdostssal tr el.
A disztribcik vltozatait a tbbi szoftverhez hasonlan verziszmokkal szoks elltni, a disztribci pontos
meghatrozshoz ezrt ezt is meg kell adni.
A disztribcik sokfle programot tartalmazhatnak. A Linux-kernelen s a gp hasznlathoz szksges
alapvet programokon tl ltalban megtallhat bennk szmos felhasznli program is, mint pldul az
OpenOffice.org irodai programcsomag, a Firefox webbngsz, a GIMP kpszerkeszt, a Scribus
kiadvnyszerkeszt vagy a Blender 3D modellez programok. Teleptst kveten ltalban egy teljes kren
hasznlhat rendszer kapunk.

6.1. 15.6.1 Csomagkezelk


A disztribci egyik legfontosabb feladata a szmtgpen tallhat Linux-alap rendszer programjainak
teleptse s belltsa. Ezt a feladatot a csomagkezel program vgzi, ami a programhoz tartoz csomagbl a
megfelel helyekre msolja a programot kpez fjlokat, majd szksg esetn elvgzi a program belltst.
A csomagok kztt fggsgek lehetnek, egy csomag teleptse ms csomagok teleptst ignyelheti,
amelyeknek szintn lehetnek hasonl fggsgei. A csomagkezel programok kpesek kezelni a fggsgeket,
a felhasznl ltal ignyelt csomag mellett teleptik a kzvetlenl vagy kzvetve szksges tovbbi csomagokat
is.
A csomagokat a csomagkezel a disztribci telept CD vagy DVD lemezrl, vagy egy meghatrozott
hlzati helyrl rheti el. Ez utbbi esetben j csomagok teleptsn tl lehetsg nylik a teleptett csomagok
jabb vltozatainak figyelsre s szksg esetn az rintett programok frisstsre.
A csomagkezels trtnhet parancssori eszkzkkel, de a legtbb disztribci rendelkezik grafikus fellet,
egyszeren hasznlhat csomagkezel programmal is. Egy ilyen programban csak ki kell vlasztani a
teleptend alkalmazsokat, a csomagkezel ezutn elvgzi a szksges csomagok letltst s teleptst.
A kt leginkbb elterjedtebb csomagformtum a Debian rendszerek .deb s a RedHat .rpm formtuma. Ezeket
az eredetiken tl szmos tovbbi disztribci hasznlja (az .rpm-et pldul a Suse, a .deb-et az Ubuntu).

7. 15.7 sszefoglals
Ellenrz krdsek:
Milyen technolgiai elzmnyei voltak a Linux opercis rendszernek?
Melyek egy opercis rendszer kerneljnek legfontosabb feladatai?
Melyek azok a fontos alapfeladatok, amelyeket egy Linux-alap opercis rendszerben nem a kernel vgez?

9
Created by XMLmind XSL-FO Converter.

A Linux opercis rendszer

Hogyan pl fel a Linux-alap opercis rendszerek fjlrendszere?


Hogyan rjk el Linux alatt a szmtgpre csatlakoztatott ideiglenes httrtrak (pldul egy pendrive)
tartalmt?
Milyen fontos eltrst tapasztalunk a knyvtrak elrsi tvonalnak megadsakor a Windowsban
megszokotthoz kpest?
Milyen jogosultsgok kapcsoldhatnak a fjlokhoz s knyvtrakhoz?
Milyen elven mkdik a karakteres fellet?
Mire hasznlhatk a shell (hj) programok?
Ismertessen nhny parancssorbl hasznlhat programot!
Milyen elven mkdik a grafikus fellet egy Linux-alap opercis rendszerben?
Hogyan klnlnek el az X Window System s az ablakkezel programok feladatai?
Milyen feladatokat oldanak meg a csomagkezel programok? Melyek a leggyakrabban hasznlt
csomagformtumok?
Soroljon fel nhny Linux disztribcit!

Irodalomjegyzk
Pere Lszl: Kiskapu Kft., Budapest, 2005.
Marcel Gagn: Kiskapu Kft., Budapest, 2002.
Bki Andrs: Kiskapu Kft., Budapest, 2002.
http://tldp.fsf.hu/
http://kernel.org/
http://www.slackware.com/
http://www.ubuntu.com/
Fedora honlapja: http://fedoraproject.org/

http://www.redhat.com/

10
Created by XMLmind XSL-FO Converter.

You might also like