Számítógépes alapismeretek 2-3. gyakorlat Unix/Linux alapismeretek

Slides:



Advertisements
Hasonló előadás
Weblapkészítési tudnivalók 2: Útmutató az elnevezésekhez Pék Ágnes © 2009.
Advertisements

Készítette: Kun Béla.  Operációs rendszernek nevezzük a számítástechnikában a számítógépeknek azt az alapprogramját, mely közvetlenül kezeli a hardvert,
1 Bori Tamás Operációs Rendszerek I. 2. óra: parancssori alapok.
Billentyűzet és egér.
Operációs Rendszerek I.
Operációs Rendszerek I.
Az operációs rendszer Egy olyan szoftver, ami a számítógépeink használatához nélkülözhetetlen. Főbb feladatai: programok betöltése, futtatása perifériák.
Operációs rendszerek Bevezetés.
Operációs rendszerek Beállítások.
Számítógépes ismeretek 5. óra
Operációs rendszerek Mappa és file-kezelés.
Fajfrik Dóra tanárjelölt munkája alapján
LINUX/UNIX PARANCSOK.
7. előadás (2005. április 12.) Láncolt lista File kezelés 1.
Bevezetés az informatikába 7. előadás
Készítette: Pető László
Ember László Damn Small Linux Microsoft VPC környezetben.
Operációs rendszerek Microsoft Windows XP.
Linux A UNIX története – 3. dia
Microsoft Windows A Windows fejlődése, általános jellemzése – 2. dia
UNIX Összefoglaló az alapokról a ta65 tárgyhoz ( )
Operációs rendszerek gyakorlat
Jogosultságkezelés.
Operációs rendszerek gyakorlat Fájlműveletek.
Operációs rendszerek GNU/Linux
1 Operációs rendszerek A UNIX védelmi rendszere. 2 Illetéktelen hozzáférés megakadályozása: az egyes felhasználók adataihoz, az operációs rendszer adataihoz,
Operációs rendszerek gyakorlat 3. Gyakorlat Vakulya Gergely.
Funkcionális programozás 2. gyakorlat
Mappák és állományok kezelése
Operációs rendszer.
Operációs rendszerek gyakorlat 1. Bevezetés Vakulya Gergely.
Állomány és lemezműveletek
Hálózat kiépítésével lehetőségünk nyílik más számítógépek erőforrásainak használatára. Osztott háttértár használat: egy számítógép merevlemezének megosztásával.
1.3. Pascal program felépítése Az els ő program. Program ; … Begin … End. Program fej Deklarációs rész Végrehajtó rész.
PARANCSOK HASZNÁLATA WINDOWS-BAN ÉS LINUXBAN II. Balaton Marcell Balázs.
Linux nemcsak a 13.ht-számára.
A gyakorlatok munkakörnyezete
Bevezetés az informatikába 4. előadás
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Scriptelés alapok Tóth Dániel, Szatmári Zoltán Intelligens.
Készítette: Turócziné Kiscsatári Nóra
OPERÁCIÓS RENDSZEREK LINUX – PARANCSSOR.
Óravázlat Készítette: Kucsera Mihály és Toldi Miklós
Az operációs rendszer feladata
Az operációs rendszerek feladatai, csoportosításuk
Első lépések a szövegszerkesztő használatában
Egy operációs rendszer könyvtárszerkezete (tárolórendszere)
Fontos tudnivalók A MATLAB egy fajta objektummal dolgozik (Mátrix)
Számítógépes grafika I. AUTOCAD alapok
Bevezetés az informatikába 5. előadás
SZÖVEGSZERKESZTÉS II. SZÖVEGSZERKESZTÉS LÉPÉSEI
Bevezetés az informatikába 3. előadás Software alapismeretek II Operációs rendszerek 1. A DOS operációs rendszer.
A Mozilla magyar nyelvű szerkesztőjének használata
Programozás alapjai 1.gyakorlat
Szoftverek csoportosítása
Bevezetés. Alapok: szövegszerkesztő alkalmazás (Word) megnyitása: Start gomb  Minden program  Microsoft Office  Microsoft Office Word 2007 szövegszerkesztő.
Ismétlés:grafikus felületek Felső panel Indítópanel Asztal Indikátorok Kuka.
Készítette: Rummel Szabolcs Elérhet ő ség: Linux kezelése.
Programozás alapjai 1. gyakorlat Hirling Dominik.
Lekérdezések Adott tulajdonságú adatok listázásának módja a lekérdezés. A lekérdezések segítségével az adatbázisból megjeleníthetjük, módosíthatjuk, törölhetjük.
Az operációs rendszer feladatai
OPERÁCIÓS RENDSZEREK LINUX – PARANCSSOR.
Információ és kommunikáció
Neumann János Informatikai Kar
Bemeneti perifériák.
A Linux karakteres felhasználói felülete
Total commander.
Unix Linux GNU Copyright kriptográfia
Operációs rendszerek I.
Ubuntu – ismerkedés Fájlok és könyvtárak
Számítógépes alapismeretek 3. gyakorlat
Előadás másolata:

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)

