Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Linux. JZsCs 20072 Linux kernel JZsCs 20073 4 5.

Hasonló előadás


Az előadások a következő témára: "Linux. JZsCs 20072 Linux kernel JZsCs 20073 4 5."— Előadás másolata:

1 Linux

2 JZsCs 20072 Linux kernel

3 JZsCs 20073

4 4

5 5

6 6

7 7

8 8

9 9 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)

10 JZsCs 200710 Indítás, bejelentkezés VirtualPC –Debian (X nélküli) Azonosító: –root / nik119

11 JZsCs 200711 Útvonal "." aktuális könyvtár ".." szülő könyvtár "/" gyökér könyvtár

12 JZsCs 200712 Standard fa /binrendszerprogramok /usr/binközérdekű felhasználói programok /etca 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 /tmpideiglenes állományok elhelyezése /devspeciális állományok /homefelhasználói könyvtárak

13 JZsCs 200713 /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/nullkü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á

14 JZsCs 200714 Memória Szerencsére nincs felosztva, teljesen egyben kezeli. Virtuális memória külön partíción (swap partíció)

15 JZsCs 200715 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

16 JZsCs 200716 mkdir [elérési_út/]könyvtár egy új könyvtár létrehozása mkdir –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 +

17 JZsCs 200717 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

18 JZsCs 200718 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

19 JZsCs 200719 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

20 JZsCs 200720 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

21 JZsCs 200721 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

22 JZsCs 200722 Tar tar –cvf ujnev.tar allomanyok tar –xvf ujnev.tar tar –tvf ujnev.tar

23 JZsCs 200723 File file fájlnév megadja az állomány típusát a magic fájl alapján

24 JZsCs 200724 LESS Fájl tartalmának a megtekintése úgy, hogy abban közlekedni is lehet.

25 JZsCs 200725 Á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

26 JZsCs 200726 Ext2 FS inode táblák inode 2 3 4 5 6 7 8 9 10 11 12 13 1...

27 JZsCs 200727Há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

28 JZsCs 200728 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

29 JZsCs 200729Mount /dev/hda1 /dev/hda2

30 JZsCs 200730 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): mount eszkö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

31 JZsCs 200731 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/hda3297635 16949911276460%/ /dev/hda1205380 182320 2306089% /mnt/dos /dev/hdc637986 637986 0 100% /mnt/cdrom

32 JZsCs 200732 Leválasztás (unmount) umount eszkö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

33 JZsCs 200733 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)

34 JZsCs 200734 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

35 JZsCs 200735 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

36 JZsCs 200736 Jogadás Futtatási időre setgid bit setuid bit Állandó chmod chown chgrp

37 JZsCs 200737 Jogosultságok -fájl d könyvtár llink Gazda jogai Csoport jogai Többi felhasználó jogai Rolvasható(4) wírható(2) xfuttatható(1)

38 JZsCs 200738 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

39 JZsCs 200739 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

40 JZsCs 200740 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

41 JZsCs 200741 Alapértelmezett bitek umask maszk az umask környezeti változó értékét maszk&0777 -re állítja az open() használja az újonnan létrehozott állományok jogainak meghatározására az open() mode paramé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--

42 JZsCs 200742 Folyamatok

43 JZsCs 200743 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

44 JZsCs 200744 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

45 JZsCs 200745 Átirányítás Standard input more < help.txt Standard output ls -la > lista.txt Standard hibakimenet find / -name *.html 2> hibák

46 JZsCs 200746 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

47 JZsCs 200747 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

48 JZsCs 200748 Semlegesítő karakterek 1 \ 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

49 JZsCs 200749 Semlegesítő karakterek 2 ".." 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ó

