950 likes | 1.09k Views
Linux. Linux kernel. Root felhasználó. Kell egy olyan szerep, amely mindenhez hozzáfér, mindent beállíthat - rendszergazda Unix-ban ez egy kitüntetett felhasználó, teljhatalommal (root)
E N D
Linux kernel JZsCs 2007
Root felhasználó Kell egy olyan szerep, amely mindenhez hozzáfér, mindent beállíthat - rendszergazda Unix-ban ez egy kitüntetett felhasználó, teljhatalommal (root) Nem lehet több rendszergazdai felhasználó, ami nem valós, illetve a feladatok sem oszthatók szét (részleges jogok) Több megoldás (pl. sudo), aktuális: RBAC (de ez még nem igazán terjedt el) JZsCs 2007
Indítás, bejelentkezés • VirtualPC • Debian (X nélküli) • Azonosító: • root / nik119 JZsCs 2007
Útvonal • "." aktuális könyvtár • ".." szülő könyvtár • "/" gyökér könyvtár JZsCs 2007
Standard fa /bin rendszerprogramok /usr/bin közérdekű felhasználói programok /etc a rendszer működéséhez és karbantartásához szükséges állományok és programok /etc/passwdfelhasználók azonosításához szükséges adatok egy része /tmp ideiglenes állományok elhelyezése /dev speciális állományok /home felhasználói könyvtárak JZsCs 2007
/dev/tty* a terminálok nevei, a „* ” helyén bármely karakter állhat a gép kiépítettségétől függően /dev/hd* merevlemez neve, a „* ” helyén alfanumerikus karakterek, elsősorban számok állnak /dev/fd* hajlékonylemezes egység neve /dev/mem állományként elérhető memória neve /dev/null különleges rendeltetésű állomány, ha olvasunk belőle, akkor azonnal az állomány végét érzékeljük, ha pedig írunk bele, akkor korlátlanul elnyel mindent anélkül, hogy bárhol is tárolná JZsCs 2007
Memória Szerencsére nincs felosztva, teljesen egyben kezeli. Virtuális memória külön partíción (swap partíció) JZsCs 2007
Könyvtár- és állománykezelés pwd az aktuális munkakönyvtár elérési úttal ellátott nevének kiírása ls [-altrR] könyvtár egy könyvtár tartalmának kilistázása ABC sorrendben -r a rendezés iránya fordított -R alkönyvtárak is rekurzívan -a a rejtett állományok is -l kiegészítő információk drwxrwxrwx ln user group size date time name -t módosítási idő szerinti rendezés JZsCs 2007
mkdir [elérési_út/]könyvtár egy új könyvtár létrehozásamkdir –p ./elso/masodik létrehozza az elso könyvtárat is cd [elérési_út/]könyvtár könyvtárváltás ln -s állománynév linknév link létrehozása -s szimbolikus link cat állomány1 [...állományN] állományok összefűzése: cat állomány1 állomány2 > állomány3 állomány kiíratása: cat állomány új állomány létrehozása: cat > állomány <CTRL>+<D> JZsCs 2007
rm kapcsolók állománynév állomány törlése -f nincs figyelmeztető üzenet -r könyvtárak törlése rekurzívan rmdir könyvtárnév üres könyvtár törlése !kitörölt állomány nem állítható vissza wc kapcsolók állománynév állomány jellemzőinek számlálása -c bájtok -l sorok -w szavak cp kapcsolók forrás cél állományok másolása -r rekurzív -s szimbolikus linket hoz létre másolás helyett (csak akkor működik, ha az aktuális könyvtárba másolunk) -f nincs figyelmeztető üzenet JZsCs 2007
find kezdőpont kifejezés állomány keresése a könyvtárrendszerben kezdőponttól lefelé - name minta név szerint - user név tulajdonos szerint grep kapcsoló minta állománynév minta előfordulását keresi állományokban -c csak a mintát tartalmazó sorok száma -i kis és nagy betű azonos -l csak állománynevek -n sorszám + sor -v mindent ami nem tartalmazza a mintát JZsCs 2007
mv kapcsolók forrás cél állományok átnevezése és/vagy mozgatása -f létezőt kérdés nélkül felülír -b mozgatás előtt biztonsági másolatot készít cél állomány vagy könyvtár more kapcsolók állomány... állomány tartalmának oldalakra tördelt megjelenítése a képernyőn -p nem görget, hanem lapoz -s több üres sorból egyet cmp kapcsolók áll1 áll2 állományok összehasonlítása -c a különböző bájtokat karakterként írja ki JZsCs 2007
sort kapcsolók állománynév állomány sorainak rendezése -b beveztő szóközt kihagy -c rendezettséget vizsgál -o állomány állományba írja az eredményt -r fordított sorrend JZsCs 2007
tar kapcsolók újnév állományok állományok/könyvtárak összecsomagolása és kibontása -t lista (teszt) -f lemezes álomány -x kibont -c becsomagolás (újat létrehoz) -r becsomagolás (hozzáfűz) -A hozzámásol tar állományt --delete töröl -W ellenőriz -v kiírja az állományneveket a képernyőre JZsCs 2007
Tar • tar –cvf ujnev.tar allomanyok • tar –xvf ujnev.tar • tar –tvf ujnev.tar JZsCs 2007
File • file fájlnév megadja az állomány típusát a magic fájl alapján JZsCs 2007
LESS Fájl tartalmának a megtekintése úgy, hogy abban közlekedni is lehet. JZsCs 2007
Állományrendszerek beiktatása és leválasztása • felcsatolás az állományrendszer valamely könyvtára helyére • általában rendszergazdai jogosultság szükséges • felcsatolás mount • lecsatolás umount JZsCs 2007
Ext2 FS inode táblák ... inode 1 ... ... ... 2 ... 3 4 ... 5 6 7 8 9 10 11 12 ... 13 ... ... ... JZsCs 2007
Háttértárak /dev könyvtár eszközfájljain keresztül érhetők el. /dev/fd0 floppy lemez (DOS-ban A:) /dev/fd1 floppy lemez (DOS-ban B:) IDE winchesterek, IDE CD meghajtók /dev/hda 1. csatorna master /dev/hdb 1. csatorna slave /dev/hdc 2. csatorna master /dev/hdd 2. csatorna slave Partíciók: /dev/hdc3 a 2. csatorna master lemezének 3. partíciója JZsCs 2007
PORTOK /dev/ttyS0 a DOS alatti COM1 soros port. /dev/ttyS1 a DOS alatti COM2 soros port. /dev/lpt0 a DOS alatti LPT1 párhuzamos port. /dev/psaux A PS/2 port JZsCs 2007
Mount /dev/hda1 /dev/hda2 JZsCs 2007
Fájl rendszerek hozzáépítése(mount) • Minden egyetlen gyökérkönyvtárból érhető el:merevlemezen levő fő könyvtárfa • Az egyes tároló eszközök (floppy, CD, stb.) fájljai 1-1 fájlrendszerbe vannak szervezve, melyek mindaddig elkülönülnek a könyvtárfától, míg nem csatoljuk őket ahhoz, ekkor részfává válnak • Hozzáépítés (mount-olás): mounteszközhozzáépítési -pont # mount /dev/fd0 /mnt/floppy floppy hozzáépítése # mount /dev/hda4 /mnt merevlemez partíciók hozzáépítése JZsCs 2007
A df parancs • Eszköznevek megadásával kilistázza • az összes fájl-rendszert • az összes partíciót • a szabad hely méretét az egyes fájlrendszerekben • a hozzáépítési pontot az egyes fájlrendszerekben $df Filesystem 1024-blocks Used Available Capacity Mounted on /dev/hda3 297635 169499 112764 60% / /dev/hda1 205380 182320 23060 89% /mnt/dos /dev/hdc 637986 637986 0 100% /mnt/cdrom JZsCs 2007
Leválasztás (unmount) umounteszközhozzáépítési –pont • Nem a meghajtó, hanem maga az adathordozó kerül mount-olásra, unmount-olásra !!! • A floppy-t, cd-t sem lehet csak úgy kivenni! • Kilépéskor minden automatikusan leválasztásra kerül # umount /dev/fd0 /mnt/floppy floppy leválasztása # umount /dev/cdrom /dev/mnt cd leválasztása JZsCs 2007
A védelmi rendszer uid - user identifier gid - group identifier /etc/passwd uid és alap gid /etc/group felhasználó-csoport összerendelések Felhasználói körök: • tulajdonos • csoporttárs • többiek su -superuser (uid=0) JZsCs 2007
Jogok • olvasás - állomány tartalmának megtekintése, könyvtár esetén a tartalom kilistázása • írás - állomány bővítése, kicserélése, megváltoztatása, ill. könyvtár esetén bejegyzés létrehozása, törlése • végrehajtás - állomány futtatás, könyvtárban keresés, belépés az adott könyvtárba cd-vel, és informálódás az ls utasítás segítségével egy konkrét könyvtár vagy állomány meglétéről és tulajdonságairól JZsCs 2007
Védelmi kódsor trwxrwxrwx t - bejegyzés típusa b blokkorientált speciális állomány (pl. /dev/hda1) c karakterorientált speciális áll. (pl. /dev/stty4) d alkönyvtár-bejegyzés l szimbolikus keresztkapcsolat - egyszerű állomány • tulajdonos • csoporttárs • bárki JZsCs 2007
Jogadás Futtatási időre • setgid bit • setuid bit Állandó • chmod • chown • chgrp JZsCs 2007
Jogosultságok - fájl d könyvtár l link R olvasható(4) w írható(2) x futtatható(1) Gazda jogai Csoport jogai Többi felhasználó jogai JZsCs 2007
chown újtulajdonos állománynév állomány tulajdonosának megváltoztatása chgrp újcsoport állománynév állomány csoportjának megváltoztatása chmod kapcsoló[kinek] op jogok [op jogok] jogok beállítása - adása kinek : u az aktuális felhasználónak g a csoportnak o a többieknek op+ jogokat adunk hozzá - jogokat veszünk el = pontosan JZsCs 2007
jogok a következő betűk kombinációi lehetnek: r olvasási jog w írási jog x végrehajtási jog X végrehajtási jog, ha az állomány könyvtár vagy ha már van másik x bitje; s setuid vagy setgid mód chmod g-w állomány chmod +x állomány chmod 622 állomány JZsCs 2007
Jogosultság – Speciális flagek • sticky bit: chmod +t fnev • Fájloknál már nem használt (memóriában tartás) • Könyvtárra beállítva: a könyvárban levő fájlokat csak a tulajdonos törölheti (rendszerfüggő) • példa erre a /tmp, közös ftp könyvtárak • suid (set user id): chmod +s fnev • Futtatható fájloknál a futtató felhasználó a fájl tulajdonosával lesz azonos (jogosultság szempontjából) • pl: másolás root által írható helyre • veszélyes! shell scriptnél különösen • sgid: • Mint a suid, csak csoporttal JZsCs 2007
Alapértelmezett bitek • umask maszk az umask környezeti változó értékét maszk&0777-re állítja • azopen()használja az újonnan létrehozott állományok jogainak meghatározására • azopen() modeparamétere pl. • umask 022 • mode 0666 • az új állomány jogai: • 0666&~022=110 110 110&111 101 101 • 110 100 100 • rw-r--r-- JZsCs 2007
Folyamatok JZsCs 2007
ps –A információk folyamatokról kill kapcsolók PID jel küldése folyamathoz kill -9 PID (folyamat leállítása) -s szám jel küldése -l jel lista date dátum és idő kiírása utasítás& utasítás a háttérben fut JZsCs 2007
Háttér – előtér időzítés programnév& program futtatás a háttérben fg háttérben futó folyamat előhozása JZsCs 2007
Átirányítás • Standard input more < help.txt • Standard output ls -la > lista.txt • Standard hibakimenet find / -name *.html 2> hibák JZsCs 2007
Parancs csatolás Az első parancs standard kimenete lesz a második parancs standard bemenete. ls -la *.tar| wc -l A képernyőn megjelenik az aktuális könyvtárban található tar kiterjesztésű állományok száma JZsCs 2007
Helyettesítő karakterek *0 vagy több tetszőleges karakter ? egy darab tetszőleges karakter [afu]a vagy f vagy u [135] 1 vagy 3 vagy 5 [a-g]a-tól g-ig terjedő intervallumból egy karakter [1-6]1-től 6-ig terjedő intervallumból egy karakter [a-g1-6] az a-tól g-ig vagy az 1-től 6-ig terjedő intervallumból egy karakter JZsCs 2007
Semlegesítő karakterek1 \ a mögötte álló karaktert védi cat > ab\*c '..' shell behelyettesítéstől védi a közrefogott szöveget find / -name *.c 2>hibák | grep -l 'int len' megkeresi azokat a c kiterjesztésű állományokat, amelyek tartalmazzák az idézőjelek között megadott szöveget JZsCs 2007
Semlegesítő karakterek2 ".."shell behelyettesítéstől védi a közrefogott szöveget, de a környezeti változókat behelyettesíti ls "${HOME}/ab*c" megnézi, hogy van-e a saját könyvtárunkban ab*c nevű állomány `..`kiértékeli a közrefogott parancsot, és annak értékét helyettesíti az idézőjeles kifejezés helyére echo Ebben a könyvtárban `ls | wc -l` darab bejegyzés található JZsCs 2007
Példa • ls /dev/t*[3-8] • ls /dev/*[0-9]* | wc -l JZsCs 2007