A parancsértelmező, avagy shell 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

A parancsértelmező, avagy shell Bejelentkezéskor elindul egy "login shell". Új shellt a program nevének beírásával lehet elindítani.

Shell fajták 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 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 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 File-név kiegészítést a "Tab"-bal kérhetünk Ha ez egyértelműen lehetséges, beírja a file-nevet, ha nem, sípol egyet, és a "Tab" újbóli megnyomására megkapjuk a lehetséges file-nevek listáját

Bash shell 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 Fájlnév Könyvtárfa akár 255 hosszú, szinte tetszőleges karakterekből kis- és nagybetűk megkülönböztetettek lehetnek .-ok a fájlnévben, de a kiterjesztéseknek a rendszer számára nincsen jelentésük Könyvtárfa minden adat egyetlen könyvtárfában van, melynek a gyökere a „/” meghajtók, hardvereszközöknek megfelelő fájlok is a könyvtárfában érhetők el

A Linux könyvtárszerkezete, fontosabb könyvtárak: / 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

LINUX/UNIX PARANCSOK

PUTTY alkalmazás használatával bejelentkezünk Karakterkódolás beállítása UTF-8-ra!

man Manuál olvasása a parancsokról man parancs Lapozás: ‘szóköz’ -h; --help - help (Mindenhol!) -V; --version - verzió (Mindenhol!) Lapozás: ‘szóköz’ Kilépés: 'q' Tekintsd meg a who parancs súgóját!

Uname Rendszerinformációk kiírása Uname -a összes információ -s kernel neve -n node neve -r kernel release -v kernel version -m machine -p processor -o operációs rendszer

who Kiírja, hogy ki van bejelentkezve Who [opciók] -a - minden információ -q - felhasználók száma -s - rövidebb információ Kik vannak most bejelentkezve a rendszerbe?

whoami Kiírja, az aktuális felhasználó azonosítóját

date Dátum és idő kiírása/beállítása date [opciók] [formátum] date 092908302008 (date [MMDDhhmm[[CC]YY][.ss]]) -R RFC 2822 (Thu, 25 Sep 2008 17:54:28 +0200) date +%Y-%m-%dT%H:%M:%S Tekintsd meg a date parancs súgóját!

passwd, kpasswd A passwd a felhasználók és a csoportok jelszavának megváltoztatását végzi. A fel-haszná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.

pwd Kiírja a munkakönyvtár nevét pwd Print name of current/Working Directory Mi a személyes könyvtárad teljes elérési útvonala?

Katalógusok A Unix fájlrendszerben három kitüntetett pont létezik az egyes felhasználó számára: 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 Könyvtát tartalmának listázása ls [opciók] fájl -a - 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. -l - Hosszú formátumú lista -s - méretet is block-ban -S - méret szerint rendez -r - visszafelé rendez -R - Rekurzívan kilistázza az összes alkönyvtár összes fájlját -F -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?

ls –al parancs eredménye Fájltípus és Jogosultságok Fájl hossza Tulajdonos neve Fájl neve Szimbólikus linkeknél az is látszik a -> jel után, hogy hova mutat a link Link számláló: Hány néven hivatkozhatunk a fájlra Tulajdonos csoport azonosítója Utolsó módosítás dátuma

File-típusok 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) 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/hda1 brw-rw---- 1 root disk 3, 1 2004 szept 28 /dev/hda1 (A primary master vincseszter első partíciójára mutató blokk eszköz)

File-típus példa (karakteres eszközfájl) ls -l /dev/dsp0 crw-rw---- 1 root audio 14, 3 2006-03-07 22:27 /dev/dsp0 (Ez az elsődleges hangkártyára mutató "karakteres eszközfájl".)

