Szmtgpes alapismeretek 2 3 gyakorlat UnixLinux alapismeretek Tma
- Slides: 99
Számítógépes alapismeretek 2 -3. gyakorlat Unix/Linux alapismeretek Téma: Fontos parancsok (who, date, password, pwd, ls, cat, more, tail, mail, unix levelezés, csatolások, kódolás, dekódolás, pine, cd, mkdir, rmdir, cp, mv, ln, rm, chmod, chown, find) 1
A parancsértelmező, avagy shell n n Egy Unix rendszermag szigorúan véve nem tartalmaz felhasználó-interakciót: a kernel csupán arra képes, hogy futtasson más programokat, illetve hozzáférést biztosítson a rendszer erőforrásaihoz a parancsértelmező vagy shell nem csinál mást, minthogy olvassa a felhasználó billentyűzetéről érkező parancsokat, és ezeket a kernel számára emészthető rendszerhívásokká alakítja, a végeredményről pedig a képernyőn tájékoztatja a felhasználót
A Linux szerkezete hardver rendszermag = kernel shell = burok = héj 3
A parancsértelmező, avagy shell n n Bejelentkezéskor elindul egy "login shell". Új shellt a program nevének beírásával lehet elindítani.
Shell fajták n n n Sh : ősi shell Csh : C programozók ízlésvilágához igazított változata Ksh: Korn shell, kényelmi funkciókkal Tcsh: csh kiterjeszett változata Bash: Bourne Again Shell, sh továbbfejlesztése Mindegyik shell-nek saját programnyelve van, amelyben shell scripteket (kisebb programokat) írhatunk
Shell parancsok n n A shellnek vannak beépített parancsai (a bash-nak 50) és külső programjai. A "type parancsnév" mutatja meg, hogy a parancs belső-e.
Bash shell n n Az előzőleg begépelt parancsokat visszahívhatjuk a felfelé nyíllal, a parancssort szabadon szerkeszthetjük (mozogni a nyílbillentyűkkel lehet). Előző parancsot visszahívni még a felkiáltójellel is lehet: a ! mögé rövid sztringet írva megkeresi a legutóbbi olyan parancsot, amely azzal a sztringgel kezdődött, és azt futtatja le
Bash shell n n File-név kiegészítést a "Tab"-bal kérhetünk Ha ez egyértelműen lehetséges, beírja a filenevet, ha nem, sípol egyet, és a "Tab" újbóli megnyomására megkapjuk a lehetséges filenevek listáját
Bash shell n Billentyűkombinációk Néhány hasznos billentyűkombináció, melyeket bash alatt kényelmesen használhatunk (a lista távolról sem teljes): control + r: rekurzív keresés a korábban kiadott parancsok között. Leütése után be kell gépelni a keresett parancs valamely töredékét control + c: futó alkalmazás megszakítása control + u: kurzortól balra eső rész levágása control + k: kurzortól jobbra eső rész levágása control + a: sor elejére ugrás control + e: sor végére ugrás control + l: a konzol törlése/frissítése
A Linux fájlrendszere n Fájlnév akár 255 hosszú, szinte tetszőleges karakterekből q kis- és nagybetűk megkülönböztetettek q lehetnek. -ok a fájlnévben, de a kiterjesztéseknek a rendszer számára nincsen jelentésük q n Könyvtárfa q minden adat egyetlen könyvtárfában van, melynek a gyökere a „/” n meghajtók, hardvereszközöknek megfelelő fájlok is a könyvtárfában érhetők el 10
A Linux könyvtárszerkezete, fontosabb könyvtárak: n n n / A főkönyvtár, a könyvtárfa kiindulópontja /home Ehhez csatlakoznak a felhasználók könyvtárai /dev A hardvereszközöket reprezentáló fájlok /etc A legfontosabb konfigurációs fájlok /usr/bin Közhasználatú parancsok /sbin A superuser és a rendszerindító parancsok /usr/doc Dokumentációs fájlok /usr/local/man Kézikönyv oldalak /tmp Ideiglenes fájlok /var Konfigurációs fájlok (Linkek az /usr-ből) /lib Megosztott programkönyvtárak /proc A processzek fájlrendszere 11
LINUX/UNIX PARANCSOK 12
PUTTY alkalmazás használatával bejelentkezünk Karakterkódolás beállítása UTF-8 -ra! 13
man n n Manuál olvasása a parancsokról man parancs q q n n -h; --help -V; --version - help (Mindenhol!) verzió (Mindenhol!) Lapozás: ‘szóköz’ Kilépés: 'q' Tekintsd meg a who parancs súgóját! 14
Uname n n Rendszerinformációk kiírása Uname q q q q -a -s -n -r -v -m -p -o összes információ kernel neve node neve kernel release kernel version machine processor operációs rendszer 15
who n n Kiírja, hogy ki van bejelentkezve Who [opciók] q q q -a -q -s - minden információ felhasználók száma rövidebb információ Kik vannak most bejelentkezve a rendszerbe? 16
whoami n Kiírja, az aktuális felhasználó azonosítóját
date n n Dátum és idő kiírása/beállítása date [opciók] [formátum] q q q date 092908302008 (date [MMDDhhmm[[CC]YY][. ss]]) -R RFC 2822 (Thu, 25 Sep 2008 17: 54: 28 +0200) date +%Y-%m-%d. T%H: %M: %S Tekintsd meg a date parancs súgóját! 18
passwd, kpasswd n n A passwd a felhasználók és a csoportok jelszavának megváltoztatását végzi. A felhasználók csak a saját jelszavukat változtathatják meg, a rendszergazda bárkiét. A Kerberos (tartományi) jelszó módosítására a kpasswd parancs szolgál. 19
pwd n n Kiírja a munkakönyvtár nevét pwd q Print name of current/Working Directory Mi a személyes könyvtárad teljes elérési útvonala? 20
Katalógusok n A Unix fájlrendszerben három kitüntetett pont létezik az egyes felhasználó számára: q q q a gyökérkatalógus (root directory), ez a fájlrendszer kezdõpontja / az alapkatalógus (home directory), az egyes felhasználóhoz tartozó kiindulási pont ~/ a munkakatalógus (current directory), az a pont, ahol a felhasználó éppen tartózkodik a fájlrendszerben . /
ls n n Könyvtát tartalmának listázása ls [opciók] fájl q -a q -l -s -S -r -R q -F q q - A ponttal (. ) kezdődő fájlneveket az ls alapértelmezésben nem listázza, a -a opció viszont felülbírálja ezt a működést. - Hosszú formátumú lista - méretet is block-ban - méret szerint rendez - visszafelé rendez - Rekurzívan kilistázza az összes alkönyvtár összes fájlját -Ez az opció hozzáad egy ismertető karaktert a fájlnevek végéhez, ami a fájl típusáról árulkodik • Mi a személyes könyvtárad tartalma? • Milyen típusú fájlok vannak benne? 22
ls –al parancs eredménye Fájltípus és Jogosultságok Tulajdonos neve Link számláló: Hány néven hivatkozhatunk a fájlra Fájl hossza Tulajdonos csoport azonosítója Utolsó módosítás dátuma Fájl neve Szimbólikus linkeknél az is látszik a -> jel után, hogy hova mutat a link
File-típusok n n n d: ha a file egy könyvtár (directory) b: ha a file block típusú speciális file c: ha a file karakter típusú speciális file l: ha a file szimbolikus link s: ha a file socket - ha a file "egyszerű" (plain) file
File-típus példa (block device) n n A /dev könyvtár alatt találhatók speciális eszközfájlok, melyeknél ez lehet "b" (blokk eszköz, block devices) pl. : $ ls -al /dev/hda 1 brw-rw---- 1 root disk 3, 1 2004 szept 28 /dev/hda 1 (A primary master vincseszter első partíciójára mutató blokk eszköz)
File-típus példa (karakteres eszközfájl) n n ls -l /dev/dsp 0 crw-rw---- 1 root audio 14, 3 2006 -03 -07 22: 27 /dev/dsp 0 (Ez az elsődleges hangkártyára mutató "karakteres eszközfájl". )
cd (relatív és abszolút hivatkozás) n n Könyvtárváltás Belépés az akt. könyvtár egy könyvtárába q q n Kilépés az akt. könyvtárból q q n cd. . /. . Ki-be lépés q n cd public/public_html ~: a személyes könyvtár cd. . /mail ~ mail public_html Abszolút hivatkozás q q cd ~/public_html cd /bin • Egyesével lépj ki a mindenkori aktuális könyvtárból, ameddig van hová, és közben 27 ellenőrizd az aktuális könyvtár tartalmát!
A joker-karakterek n n ls, cp, rm stb. parancsoknál használható ? q n egyetlen tetszőleges karakter * q tetszőlegesen sok (0, 1, 2, …) tetszőleges karakter • Lépj a /usr/bin könyvtárba! • Jelenítsd meg a könyvtár tartalmát! • Jelenítsd meg csak a "ca" kezdetű fájlokat! • Jelenítsd meg csak az "ar" végű fájlokat! • Jelenítsd meg csak a "c" kezdetű, hárombetűs fájlokat! 28
Shell-szolgáltatások n Parancs, futtatható fájl, vagy könyvtár nevének automatikus kiegészítése q n ‘TAB’ Korábban kiadott parancsok elérése q ‘fel’ és ‘le’ nyílgombok • Lépj a személyes könyvtáradba! (cd) • Írd be a "cale" szókezdést, nyomj TAB-ot, azután Entert! • Írd be a "cal" szókezdést, nyomj TAB-ot, azután újra TAB-ot! • Folytatva a megkezdett szót, indítsd el újra a "calendar" programot! 29
mkdir n n Könyvtár létrehozása mkdir [opciók] könyvtár q -v - visszajelzés • Hozd létre a személyes könyvtáradban a „szamalap” könyvtárat! • A „szamalap” könyvtáron belül hozd létre a „jin” és „jang” könyvtárakat! ~ szamalap jin jang 30
Átirányítás n n A Unix rendszer file-orientált szervezése a parancsok futtatásakor is megmutatkozik: minden egyes futó parancshoz hozzárendelõdik három file: a standard input (stdin) a standard output (stdout) standard error (stderr)
Átirányítás n Kimenet átirányítása: q n Kimenet átirányítása, hozzáfűzéssel: q n Parancs >> fájl Bemenet átirányítás q n Parancs > fájl Parancs <fájl Hiba átirányítása q Parancs 2>fájl
cat n cat [opciók] fájl q n Szövegfájl létrehozása billentyűzetről q q n Fájl(ok összefűzése és) képernyőre írása cat >ujlevel. txt Befejezés: CTRL+D Szövegfájl kiíratása q • Hozd létre a személyes könyvtáradban a „tuz. txt” fájlt, ami a saját nevedet tartalmazza! • Ellenőrizd, hogy a fájl létrejött! cat <olvassel. txt ~ tuz. txt szamalap jin jang 33
Átirányítás n Egy parancs kimenetének szöveges fájlba irányítása q q man date >a_date_parancs_leirasa. txt ls *. png >. . /novenyek/kepeim. list who >~/public_html/felhasznalok. lst hozzáfűzve: n date >>felhasznalok. lst • Írd felül a „tuz. txt” fájlt a jelenleg bejelentkezettek névsorával! • Fűzd hozzá a „tuz. txt” fájlhoz az aktuális dátumot! 34
Echo parancs n n A megadott szöveget kiírja a szabványos kimenetre $ echo ez egy tetszőleges szöveg q n ez egy tetszőleges szöveg $ echo -n ez egy tetszőleges szöveg q q ez egy tetszőleges szöveg$ Ilyenkor az új sor karaktert nem írja ki 35
cp n Fájlokat és könyvtárakat másol cp [opciók] forrás cél q -f felülír q -i kérdez felülírás előtt q -R, -r Rekurzívan q -u újabbal felülír q -v visszajelzés q ~ tuz. txt szamalap jin • Állj a személyes könyvtáradba! • Készíts másolatot a „tuz. txt” fájlról a „jin” könyvtárba! jang tuz. txt 36
mv n n Mozgat vagy átnevez fájlokat mv [opciók] forrás cél q q -u -v - csak az újabbal írja felül visszajelzés ~ tuz. txt • Lépj a „jin” könyvtárba! • Nevezd át a „jin” könyvtárban lévő szövegfájlt „viz. txt”-re! • Helyezd át a „viz. txt” fájlt a „jang” könyvtárba! szamalap jin jang viz. txt 37
rm n n Fájl törlése rm [opció] fájl q q -r -v -f -i - Rekurzívan Mindig van visszajelzés Soha nincs visszajelzés Kérdezés törlés előtt ~ tuz. txt szamalap • Töröld a „tuz. txt” fájlt! jin jang viz. txt 38
rmdir n n Üres könyvtárat töröl Rmdir [opciók] könyvtár q -v - Kiírja az eredményt ~ • Próbáld meg kitörölni a „jang” könyvtárat! • Töröld a „jin” könyvtárat! szamalap jang viz. txt 39
rm -r n n Könyvtár rekurzív törlése rm -r könyvtár ~ szamalap jang • Töröld a teljes „szamalap 4” könyvtárat! viz. txt 40
more és less n n Képernyőre írja lapozva a fájlt more [opciók] fájl q q q n Szóköz – lapozás Enter – soronként görgetés q – kilépés less: hasonló, mint a more, de mindkét irányban lapozható • Irányítsd át a /etc könyvtár részletes tartalmát egy „lista. txt „fájlba! (ls –l /etc >lista. txt) • Tekintsd meg a more és a less parancsokkal is az elkészült szövegfájlt! • Mi a különbség a két parancs használatában? (Mindkét esetben próbáld ki a ‘fel’, ‘le’ nyílgombokat!) 41
tail n n Egy fájl utolsó részét kiírja tail [opciók] fájl q q -n N -c N - Utolsó N sor Utolsó N bájt • Tekintsd meg a /etc/motd. karacsony fájlt! • Tekintsd meg az utolsó 5 sorát! 42
head n n Egy fájl elejét kiírja head[opciók] fájl q q -n N -c N - Utolsó N sor Utolsó N bájt • Tekintsd meg a /etc/motd. karacsony fájlt! • Tekintsd meg az első 5 sorát! 43
FELADATOK 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Írd ki egy ize nevű fájlba, hogy ki van bejelentkezve. Az ls man-oldalát írd ki egy ize 2 nevű fájlba. Írasd ki az ize 2 -t oldalakra tagolva. Hozz létre egy valami nevű mappát. Másold az ize-t a valami-be. Lépj be a valami-be és másold bele az ize 2 -t. Töröld az ize-t. Hozz létre egy va lami nevű mappát, majd töröld. Lépj ki valami-ből, és töröld. Fűzd hozzá az ize fájlhoz az ize utolsó 7 sorát. Töröld ize-t. Használd fel az ize fájlt! A név szóközt tartalmaz! 44
Egy lehetséges megoldás 1. who >ize 2. man ls >ize 2 3. more ize 2 4. mkdir valami 5. cp ize valami 6. cd valami; mv. . /ize 2. 7. rm ize 8. mkdir „va lami”; rmdir „va lami” 9. cd. . ; rm -r valami 10. tail -n 7 ize >>ize 11. rm ize 45
Linkek használata n n n Két nagy előnye van, az egyik a névütközések feloldása, a másik a helytakarékosság. A névütközések problémája onnan ered, hogy a UNIX verziók eltérő fejlődése miatt ugyanolyan néven kezdtek nevezni más-más parancsokat. Legismertebb példa erre az rsh parancs, ami a System V alapú rendszerekben a restricted shell-t jelenti (ez a szokványos Bourne shell egy korlátozott szolgáltatásokkal bíró változata), a BSD alapú UNIX rendszerekben viszont a remote shell rövidítése, ami a távoli gépeken történő parancsvégrehajtásra szolgál. Mivel a mai rendszerekben mind a két parancs szerepel, általában csak a katalógusokban definiált keresési sorrend dönti el, hogy az rsh parancs kiadásakor melyik indul el a kettő közül (mindig a másik, mint amelyiket akartuk ). Ha viszont valamelyiket egy eltérő névvel láncoljuk, akkor a névütközés problémáját feloldottuk. A restricted shell rendszerint a /usr/bin könyvtárban található, míg a remote shell a /usr/ucb alatt. Adjuk ki az alábbi parancsot (Ehhez superuser jogok kellenek!): $ ln /usr/ucb/rsh /usr/bin/remsh E parancs hatására a továbbiakban remsh néven hívhatjuk a remote shell-t, rsh néven a másikat, s a módszer a katalógusok keresési sorrendjétől függetlenül működni fog. 46
Linkek használata n Helytakarékosság q q Tegyük fel, hogy van két C nyelvű programunk, amelyek igen hasonló funkciókat látnak el, lényegtelen eltérésekkel. Megtehetjük azt, hogy mindkettőt külön-külön lefordítjuk, keletkezik két éktelen nagy bináris programunk, különböző néven. Ennél sokkal jobb megoldás, ha egy közös, némileg ugyan nagyobb forráskódot fordítunk le egy példányban, a keletkezett bináris végrehajtható program nevét pedig a másik programnévhez láncoljuk. (A program futás közben el tudja dönteni, hogy milyen néven hívták, s az annak megfelelő végrehajtási ágakra futhat. ) Látszik, hogy ez esetben csak egy darab nagyméretű program foglal helyet a lemezen, a linkelés helyigénye elhanyagolható (gyakorlatilag a második név katalógus-bejegyzése, ami tipikusan 16 bájt. ) 47
Szimbólikus link n n A UNIX rendszer kétféle láncolási eljárást ismer, a merev és a lágy láncolást (hard and soft link). A merev láncolás legfőbb jellemzője az, hogy a láncolt fájl teljesen egyenértékű az eredetivel, hiszen egyazon inode-ra mutat két egyenértékű katalógus bejegyzés, amelyek között nem lehet különbséget tenni. q n n i-node: adatsruktúra, amely alapvető információkat tárol a fájlokról, könyvtárakról, vagy más objektumokról a fájlrendszerben. A merev láncolás csak egyedi fájlok linkelését teszi lehetővé, katalógusokét nem. A "lágy láncolás", vagyis a szimbolikus link viszonylag késői újítás a UNIXban, a Sun. OS operációs rendszerből terjedt el, de mára már szabványos eleme a UNIX-nak. Lényege, hogy a szimbolikus link katalógus bejegyzése nem a fájl inode-jára mutat, hanem egy olyan különleges fájlra, ami a láncolt fájl nevét tartalmazza. 48
Szimbólikus link n Mire jó? n Szimbolikus link alkalmazásával egész katalógusokat láncolhatunk át egy paranccsal egy másik fájlrendszerbe, ami gyakran hasznosnak bizonyulhat, ha például a jobb terhelésszétosztás miatt újra kell strukturálni a fájlrendszert, és egész alkalmazáscsomagokat helyezünk át más fájlrendszerbe, ugyanakkor mindezt a felhasználó számára észrevétlenül akarjuk végrehajtani. 49
ln n n Link létrehozása Ln [opció] CÉL [linknév] q q -f -i -s -v - Felülírja a létezőt, ha van Kérdez felülírás előtt szimbolikus link kiírja az eredményt • Hozz létre a személyes könyvtáradban egy „parancsok” szimbolikus linket a /bin könyvtárra! • Lépj a „parancsok” könyvtárba! • Add ki a pwd parancsot. Mit tapasztalsz? 50
Ln parancs példák (merev link) $ echo Budapest>fovaros $ ls -l összesen 4 -rw-r--r-- 1 abonyita iszmtcs 9 okt 2 18. 35 fovaros $ ln fovaros lakhely $ ls -l összesen 8 -rw-r--r-- 2 abonyita iszmtcs 9 okt 2 18. 35 fovaros -rw-r--r-- 2 abonyita iszmtcs 9 okt 2 18. 35 lakhely $ cat fovaros Budapest $ cat lakhely Budapest $ rm fovaros $ ls -al összesen 12 drwxr-xr-x 2 abonyita iszmtcs 20 okt 2 18. 37. drwx------ 26 abonyita iszmtcs 4096 okt 2 17. 12. . -rw-r--r-- 1 abonyita iszmtcs 9 okt 2 18. 35 lakhely $ cat lakhely Budapest 51
Merev (hard) link n Merev link esetén a linkelt állomány és az eredeti állomány i-nodeja megegyezik $ ls -il összesen 12 275617933 -rwx------ 2 abonyita iszmtcs 7 okt 2 18. 41 fovaros 275617933 -rwx------ 2 abonyita iszmtcs 7 okt 2 18. 41 lakhely 275617934 -rw-r--r-- 1 abonyita iszmtcs 7 okt 2 18. 44 valami 52
Ln parancs példák (szimbolikus link) $ echo Budapest>fovaros $ ln -s fovaros lakhely $ ls -al összesen 12 drwxr-xr-x 2 abonyita iszmtcs 34 okt 2 18. 47. drwx------ 26 abonyita iszmtcs 4096 okt 2 17. 12. . -rw-r--r-- 1 abonyita iszmtcs 9 okt 2 18. 46 fovaros lrwxrwxrwx 1 abonyita iszmtcs 7 okt 2 18. 47 lakhely -> fovaros $ echo London >fovaros $ cat lakhely London $ rm fovaros $ ls -l összesen 0 lrwxrwxrwx 1 abonyita iszmtcs 7 okt 2 18. 47 lakhely -> fovaros $ cat lakhely cat: lakhely: Nincs ilyen fájl vagy könyvtár 53
Gyakorlás 1. 2. 3. 4. 5. 6. 7. 8. 9. Hozz létre egy apple nevű állományt ugyanezzel a tartalommal Készíts egy merev linket az apple állományra alma néven! Milyen inode-al szerepel a két állomány? Készíts egy szimbolikus linket az alma állományra, gyumolcs néven! Írd felül az alma állomány tartalmát a következőre: jonatán Írasd ki a képernyőre az apple és gyumolcs tartalmát Töröld ki az apple állományt! Írasd ki a képernyőre az alma és gyumolcs tartalmát Töröld le a szimbólikus linket! 54
Jogosultságok Unix rendszerek alatt 3 fajta jog létezik: Olvasási (Read), Írási (Write), és Futtatási (e. Xecute). És 3 csoport: tulajdonos (User), a tulajdonos csoportja (Group) és világ más része (Other) Minden csoporthoz a megadni kívánt jogok számait össze kell adni, majd a kapott számokkal futtatni a chmod parancsot. Pl. ha azt akarjuk, hogy az enyém. doc fájlal én, az alkotója mindent megtehessek, de más csak olvasni tudja, akkor a következő számot kell a chmod után írni: 744 Jogok Felhasználó / Tulajdonos (user) Olvasás (read) 4 Írás (write) 2 Felhasználó csoportja (Group) Futtatás Olvasás (execute) (read) 1 4 Írás (write) 2 Világ, mindenki más (Other) Futtatás Olvasás (execute) (read) 1 4 Írás (write) 2 Futtatás (execute) 1 • Read: fájl esetén az olvasást, könyvtár esetén tartalmának listázását jelenti • Write: fájl esetén az írást, könyvtár esetén tartalmának törlését jelenti • e. Xecute: fájl esetén futtatási jogot, könyvtár esetén a könyvtárba lépés jogát jelenti. 55
chmod n n Módosítja a fájl elérési jogait chmod [opciók] MÓD fájl q q q r w x + = n n - - - Olvasási engedély Írási engedély Futtatási engedély Hozzáadja az engedélyt Elveszi az engedélyt a megadott jogokkal felruházza az adott felhasználót, csoportot TULAJ_CSOPORT_VILÁG RWX (4+2+1) (olvasás, írás, futtatás) 56
chmod – 2. q q q q u - , u+ Engedélyek beállítása a fájl, könyvtár tulajdonosának g - , g+ Engedélyek beállítása a csoport számára o -, o+ Engedélyek beállítása a többi felhasználónak a-, a+ Az összes fenti egyben (ugo) -R Rekurzívan -v Mindig van visszajelzés -f Soha nincs visszajelzés 777 Mindenkinek minden jog 57
chmod példák Parancs chmod +r fajl chmod -x fajl chmod u=rw, go= fajl chmod +rw fajl chmod -R u+w, go-w docs/ chmod 0 file chmod 664 file chmod 755 file magyarázat olvasás jog mindenkinek végrehajtási jog eltávolítva mindenkitől olvasás és írás jog a felhasználónak, a csoporttól és a többi felhasználótól eltíltva minden olvasás és írásjogot adtunk mindenkinek. megváltoztatja a docs könyvtár összes állományának a jogait, úgy hogy ezek tartalma olvasható lesz a felhasználónak, a csoporttól pedig elveszi az írás jogot. eltávolítja az összes jogot mindenkitől olvasás és írás jogot ad a felhasználónak, és a csoportnak, a többinek pedig csak olvasás jogot. ekvivalens a u=rwx (4+2+1), go=rx (4+1 & 4+1). find path/ -type d -exec eltávolítja a végrehajtásjogot az összes könyvtártól (ha '-type f'-et chmod a-x {} ; használunk akkor az állományokra vonatkozik). 58
Feladat n n n n n Hozz létre a személyes könyvtáradban egy „titkos. txt” fájlt , amely a nevedet tartalmazza! Vond meg magadtól az olvasási jogot! Próbáld meg elolvasni a cat vagy a more paranccsal! Állítsd vissza az olvasási jogodat! Próbáld meg elolvasni a cat vagy a more paranccsal! Vond meg magadtól az írási jogot, de mindenki más kapja meg! Próbálj meg a cat >>titkos. txt paranccsal hozzáfűzni a fájlhoz! Add vissza magadnak az írási jogot, a „többiektől” vedd el! Próbálj meg a cat >>titkos. txt paranccsal hozzáfűzni a fájlhoz! 59
chown n n Módosítja a fájl tulajdonosát és csoportját Chown [opciók] TULAJ[: CSOP] file q q -R Rekurzívan -v Mindig van visszajelzés -f Soha nincs visszajelzés --from=MT[: MCS] - Csak a mostani tulajnál vált 60
chgrp n n Módosítja a fájl csoportját Chgrp [opciók] [CSOPORT] file q q q -R -v -f - Rekurzívan Mindig van visszajelzés Soha nincs visszajelzés 61
Chown, chgrp példa n n n n $ chgrp staff file 1 $ ls -l file 1 -rw-r-xr-x 1 demo staff 18 Aug 23 20: 42 file 1 $ chown janos file 1 $ ls -l file 1 -rw-r-xr-x 1 janos staff 18 Aug 23 20: 42 file 1 E két parancs használatakor egyet ne felejtsünk: ha egy állomány tulajdonosi jogait átadtuk, akkor a továbbiakban azt mi nem vehetjük vissza, csak az új tulajdonos dönthet így. 62
find n n Keresés Find [útvonal] [kifejezések] q q -name ”*. jpg” -perm 777 -size 10 k -exec command n n q {} ; - *. jpg nevű fájlokat keres 777 -es joggal rendelkezők 10 kilobyte-nál nagyobb Parancsot futtat Az éppen aktuális fájl nevét helyettesíti Lezárja a parancsot … Keresd meg a /etc könyvtár „mod” karakterláncot tartalmazó nevű fájljait (és könyvtárait)! find /etc -name "*mod*" 63
find n Írassuk ki az aktuális könyvtárban lévő összes html kiterjesztésű file utolsó 2 sorát. q find. -name "*. html" -exec tail -2 {} ;
grep n n Karaktersor (szó vagy minta) keresése egy vagy több fájlban: grep [mit] [fájlnév] Keresd meg a /etc/motd. karacsony fájlban a ‘Karacsony’ karaktersort tartalmazó sorokat! 65
SZÖVEGSZERKESZTÉS
VI Valamennyi UNIX rendszeren megtalálható. Szerkesztőmód Parancsmód ‘Esc’ ‘i’, ‘o’, ‘a’ q felülírás n n • Hozz létre eg y egyszerű htm l-oldalt a publikus köny vtáradban, m ajd jelenítsd meg egy böngész őben! q q q q q http: //www. szabilinux. hu/vi/index. html ‘SHIFT+R’ kilépés: ‘Esc’ karaktertörlés: ‘X’ sortörlés: ‘dd’ kivágás: ‘V’-’D’ másolás: ‘V’-’Y’ beillesztés: ‘P’ keresés: /valami Keresés/csere: : %s/mit/mire/g mentés: : w fájlnév kilépés: : q kilépés mentés nélkül: : q!
Vi feladat n n Hozz létre a VI segítségével egy naptar nevű állományt, ami az aktuális hét napjainak dátumát tartalmazza: Pl. q q q n n 2012. október 3: 2012. október 4: 2012. október 5: 2012. október 6: 2012. október 7: Használd a másolás-beillesztés funkciót is! A keresés/csere funkcióval változtasd meg a hónap nevét, a következő hónap nevére! (október =>november) 68
pico
pico n n n létrehozni vagy szerkeszteni kívánt fájl nevét írjuk be a parancs után: pico ujfajl. txt A program parancsai folyamatosan láthatóak a képernyő alján. A "^" jel azt jelenti, hogy a billentyűt a ctrl gomb nyomva tartása mellett kell használni. Ha ez esetleg a terminál típusa miatt nem működne, akkor a dupla ESC gombnyomást is alkalmazhatjuk helyette.
Pico használata
Pico használat n Kijelölés q q q Megadjuk a kezdő karaktert, (Ctrl+^) majd a kurzormozgató billentyűvel kijelöljük a szöveget. Utána használhatjuk a kivágás (ctr+k), és beillesztés (ctrl+u) funkciót. (megjegyzés: a ctrl+^ angol billentyűzeten a ctrl+shift+6 billentyűn van)
Pico feladat 1. 2. 3. Lépj be a public/public_html könyvtárba! Hozz létre a pico-val egy linkek. html állományt! A tartalma legyen a következő: <html> <head> <title>Linkek</title> </head> <body> <h 1>Kedvenc linkjeim</h 1> <p><a href="http: //www. elte. hu">ELTE weboldala</a></p> </body> </html> 4. 5. 6. 7. Nézd meg az eredményt a böngészőprogramban! Másold le háromszor a linket tartalmazó sort, és módosítsd úgy, hogy általad kedvelt oldalakra mutasson! Ments el az állományt, és lépj ki a programból! Nézd meg az eredményt a böngészőprogramban! 73
Pico feladat - folytatás 1. 2. 3. 4. 5. 6. 7. Irányítsd át a who parancs eredményét a felh. txt állományba! Nyisd meg a pico-ban a linkek. html állományt! A linkek után illeszd be az alábbi sorokat: <p>Most az alábbi felhasználók vannak bejelentkezve: </p> <pre> </pre> A <pre> és </pre> tagek közé olvasd be a felh. txt állomány tartalmát! Mentsd el az állományt és nézd meg az eredményt a böngészőprogramban! Ha az ékezetes betűk nem jelennek meg helyesen, a dokumentum <head> és </head> tagje közé helyezd el a következő sort: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" > Nézd meg az eredményt!. 74
joe
Joe használata n n A joe egy elterjedten használt szövegszerkesztő. Komolyabb feladatokra is alkalmas, mint a pico. Egyszerre több állományt is megnyithatunk vele különböző opciókkal. Komolyságát a parancsok számából is láthatjuk, amelyet a <ctrl>-k-h gombokkal hozhatunk elő és tüntethetünk el. Itt is "^" jel azt jelenti, hogy a billentyűket a ctrl gomb nyomva tartása mellett kell használni.
Joe használata
Midnigth Commander (mc) http: //szerver 3. moragimi. sulinet. hu/Informatika/linux/mc. html
Midnigth Commander (mc) n n n n n F 1 – Súgó F 3 – Megtekintés F 4 – Szerkesztés F 5 – Másolás F 6 – Átnevezés / mozgatás F 7 – Könyvtár létrehozása F 8 – Törlés F 9 – Menü F 10 – Kilépés
Midnigth Commander (mc) n Lényegesebb menüpontok q Left / Right n n n n Listing mode - Könyvtárlista Info - Az állomány főbb tulajdonságai Tree – Könyvtárszerkezet Sort Order – Rendezési beállítások Filter – Szűrők (nézet) FTP link – FTP kapcsolat Rescan - frissítés
Midnigth Commander (mc) n File menü q q chmod – Jogosultságok beállítása Link és Symlink: Linkek és szimbolikus linkek kezelése chown – Tulajdonos beállítása Select / unselect group, reverse selection - kijelölés
Midnigth Commander (mc) n Command menü q q Directory tree: könyvtárfa lekérése Find file: fájl keresés Compare directories: könyvtárak összehasonlítása Show directory sizes: Könyvtárak méreteinek megjelenítése
Feladat – mc n Hozd létre az alábbi alkönyvtár struktúrát: q Mc n állat q n informatika q q n n n tigris egér billentyűzet Az egér könyvtárban helyezz el egy eger. txt állományt, egérke tartalommal. (SHIFT+F 4) Az egér könyvtárat másold az állat könyvtárba Az állat/egér/eger. txt állományra állítsd be, hogy a tulajdonosnak legyen rwx joga, a többieknek pedig semmilyen. Készíts egy hard linket állat/egér/eger. txt állományra, az informatika könyvtár gyökeréből, mouse néven! Nézd meg a mouse tartalmát! 83
PROCESSZEK / FOLYAMATOK
Folyamat n n az operációs rendszerben futó program egy példánya Felmerülő kérdések q q q Időosztás (time slice), a folyamatok egymás utáni futtatása, az ütemezés megoldása párhuzamos futtatás, több felhasználó egyidejűleg a gépen futó programokkal dolgozhat (multiuser munkamód) a prioritások kezelése
Folyamatok n Folyamatok vezérelhetőek is q q q n Elindíthatóak: előtérben, háttérben Lekérdezhetőek Leállíthatóak Időzíthetőek Priorizálhatóak A Unix/Linux többfeladatos és többfelhasználós rendszer
Futó folyamatok lekérdezése n n n ps ps aux top PID - a folyamat azonosítója TTY - a vezérlõ terminál azonosítója, jelen esetben ez a ttyp 0 STAT - a folyamat állapota TIME - a processz által eddig elhasznált processzor idő
A folyamatok fontosabb állapotai a UNIX/Linux rendszerek alatt Az állapot neve A ps parancs betűjele Leírás Running R A folyamat fut. Parancssoros munka esetében ide soroljuk azt az esetet is amikor a folyamat még nem fut, de futásra kész. Ilyenkor a folyamat arra vár, hogy processzoridőhöz jusson. Interruptible Sleep S A folyamat várakozik valamilyen eseményre vagy erőforrásra és megszakítható egy jelzés által. Például egy számlálóra (sleep) vagy valamilyen Be/Ki műveletre. Uninterruptible Sleep D A folyamat várakozik valamilyen eseményre vagy erőforrásra és nem szakítható meg jelzés által. Általában ez az állapot valamilyen be/kimeneti eszközre való várakozást jelent. Stopped vagy Traced T Fel van függesztve és áll. Ide kerül egy folyamat ha a terminálról futtatva lenyomjuk a ^Z billentyűt és a háttérbe dobjuk.
Folyamatazonosító (process id vagy pid) n n n A folyamatok azonosítására szolgáló egész szám Folyamatot a UNIX alatt csak egy másik folyamat indíthat. Így minden folyamat egy másik folyamat gyermeke, ezért használatosak a szülő folyamat és gyermek folyamat elnevezések. ps –ef f {fa struktúrában jeleníti meg}
Feladat (job) n n A terminállal való munka során egy parancssorral egyszerre akár több folyamatot indíthatunk. tail -20 lista. txt | sort | uniq A fenti parancs 3 folyamatot indít és köztük csővezetékeket hoz létre. A felhasználó által elindított folyamatok csoportját job-nak nevezik. Jobs
Folyamatok kezelése parancs & programindítás előtér (csak 1 folyamat) ‘CTRL+Z’ fg %jobnumber kill -STOP pid háttér – running bg %jobnumber háttér – stopped ‘CTRL+C’ done kill %jobnumber terminated
Programok indítása n Előtérben q n Háttérben: <parancsnév> & q n sleep 10 sleep 20& nohup <parancsnév>: A program futása nem szakad meg a felhasználó kijelentkezésekor
Processzek befagyasztása, folytatása n Futó folyamat befagyasztása: CTRL + Z q q q n n vi CTRL + Z ps aux Előtérbe helyezés: fg [jobazonosító]% Háttérben folytatás: bg [jobazonosító]%
Processzek kezelése n n n jobs: belső feladatazonosítók, állapotok lekérése kill: folyamatok leállítása Feladat: Lépjünk be két terminál kapcsolattal, egyik ablakban indítsunk el egy szövegszerkesztőt, majd ezt lőjük ki a másik ablakból!
Processz erőforrás felhasználás n n n time <parancsnév>: erőforrás felhasználási statisztika pl. : time finger strace <parancsnév>: rendszerhívások megjelenítése. Hibakereséshez q q pl: strace –p PID pl. : strace ls pl: strace –p 16543 - a figyelt folyamat azonosítója
Eseménykezelés (csapda) n n n Trap A jelek elfogására és kezelésére szolgál a trap parancs, amelynek általános alakja a következő: q q trap 'parancsok' jelek neve vagy száma A trap a felsorolásban megadott jeleket elfogja, és hatásukra az egyszeres idézőjelek (aposztrófok) között megadott utasítássort hajtja végre.
Eseménykezelés (csapda)
Eseménykezelés (csapda) n n Feladat: A ctrl+c leütésére írjuk ki: Szia! Feladat: Szüntessük meg ezt a csapdát! Megoldás n n trap ’echo Hajrá ELTE!’ 2 trap ’’ 2
Köszönöm a figyelmet! 99
- Unixlinux
- Oe kgk szakmai gyakorlat
- Pte ktk szakmai gyakorlat helyek
- Sket gyakorlat
- Bme gtk szakmai gyakorlat
- Sze dfk szakmai gyakorlat
- Eke szakmai gyakorlat
- Moodle elte
- Honvédelmi alapismeretek tankönyv
- Munkajogi ismeretek
- Munkajogi alapismeretek
- Munkarendek fajtái
- Cnc alapismeretek
- Pneumatika alapismeretek
- Alapfogalom
- Komparátor működése
- Elte progalap
- Cnc marási feladatok
- Zero macchina cnc
- V kolik hodin je tma
- Tma certificering
- Skloňovanie slova ovocie
- Romeo julie a tma online
- Tma
- Dr david tma
- Tkp4165
- Tma
- Tma dnes
- Tma ctr atz
- Tma
- Asu navigators
- Skloňovanie tvoj
- Asu tma
- Alerfa detresfa incerfa
- Tma04 e103
- Pomocný vzor les
- Slovní úloha
- Petr aubier
- Tma tanzania
- Trimetilamin adalah
- Athens tma vfr routes
- Sla
- Prizrak i tma