50 JZsCs 200750 Példa ls /dev/t*[3-8] ls /dev/*[0-9]* | wc -l

51 JZsCs 200751 Felhasználókezelés who név, terminál, bejelentkezés dátuma, ideje whoami saját felhasználói név w rendszerindítás ideje, bejelentkezett felhasználók száma, terhelés, felhasználók, terminálok, honnan jelentkeztek be, mikor, mit csinálnak

52 JZsCs 200752 Felhasználókezelés /etc/passwd : felhasználói információk (nyílt szöveg) /etc/shadow : jelszavak (kódolt) /etc/group : csoportok adatai groupadd : csoportot hozhatunk létre vele useradd: felhasználót adhatunk a rendszerhez /home/usernev -en belül lesznek a felhasználók alaphelyzetben nem jön létre /etc/default/useradd /etc/skel - ez a könyvtár lesz a home tartalma User létrehozása Unix alatt csak néhány konfigurációs állomány módosításából áll.

53 JZsCs 200753 /etc/shadow username:password:last_change:may_change:must_ch ange:warn_days:expire_date:disable:reserved

54 JZsCs 200754 Csoport létrehozása groupadd gname groupadd -g –GID (group ID) megadása - 1000 fölött a tipikus

55 JZsCs 200755 Felhasználó hozzáadás useradd user1 –létrehoz egy felhasználót (beállítások nélkül) useradd -D : kiírja az alapértékeket useradd -g csoport1 user3 –elsődleges csoport useradd -g csoport1 -G csop2,csop3,csop4 user4 –másodlagos csoportok is useradd -m user5 –home könyvtár automatikus létrehozása useradd -p kod user6 –megadhatunk egy jelszót

56 JZsCs 200756 useradd -gusers -Gmgmt -s/bin/shell -pxxxx -d/home/roger -m roger Options: -d home directory -s starting program (shell) -p password -g (primary group assigned to the users) -G (Other groups the user belongs to) -m (Create the user's home directory Példa

57 JZsCs 200757 Rendrakás passwd –saját jelszavunk megváltoztatása passwd usernev –másik felhasználó jelszavának megadása groupdel csoportnev userdel usernev

58 JZsCs 200758 BASH (Bourne-Again Shell) Bourne shell – (sh) (Stephen Bourne) – az első nagy, majdnem standard a UNIX rendszereken a bash – (bash) az sh kibővítése visszafele kompatibilis az sh-val #!/bin/sh – ez a script első sora

59 JZsCs 200759 BASH (Bourne-Again Shell) milyen parancshélyt használunk? echo $SHELL segítség a parancsokról: date --help man date

60 JZsCs 200760 Parancsok sort –-r - fordított sorrendben tail –+nelső n sor megjelenítése –-nutolsó n sor megjelenítése –-ffolyamatos megjelenítés

61 JZsCs 200761 Aritmetika expr 1 + 3 $ expr 2 - 1 $ expr 10 / 2 $ expr 20 % 3 $ expr 10 \* 3 $ echo `expr 6 + 3`

62 JZsCs 200762 Idézőjelek ” (2)karaktersor, nem értelmezi a speciális karaktereket (kivétel $ és \ ) echo -e ”a\tb\n\ax\a\naaaaaa\rbbb” ‘ (1)karaktersor, változatlanul marad ` (7)parancsként értelmezi, végrehajtja echo ”A mai dátum: `date`”

63 JZsCs 200763 % echo 'What the *heck* is a $ doing here???' What the *heck* is a $ doing here??? % echo "Is your home directory $HOME?" Is your home directory /home/kreskin/u0/barnett? % echo "Your current directory is `pwd`" Your current directory is /home/kreskin/u0/barnett Idézőjelek

64 JZsCs 200764 Néhány környezeti változó $HOME $USERNAME $PWD $PATH $BASH_VERSION $SHELL Felhasználó által definiált változók n=10 helyes (Bourne Shell) set n=10 helyes (C Shell) n = 10 helytelen echo $n Változók törlése unset n

65 JZsCs 200765 Hivatkozás változókra ${VALTOZO_NEVE} $ VALTOZO_NEVE Példa: $ PATH=${PATH}:${XYZ_DIR}

66 JZsCs 200766 Script paraméterek $#parancssori argumentumok száma $0a script neve $1első paraméter $2második $*az összes argumentum

67 JZsCs 200767 Exit státusz $?a hibakódot tárolja (0 – OK) (!=0 Error) a következő utasítás felülírja date echo $? rosszparancs echo $?

68 JZsCs 200768 Értek beolvasása read változónév Példa: echo "Your first name please:„ read fname echo "Hello $fname, Lets be friend!"

69 JZsCs 200769 Parancsok összefűzése Több parancs végrehajtása parancs1;parancs2;parancs3 Példa: date;who

70 JZsCs 200770 Feltétel iffeltétel then parancs1; else parancs2; fi

71 JZsCs 200771 Összehasonlítások 5 > 2 a 5 c > 5 + 30 -1

72 JZsCs 200772 Feltétel 0 - igaz 1,2,…-hamis -eqegyenlő if test 5 -eq 6 [ 5 -eq 6 ]

73 JZsCs 200773 -nenem egyenlő -ltkissebb -lekissebb vagy egyenlő -gtnagyobb -genagyobb vagy egyenlő

74 JZsCs 200774 Állományok -snem üres -flétező állomány -dlétező könyvtár -wírható állomány -rolvasható állomány -xfuttatható If [ -f „$1” ] then echo „$1 létezik” fi

75 JZsCs 200775 Ciklus while feltétel do parancsok done

76 JZsCs 200776 While n=0 while [ num –lt 10 ] do echo $num num=$((num+1)) done

77 JZsCs 200777 for For változó in lista do parancs; done

78 JZsCs 200778 for for valtozo in alma szilva korte do echo $valtozo done

79 JZsCs 200779 for ciklus for (( i = 0 ; i <= 5; i++ )) do echo $i done

80 JZsCs 200780 Ciklus ellenőrzés Continue – megszakítja az aktuális iterációt, folytatja a következővel Break – megszakítja a teljes ciklust

81 JZsCs 200781 Ciklus ellenőrzés a=0 while [ "$a" -le "$LIMIT" ] do a=$(($a+1)) if [ "$a" -gt 2 ] then break fi echo -n "$a „ done echo; exit 0

82 JZsCs 200782 case Case „$változó” in „feltétel1” ) parancs;; „feltétel2” ) parancs;; esac

83 JZsCs 200783 #!/bin/sh case $2 in p) chmod 777 $1;; [1-4a-b][!a-b]?) ls -l;; x|X) ps -ew) who;; esac

84 JZsCs 200784 #!/bin/sh case $1 in proc) cat /proc/cpuinfo;; mem) cat /proc/meminfo;; hdd) if [ -d /proc/ide/hda ]; then echo Model: `cat /proc/ide/hda/model`; echo Cache size: `cat /proc/ide/hda/cache`; fi;; mnt) cat /proc/mounts;; esac

85 JZsCs 200785 if [ -f /etc/shells ] then echo „Elérhető shellek: „ echo "`cat /etc/shells`" fi

86 JZsCs 200786 Példa for fis in `find $1 -perm -u=rx -type f` do echo $fis # kiírjuk az állomány nevét head -$2 $fis # kiírjuk az első $2 sort az állományból done

87 JZsCs 200787 Példa if [ ! $# -eq 2 ] then echo usage: shell1 dir nr exit 1 fi

88 JZsCs 200788 Példa #!/bin/sh n=0 for i in * do if [ -f $i ]; then n=`expr $n + 1` fi done echo $n allomany van a katalogusban

89 JZsCs 200789 Cut parancs grep "user" /etc/passwd | cut -d: -f5 | cut -d, -f1 for x in `ps -e | grep "sleep" | cut -c1-5` do kill $x 2>/dev/null done

90 JZsCs 200790 Folyamatok listázása felhasználók szerint ps -u ps U pkill –KILL –u user // felhasználó kill pgrep –u root sshd // az sshd nevezetű és root tulajdonosú folyamatok listázása

91 JZsCs 200791 Példa Egy napnál régebben készült fájlok törlése for i in $(find "$1" -type f -atime +1); do echo $i rm $i done

92 JZsCs 200792 Megosztott mappa mountolása mount -t cifs //192.168.1.120/Linux -o username=myntaccount,password=mypassword /mnt/ntfs

93 JZsCs 200793 Regularis kifejezések "[xyz]" matches any one of the characters x, y, or z. "[c-n]" matches any one of the characters in the range c to n. "[B-Pk-y]" matches any one of the characters in the ranges B to P and k to y. "[a-z0-9]" matches any single lowercase letter or any digit. "[!b-d]" matches any character except those in the range b to d.

94 JZsCs 200794 Tömbök array=(red green blue yellow magenta) len=${#array[*]} echo "The array has $len members. They are:" i=0 while [ $i -lt $len ]; do echo "$i: ${array[$i]}" let i++ done

95 JZsCs 200795 Példa Ftp-re #!/bin/sh HOST='ftp.users.qwest.net' USER='yourid' PASSWD='yourpw' FILE='file.txt' ftp -n $HOST < { "@context": "http://schema.org", "@type": "ImageObject", "contentUrl": "http://images.slideplayer.hu/2054076/8/slides/slide_94.jpg", "name": "JZsCs 200795 Példa Ftp-re #!/bin/sh HOST= ftp.users.qwest.net USER= yourid PASSWD= yourpw FILE= file.txt ftp -n $HOST <


Letölteni ppt "Linux. JZsCs 20072 Linux kernel JZsCs 20073 4 5."

Hasonló előadás


Google Hirdetések