cd (relatív és abszolút hivatkozás) Könyvtárváltás Belépés az akt. könyvtár egy könyvtárába cd public cd public/public_html Kilépés az akt. könyvtárból cd .. cd ../.. Ki-be lépés cd ../../mail Abszolút hivatkozás cd ~/public/public_html cd /bin ~ mail public public_html ~: a személyes könyvtár Egyesével lépj ki a mindenkori aktuális könyvtárból, ameddig van hová, és közben ellenőrizd az aktuális könyvtár tartalmát!

A joker-karakterek ls, cp, rm stb. parancsoknál használható ? * egyetlen tetszőleges karakter * 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!

Shell-szolgáltatások Parancs, futtatható fájl, vagy könyvtár nevének automatikus kiegészítése ‘TAB’ Korábban kiadott parancsok elérése ‘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!

mkdir Könyvtár létrehozása mkdir [opciók] könyvtár -v - visszajelzés ~ szamalap jin jang 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!

Átirányítás 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 Kimenet átirányítása: Kimenet átirányítása, hozzáfűzéssel: Parancs > fájl Kimenet átirányítása, hozzáfűzéssel: Parancs >> fájl Bemenet átirányítás Parancs <fájl Hiba átirányítása Parancs 2>fájl

cat cat [opciók] fájl Szövegfájl létrehozása billentyűzetről Fájl(ok összefűzése és) képernyőre írása Szövegfájl létrehozása billentyűzetről cat >ujlevel.txt Befejezés: CTRL+D Szövegfájl kiíratása cat <olvassel.txt 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! ~ tuz.txt szamalap jin jang

Átirányítás Egy parancs kimenetének szöveges fájlba irányítása man date >a_date_parancs_leirasa.txt ls *.png >../novenyek/kepeim.list who >~/public/public_html/felhasznalok.lst hozzáfűzve: 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!

Echo parancs A megadott szöveget kiírja a szabványos kimenetre $ echo ez egy tetszőleges szöveg ez egy tetszőleges szöveg $ echo -n ez egy tetszőleges szöveg ez egy tetszőleges szöveg$ Ilyenkor az új sor karaktert nem írja ki

cp Fájlokat és könyvtárakat másol cp [opciók] forrás cél -f - felülír -i - kérdez felülírás előtt -R, -r - Rekurzívan -u - újabbal felülír -v - visszajelzés ~ tuz.txt szamalap jin jang Állj a személyes könyvtáradba! Készíts másolatot a „tuz.txt” fájlról a „jin” könyvtárba!

mv Mozgat vagy átnevez fájlokat mv [opciók] forrás cél -u - csak az újabbal írja felül -v - visszajelzés ~ tuz.txt szamalap jin jang viz.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!

rm Fájl törlése rm [opció] fájl -r - Rekurzívan -v - Mindig van visszajelzés -f - Soha nincs visszajelzés -i - Kérdezés törlés előtt ~ tuz.txt szamalap jin jang viz.txt Töröld a „tuz.txt” fájlt!

rmdir Üres könyvtárat töröl Rmdir [opciók] könyvtár -v - Kiírja az eredményt ~ szamalap jang viz.txt Próbáld meg kitörölni a „jang” könyvtárat! Töröld a „jin” könyvtárat!

rm -r Könyvtár rekurzív törlése rm -r könyvtár ~ szamalap jang viz.txt Töröld a teljes „szamalap4” könyvtárat!

more és less Képernyőre írja lapozva a fájlt more [opciók] fájl 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!)

tail Egy fájl utolsó részét kiírja tail [opciók] fájl -n N - Utolsó N sor -c N - Utolsó N bájt Tekintsd meg a /etc/motd.karacsony fájlt! Tekintsd meg az utolsó 5 sorát!

head Egy fájl elejét kiírja head[opciók] fájl -n N - Utolsó N sor -c N - Utolsó N bájt Tekintsd meg a /etc/motd.karacsony fájlt! Tekintsd meg az első 5 sorát!

FELADATOK Írd ki egy ize nevű fájlba, hogy ki van bejelentkezve. Használd fel az ize fájlt! Írd ki egy ize nevű fájlba, hogy ki van bejelentkezve. Az ls man-oldalát írd ki egy ize2 nevű fájlba. Írasd ki az ize2-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 ize2-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. A név szóközt tartalmaz! who >ize man ls >ize2 more ize2 mkdir valami cp ize valami cd valami; mv ../ize2 . rm ize mkdir „va lami”; rmdir „va lami” cd ..; rm -r valami tail -n 7 ize >>ize

Egy lehetséges megoldás who >ize man ls >ize2 more ize2 mkdir valami cp ize valami cd valami; mv ../ize2 . rm ize mkdir „va lami”; rmdir „va lami” cd ..; rm -r valami tail -n 7 ize >>ize

Linkek használata 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.

Linkek használata Helytakarékosság 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.)

Szimbólikus link 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. 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 UNIX-ban, a SunOS 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.

Szimbólikus link Mire jó? 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áscsoma-gokat helyezünk át más fájlrendszerbe, ugyanakkor mindezt a felhasználó számára észrevétlenül akarjuk végrehajtani.

ln Link létrehozása Ln [opció] CÉL [linknév] -f - Felülírja a létezőt, ha van -i - Kérdez felülírás előtt -s - szimbolikus link -v - kiírja az eredményt ln -s /bin parancsok 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?

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 ö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 $ 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

Merev (hard) link 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

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: Nincs ilyen fájl vagy könyvtár

Gyakorlás 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! 1. echo apple>apple 2. ln apple alma ls –i * ln -s alma gyumolcs echo jonatán >alma Cat apple; cat gyumolcs

Jogosultságok Jogok Felhasználó / Tulajdonos (user) Unix rendszerek alatt 3 fajta jog létezik: Olvasási (Read), Írási (Write), és Futtatási (eXecute). É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) Felhasználó csoportja (Group) Világ, mindenki más (Other) Olvasás (read) Írás (write) Futtatás (execute) 4 2 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 eXecute:fájl esetén futtatási jogot, könyvtár esetén a könyvtárba lépés jogát jelenti.

chmod Módosítja a fájl elérési jogait chmod [opciók] MÓD fájl r - Olvasási engedély w - Írási engedély x - 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)

chmod – 2. 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

chmod példák Parancs magyarázat chmod +r fajl olvasás jog mindenkinek chmod -x fajl végrehajtási jog eltávolítva mindenkitől chmod u=rw,go= fajl olvasás és írás jog a felhasználónak, a csoporttól és a többi felhasználótól eltíltva minden chmod +rw fajl olvasás és írásjogot adtunk mindenkinek. chmod -R u+w,go-w docs/ 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. chmod 0 file eltávolítja az összes jogot mindenkitől chmod 664 file olvasás és írás jogot ad a felhasználónak, és a csoportnak, a többinek pedig csak olvasás jogot. chmod 755 file ekvivalens a u=rwx (4+2+1),go=rx (4+1 & 4+1). find path/ -type d -exec chmod a-x {} \; eltávolítja a végrehajtásjogot az összes könyvtártól (ha '-type f'-et használunk akkor az állományokra vonatkozik).

Feladat 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! 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!

chown Módosítja a fájl tulajdonosát és csoportját Chown [opciók] TULAJ[:CSOP] file -R - Rekurzívan -v - Mindig van visszajelzés -f - Soha nincs visszajelzés --from=MT[:MCS] - Csak a mostani tulajnál vált

chgrp Módosítja a fájl csoportját Chgrp [opciók] [CSOPORT] file -R - Rekurzívan -v - Mindig van visszajelzés -f - Soha nincs visszajelzés

Chown, chgrp példa $ chgrp staff file1 $ ls -l file1 -rw-r-xr-x 1 demo staff 18 Aug 23 20:42 file1 $ chown janos file1 -rw-r-xr-x 1 janos staff 18 Aug 23 20:42 file1 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.

find Keresés Find [útvonal] [kifejezések] -name ”*.jpg” - *.jpg nevű fájlokat keres -perm 777 - 777-es joggal rendelkezők -size 10k - 10 kilobyte-nál nagyobb -exec command - Parancsot futtat {} - Az éppen aktuális fájl nevét helyettesíti \; - Lezárja a parancsot … find /etc -name "*mod*" Keresd meg a /etc könyvtár „mod” karakterláncot tartalmazó nevű fájljait (és könyvtárait)! find /etc -name "*mod*"

find Írassuk ki az aktuális könyvtárban lévő összes html kiterjesztésű file utolsó 2 sorát. find . -name "*.html" -exec tail -2 {} \;

grep Karaktersor (szó vagy minta) keresése egy vagy több fájlban: grep [mit] [fájlnév] grep Karacsony /etc/motd.karacsony Keresd meg a /etc/motd.karacsony fájlban a ‘Karacsony’ karaktersort tartalmazó sorokat!

SZÖVEGSZERKESZTÉS

VI Szerkesztőmód Parancsmód felülírás karaktertörlés: ‘X’ Valamennyi UNIX rendszeren megtalálható. Szerkesztőmód Parancsmód ‘Esc’ felülírás ‘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! ‘i’, ‘o’, ‘a’ Hozz létre egy egyszerű html-oldalt a publikus könyvtáradban, majd jelenítsd meg egy böngészőben! http://www.szabilinux.hu/vi/index.html

Vi feladat 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. 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)

pico

pico 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 Kijelölés 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 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ő: 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! <html> <head> <title>Linkek</title> </head> <body> <h1>Kedvenc linkjeim</h1> <p><a href="http://www.elte.hu">ELTE weboldala</a></p> </body> </html>

Pico feladat - folytatás 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!.

joe

Joe használata 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://szerver3.moragimi.sulinet.hu/Informatika/linux/mc.html

Midnigth Commander (mc) F1 – Súgó F3 – Megtekintés F4 – Szerkesztés F5 – Másolás F6 – Átnevezés / mozgatás F7 – Könyvtár létrehozása F8 – Törlés F9 – Menü F10 – Kilépés

Midnigth Commander (mc) Lényegesebb menüpontok Left / Right 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) File menü 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) Command menü 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 Hozd létre az alábbi alkönyvtár struktúrát: Mc állat tigris informatika egér billentyűzet Az egér könyvtárban helyezz el egy eger.txt állományt, egérke tartalommal. (SHIFT+F4) 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!

PROCESSZEK / FOLYAMATOK

Folyamat az operációs rendszerben futó program egy példánya Felmerülő kérdések 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 Folyamatok vezérelhetőek is 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 ps ps aux top PID - a folyamat azonosítója TTY - a vezérlõ terminál azonosítója, jelen esetben ez a ttyp0 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 é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. http://www.ms.sapientia.ro/~lszabo/oprendszer1/doc/11_folyamatok.pdf

Folyamatazonosító (process id vagy pid) 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) 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 http://www.ms.sapientia.ro/~lszabo/oprendszer1/doc/11_folyamatok.pdf

előtér (csak 1 folyamat) Folyamatok kezelése parancs & programindítás előtér (csak 1 folyamat) ‘CTRL+Z’ fg %jobnumber fg %jobnumber kill -STOP pid háttér – running háttér – stopped bg %jobnumber ‘CTRL+C’ kill %jobnumber done kill %jobnumber terminated

Programok indítása Előtérben Háttérben: <parancsnév> & sleep 10 Háttérben: <parancsnév> & sleep 20& nohup <parancsnév>: A program futása nem szakad meg a felhasználó kijelentkezésekor

Processzek befagyasztása, folytatása Futó folyamat befagyasztása: CTRL + Z vi CTRL + Z ps aux Előtérbe helyezés: fg [jobazonosító]% Háttérben folytatás: bg [jobazonosító]%

Processzek kezelése 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öveg-szerkesztőt, majd ezt lőjük ki a másik ablakból!

Processz erőforrás felhasználás time <parancsnév>: erőforrás felhasználási statisztika pl.: time finger strace <parancsnév>: rendszerhívások megjelenítése. Hibakereséshez pl: strace –p PID pl.:strace ls pl:strace –p 16543 - a figyelt folyamat azonosítója

Eseménykezelés (csapda) Trap A jelek elfogására és kezelésére szolgál a trap parancs, amelynek általános alakja a következő: 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. Feladat: A ctrl+c leütésére írjuk ki: Szia! Megoldás: trap ’echo Szia 2 Feladat: Szüntessük meg ezt a csapdát, „eseménykézelést”!: Megoldás: trap ’’ 2

Eseménykezelés (csapda)

Eseménykezelés (csapda) Feladat: A ctrl+c leütésére írjuk ki: Szia! Feladat: Szüntessük meg ezt a csapdát! Megoldás trap ’echo Hajrá ELTE!’ 2 trap ’’ 2 Feladat: A ctrl+c leütésére írjuk ki: Szia! Megoldás: trap ’echo Szia’ 2 Feladat: Szüntessük meg ezt a csapdát, „eseménykézelést”!: Megoldás: trap ’’ 2

Köszönöm a figyelmet!