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

Operációs Rendszerek Önállóan feldolgozandó részek, amelyekből dolgozat írása fog történni a harmadik héten.

Hasonló előadás


Az előadások a következő témára: "Operációs Rendszerek Önállóan feldolgozandó részek, amelyekből dolgozat írása fog történni a harmadik héten."— Előadás másolata:

1 Operációs Rendszerek Önállóan feldolgozandó részek, amelyekből dolgozat írása fog történni a harmadik héten

2 Felhasználók, csoportok típusai
Rendszergazda által létrehozott felhasználók, csoportok Beépített felhasználók, csoportok Pl.: Rendszergazda, Vendég, stb. Rendszergazdák, Vendégek, stb. Speciális csoportok Az OS által automatikusan karbantartott tagság: Pl. interaktív – az éppen bejelentkezett felhasználók

3 Felhasználókezelés Számítógép-kezelés  Rendszereszközök
Helyi felhasználók és fiókok mappa

4 Felhasználók adatai Általános Tagság Melyik beállítás/állapot mire jó?
Teljes név, Leírás A köv. bejelent. meg kell változtatni a jelszót A jelszót nem lehet megváltoztatni A jelszó soha nem jár le A fiók le van tiltva A fiók zárolt Tagság Melyik beállítás/állapot mire jó? Mi az hogy zárolt? Zárolt != Tiltott

5 Jótanácsok A rendszergazda fiókot telepítés után azonnal nevezzük át! (brute-force attack) Ne rendszergazdai jogosultságokkal használjuk a gépet! (vírusok, worm-ok, trójaik, stb.)

6 1. Feladat Hozzon létre egy ‘probacsoport’ nevű csoportot!
Hozzon létre egy ‘proba’ nevű felhasználót, jelszava ‘proba’ legyen! Állítsa be, hogy a ‘proba’ felhasználó a ‘Felhasználók’ és a ‘probacsoport’ csoport tagja legyen! Jelentkezzen be a ‘proba’ felhasználó nevében!

7 NTFS jellemzői Jogosultságkezelés Naplózás Kvótakezelés Titkosítás
Öröklődés

8 NTFS jogosultságok – 1 Egyszerű fájlmegosztás kikapcsolása
A könyvtáron jobb gomb  Biztonság fül

9 NTFS jogosultságok – 3 Felhasználónak, vagy csoportnak adok jogot? Miért? Engedélyezés  Megtagadás Melyik az erősebb? Tulajdonos jogai

10 2. Feladat Hozzon létre a c:\hallgato könyvtár alatt egy saját könyvtárat, másoljon ide néhány fájlt! Szakítsa meg a jogok öröklődését! Állítsa úgy be a könyvtár jogait, hogy ahhoz csak a ‘probacsoport’ tagjai férjenek hozzá! Próbáljon belépni a mappába! Sikerült? Jelentkezzen be a ‘proba’ név alatt! Így sikerül elérni a mappát?

11 Könyvtárak megosztása
A mappán jobb gomb  Megosztás Megosztási név Felhasználók számának korlátozása (!) Engedélyek

12 Könyvtárak megosztása
Helyi bejelentkezésnél érvényes jog Megosztás jog

13 Operációs Rendszerek I.
Ismerkedés a parancssorral Fájlkezelés parancssorból Egyszerű parancsfájlok

14 A parancssor (cmd) Jellemzői Majd minden OR alatt van valami hasonló
Használata esetenként gyorsabb, mint a GUI alapú megoldásoké Lehet scriptet írni Kevesebb erőforrás igény (mint GUI esetén) Van history (előzmények) könnyebb parancsot ismételni log is egyben Parancsok és kapcsolók pontos szintaxisát ismerni kell (de…) De: van on-line help!

15 A parancssor indítása: futtatás  cmd shift + jobb klikk könyvtáron:
"Open Command Window Here" Indulási könyvtár: indítás helye / HOMEPATH kilépés: exit navigáció Parancssorban mozgás: kurzor, HOME és END ↑ és ↓  history F7  parancs history „ablakban” fájlnév kiegészítés: TAB Teljes képernyő: bal ALT+ENTER

16 Ablak megjelenése Indítási paraméterek
/c : egyetlen (megadott) parancs végrehajtása /t:fg : színek beállítása (pl. 16) /e:on : parancskiterjesztés engedélyezése Stb. (lásd cmd /? és HELP) Címsoron jobb klikk  tulajdonságok Működési környezet beállítása Tippek: HELP „To configure the command prompt” title parancs: ablak címének megadása

17 Parancsok típusai belső: külső parancsok  másik exe-t futtat le:
cmd.exe tudja pl.: dir copy külső parancsok  másik exe-t futtat le: pl.: sort.exe  c:\Window\System32\sort.exe Vagy nem, ez telepítéstől függ!

18 Parancsok felépítése Parancsnév [kapcsolók] [paraméterek]
pl: copy /y fajl1 fajl2 Parancsok működése kapcsolókkal (/kapcsolo) módosítható Kapcsolók egyidejű használata parancsfüggő (HELP), lehetnek egymást kizáró kapcsolók is Általában mindig van: /? Ha a program mindenképpen vár paramétert, de nem adjuk meg hibajelzés Egyszerre akár több paraméter is átadható (vagy éppen átadandó)

19 Segítség Források Konvencionális kapcsoló: /? help „parancsnév”
Start menü – Segítség és támogatás Referencia: „Command-line reference A-Z”, „Command shell overview” Jelölések COPY [/d] [/v] [/n] [{/y|/-y}] [/z] [{/a|/b}] Source [{/a|/b}] [+ Source [{/a|/b}] [+ ...]] [Destination [{/a|/b}]] COPY: a parancs Source, Destination: paraméterek /d, /v, stb. : kapcsolók [/d] [destination] : opcionális elem {/a|/b} : egymást kizáró (együtt nem használható) elemek

20 Fontosabb parancsok echo: üzenet írása a képenyőre
echo Hello vilag > uzenet.txt : fájl készítés dir: könyvtár tartalmának listázása cd: munkakönyvtár lekérése / beállítása copy: fájlok másolása move / rename: fájlok mozgatása, átnevezése mkdir, rmdir: könyvtár létrehozás, törlés edit: minimal editor del: fájlok törlése

21 Gyakorlás Alapok On-Line help
Indítsa el a parancsértelmezőt (cmd) Állítson be kék háttért és sárga betűket Az ablak címét állítsa át: „parancsaim”-ra On-Line help Hogyan lehet a „dir” parancsot úgy futtatni, hogy az csak a fájlok neveit írja ki? (/B) Melyik paranccsal lehet a c: meghajtó könyvtárstruktúráját (fát) kiíratni? Alapvető parancsok (minden lépés után ellenőrizze az eredményt) Hozzon létre egy „munkáim” könyvtárat Ebben hozzon létre egy „valami.txt” fájl Készítsen másolatot „fontos.txt” néven A „valami.txt” fájl nevezze át „nemfontos.txt” névre Törölje le a létrehozott fájlokat és a könyvtárat

22 Fájlok és könyvtárak Diszk és könyvtárstruktúra (részletek később)
Diszkeket betűjelükkel azonosítjuk (pl. c:) Diszkeken fa struktúrájú könyvtár-rendszer Az egyes könyvtárak közötti elválasztójel: ‘\’ Kitűntetett helyek (könyvtár struktúrában) Gyökér (kiinduló) könyvtár, jele: \ Munkakönyvtár (aktuális könyvtár) Felhasználó „HOME” könyvtára (HOMEPATH környezeti változó) Fájl elérési utak megadása abszolút elérés: gyökérkönyvtártól, a fát végigjárva adjuk meg Relatív megadás: a munkakönyvtárhoz képest (relatív) adjuk meg Hivatkozás az aktuális könyvtárra: ‘.’ Hivatkozás a szülő könyvtárra: ‘..’ Elérési út megadása parancsoknál Abszolút vagy relatív Elérés keresési út (PATH környezeti változó) segítségével Ha nincs kiterjesztés: behelyettesít (exe, com, cmd, bat, stb.)

23 Környezeti változók Különféle azonosítók tárolására alkalmas
pl. SystemRoot, windir, UserName, PATH Sajátgép/Tulajdonságok/Speciális/Környezeti változók Kétféle környezeti változó Felhasználó változói Rendszerváltozók Használatuk parancssorban Lekérdezés: set Megadás set PATH=c:\mydir set PATH=%PATH%;c:\mydir set ALMA=%PATH%;c:\mydir Hivatkozás a változóra: %név% echo %ALMA% set parancs csak az aktuális cmd ablakban él. setx : mindenhol elérhető változót hozhatunk létre vele

24 Gyakorlás PATH Egyéb változók
Készítsen másolatot a „notepad.exe” fájlról (c:\windows\system32) a saját könyvtárába „notesz.exe” néven Az elérési út megváltozatásával biztosítsa, hogy a „notesz.exe” bárhonnan elindítható legyen Egyéb változók Hozzon létre egy munkakönyvtárat, majd egy „enkonyvtaram” változót, amely értékként a könyvtár elérési útját tartalmazza! Az „enkonyvtaram” változó használatával másolja át a Windows system32 könyvtárában található összes „com” típusú fájlt a létrehozott könyvtárba! Törölje le az „enkonyvtaram” tartalmát és magát a könyvtárat is!

25 Állománynevek Hossza legfeljebb 255 karakter lehet
Tartalmazhat szóközt és pontokat (többet) Tartalmazhat ékezetes betűket Tiltott karakterek: ? * \ / : < > | Fájltípusok: kiterjesztés alapján dől el Kiterjesztés az utolsó pont mögött álló rész (lehet több, mint 3 karakter) a „beépített” típusok (exe, cmd, stb.) mellett az alkalmazások is regisztrálhatnak saját típusokat (asszociáció) Kis és nagybetűt megőrzi, de fájlok kezelésekor nem veszi figyelembe Hosszú nevekhez rövid (8.3) változatú név létrehozása automatikusan megtörténik További tudományok: Kis és naygbetű: alma.doc és Alma.doc nem lehet egy könyvtárban!

26 A .txt fájlnévkiterjesztéshez tartozó fájltípustársítás törléséhez a következőt kell beírnia:
FTYPE rtffile="C:\Program Files\Windows NT\Accessories\WORDPAD.EXE" "%1" ASSOC .rtf=rtffile

27 „Gondok” az állománynevekkel
Szóközök a névben: honnan „tudja” a parancs? Forrás: elso masodik Cél: harmadik copy elso masodik harmadik (3 paraméter) Megoldás: idézőjelek használata Kis és nagybetűk „Idegen” rendszereknél (pl. Unix) gondokat okozhat Nemzeti karakterek a nevekben A nevek az adott XP példány alapértelmezett kódlapját használva konvertálódnak Unicode-ról, ez pedig már a magyar ékezeteknél is gond lehet (pl. angol az alapértelmezett kódlap) – „Control Panel/Regional and Language/Advanced” Kis és nagybetűk: általában rossza gyakorlat erre nem figyelni (programokban kódolt fájlhivatkozások, html fájlok, stb.) Mindennapos probléma: Windows alatt (akár kézzel) szerkesztett weblap feltöltése Unix alapú Web szerverre (eléggé sok ilyen van) Ékezetes: pl. az „első” magyar kódlappal bíró XP esetén „első” de angolnál „elso” A Windows a nem Unicode-t használó programok számára a Unicode karaktereket visszakonvertálja 8 bites kódokra (méghozzá az alapéretlmezetten megadottra)

28 Elnevezési tippek ekezet nelkul (ha lehet)
space nélkül, helyette alulvonás (_) kis-nagybetűk egységesen név önmagáért beszéljen később is tudnunk kell mi az adott fájl ne legyen nagyon hosszú

29 Gyakorlás Nevükben szóközt tartalmazó fájlok Kis és nagybetű
Létrehoz: „alma”, „korte” és „alma korte” Töröl alma korte (idézőjel nélkül) Nézd meg mit csináltál… Töröl alma korte (most már rendesen) Kis és nagybetű Létrehoz: alma Másol: alma → Korte Másol: alma → KORTE Másol: alma → kORTE Hány körte van? Pontosan mi a neve?

30 Fájl és könyvtárkezelés
Könyvtárak tartalmának listázása: dir Aktuális (munka) könyvtár nevének lekérése: cd Aktuális (munka) könyvtár megváltoztatása: cd Könyvtárváltás „visszaúttal”: pushd/popd További parancsok Könyvtár létrehozása: mkdir Könyvtár törlése: rmdir Alapértelmezés: csak üres könyvtárat enged törölni! /S kapcsoló: rekurzív törlés, akkor is megy, ha nem üres a könyvtár /Q kapcsoló: /S esetén elnyomja a megerősítés kérést Átnevezés Filemon: cmd.exe indít, leszűr erre a programra, ezután parancssorból: notepad, alma – műveleteket néz

31 Navigáció a könyvtárszerkezetben
cd aktuális könyvtár lekérése cd c:\ - c:\ könyvtár felkeresése cd \ aktuális meghajtó gyökér könyvtára cd szülő könyvtár (egy szintet fel) c:\> cd d:\ - nem vált lemezt! cd d:\ & d: c:\> cd /D d:\ - így már vált lemezt pushd . - aktuális könyvtár berakása a verembe popd előző könyvtár előhúzása pushd c:\ - váltás a c lemez gyökerébe, közben elraktározva az aktuális könyvtárat - popd-re vissza Filemon: cmd.exe indít, leszűr erre a programra, ezután parancssorból: notepad, alma – műveleteket néz

32 Alapvető fájlműveletek
Másolás: copy copy <srcfile> <dstfile> Összefűzés: copy <srcfile> <+srcfile> … <dstfile> Mozgatás: move (átnevezésre is használható) move <srcfile> <dstfile> Átnevezés: rename/ren rename <src> <dst>, de dst esetében csak egy fájlnév állhat, elérési út nem (semmilyen módon)! rename c:\tmp\alma.txt korte.txt  rename c:\tmp\alma.txt c:\temp\korte.txt  Törlés: del/erase del <file> Rekurzív törlés (alkönyvtárakban is): del /s <file>

33 Fájlműveletek (folytatás)
Speciális „fájlok” – Unix örökség az eszközök eléréséhez (con, nul, COM1 stb.) copy con c:\tmp\alma.txt (CTRL-Z!) copy c:\tmp\alma.txt con copy c:\tmp\alma.txt nul xcopy Rekurzív másolás (üres könyvtárak is): xcopy a: b: /s /e Adott dátum után módosult fájlok másolása: xcopy \rawdata \reports /d: Ugyanez, dátum-korlát nélkül („egyszerű” copy): xcopy \rawdata \reports /u

34 Gyakorlás pushd/popd Copy Copy con xcopy
Milyen egyéb módon lehet biztosítani a pushd/popd szolgáltatását (legalább egy mélységig)? Copy 3 szöveges fájl létrehozása (pár soros) Fájlok összefűzése egy fájllá Copy con Fájl létrehozása „copy con” módon Fájl kiíratása „copy con” módon xcopy Készítse el a c:\konyvtar mappában a felhasználó saját könyvtárának könyvtárstruktúráját (fájlok nélkül, csak az üres könyvtárak)

35 Helyettesítő karekterek
Probléma: valamilyen műveletet (pl. másolás, törlés) egyszerre több fájlon szeretnénk végrehajtani Megoldás: ha a fájlok nevük alapján megkülönböztethetők, akkor a helyettesítő karakterek használata Helyettesítő karakterek: : tetszőleges számú karakter : egyetlen karakter Használatuk (pl): copy ab*cd?.e* d:

36 Szöveges fájlok Fájl létrehozása Fájl tartalmának megjelenítése
Notepad, edit (karakteres) copy con <fn> Fájl tartalmának megjelenítése type <fn> more <fn> copy <fn> con

37 Parancsok egymásutánisága
Többféle lehetőség &: mindig végrehajtásra kerül cmd1 & cmd2 &&: csak akkor kerül végrehajtásra, ha a művelet sikeres cmd1 && cmd2 ||: csak akkor kerül végrehajtásra ha a művelet sikertelen cmd1 || cmd 2

38 Parancsok egymásutánisága
Parancsok csoportosítása (parancs1 & parancs2) || (parancs3) (dir & echo hello & mkdir hello)

39 Gyakorlás Primitív „move” parancs összefűzéssel Előfeltétel ellenőrzés
Először másol, ha sikeres volt, akkor töröl Előfeltétel ellenőrzés Csak akkor próbálja kiírni egy fájl tartalmát (pl. more), ha az létezik Hibakezelés Ha a másolás parancs nem fut le, akkor írjon ki egy üzenetet (pl. „hát ez nem jött össze”)

40 Átirányítás Szabványos be- és kimeneti, hibacsatornák
A „jól nevelt” segédprogramok ezeket a csatornákat használják (nem közvetlen képernyő, billentyű elérést) A parancsértelmező képes a szabványos csatornák „eltérítésére” a program tudta nélkül! kimeneti csatorna átirányítása fájlba dir > alma.txt vagy dir >> alma.txt (utóbbi hozzáfűz) bemeneti csatorna fájlból sort < alma.txt Hibacsatorna átirányítása valami.exe 2> alma.txt Csatornába irányítás valami.exe 2>&1

41 Parancsösszefűzés, átirányítás
Összetett feladatok esetén az eredményt több parancs egymás utáni végrehajtása adja Minden parancs kimenetét fájlba irányítom, a következő parancs ebből dolgozik dir > alma & sort < alma Vagy: a parancsok ki- és bemenetét közvetlenül összekapcsolom dir | sort

42 Egyéb hasznos parancsok
sort find tree fc

43 Gyakorlás Fájlmásolás type paranccsal és átirányítással
Döntse el, hogy létezik-e az adott könyvtár, de a tartalmát ne írja ki /Fájl kimenetének (dir) átirányítása „nul” eszközre/ Kapcsolók használata nélkül tördelje fel képernyőkre a „dir” parancs kimenetét /pipe használata (dir és more kapcsolata)/ Készítsen el a „nevek.txt” fájlt, amelyet töltsön fel a laborban találhatók keresztneveivel. Rendezze ABC sorrendbe a neveket!

44 Gyakorlás Parancsok működésének kitalálása On-Line help segítségével (sort, fc, find)

45 Parancsfájlok Ami volt: parancsok összekapcsolása parancssorból (parancsok egymás utáni végrehajtása, függőséggel), az STDIO (átirányítás, pipe) Parancsfájlok: mi az? Általános célú parancsfájlok: parancssori paraméterek  Parancssori paraméteres példa További lehetőségek röviden: változók, elágazások, vezérlésátadás és ciklusok  Egyszerű példák

46 Batch fájlok Fájl kiterjesztése: bat vagy cmd
Fájl tartalma: különféle parancsok egymásutánja rem: comment pl: rem Ezt a sort ne hajtsd végre Ki fogja irni, de nem értelmezi echo off Alapból mindent kiír, ezzel a parancs kiírása megakadályozható globálisan Parancs elé ugyanezt teszi (arra a sorra) Escape karakter: ^

47 Gyakorlás Egyszerű parancsfájl létrehozása és futtatása: parancsok egymásutánja Előző órák során kipróbált parancs-kombinációk átírása parancs fájlba Echo off hatásának kipróbálása Megyjegyzések a fájlok elejére (ki készítette, mi a célja)

48 Változók Lásd Korábbi: környezeti változók!
létrehozás: set valtozonev=”valami” törlés: set valtozonev= A változóknak azonnal értéket kell adni Ez sem case sensitive Hatóköre az adott parancsfájl kisebb hatókör kell, akkor setlocal, endlocal Aritmetika: /a set ertek=4+4 – string-ként értelmezi set /a ertek=4+4: 8 (azaz összeadta)

49 Bemeneti paraméterek %0: fájl neve
%1, %2, … %9: kapcsolók, paraméterek %* - az átadott összes paraméter SHIFT parancs (paraméterek eltolása) SHIFT /3 eltolás a 3. paramétertől kezdődően Pl. a.cmd fájl, benne echo-k (echo %0, echo %1, stb.) a.cmd se ki se be se nyő : %0: a.cmd : %1: se : %2: ki stb.

50 Bemeneti paraméterek (mély)
Paraméter Leírás % bejövő paraméter. %~1 1. bejövő paraméter, " nélkül %~f1 A bejövő paramétert kiegészíti teljes útvonallá %~d1 Beadott paraméterből a meghajtó %1. %~p1 Beadott paraméter elérési útja %1. %~n1 Beadott paraméter fájlnév része. %~x1 Beadott paraméter kiterjesztése %1. %~s1 Kiegészítés a rövid fájlnév és kiterjesztés használatához (%~sx1 és %~sn1)

51 Bemeneti paraméterek*
@echo off echo fully qualified name %~f1 echo drive %~d1 echo path %~p1 echo filename %~n1 echo file extension %~x1 echo short filename %~sn1 echo short file extension %~sx1 echo drive and directory %~dp1 echo filename and extension %~nx1 c:\TEMP\>fuss.bat longfilename.long fully qualified name c:\TEMP\longfilename.long drive c: path \TEMP\ filename longfilename file extension .long short filename LONGFI~1 short file extension .LON drive and directory c:\TEMP\ filename and extension longfilename.long *:

52 Gyakorlás Előzőekben elkészített fájlok (pl. move megoldása copy és delete segítségével) kiegészítése Paramétereket parancssorból vegye Ha a forrásfájl nem létezik, akkor írjon ki valamilyen üzenetet (előzetes tesztelés) Egyszerű összeadó gép készítése Adja össze a paraméterként megadott két számot!

53 IF – feltételes elágazások
IF: feltételtől függő működés megvalósítása IF [NOT] condition (statement1) [else (statement2)] if "%1"=="a" (echo A) else (echo is not A) Amennyiben az első beadott paraméter (%1) értéke a, akkor az echo A ág fut le, különben a másik

54 Elágazások folytatás Összehasonlítások IF-ben - stringek
if "stringA"=="stringB" if "%varA%"=="stringA" if "%varA%"=="%varB%" Idézőjel használata hasznos /i kapcsoló használatával nem tesz különbséget a kis- és nagybetűk között Számok összehasonlítása EQU equal  NEQ not equal  LSS less than  LEQ less than or equal  GTR greater than  GEQ greater than or equal if „%varA%” lss ”%varB%”: igaz, ha varA kisebb, mint varB Bizonyos esetben működik a varA<varB, de nem mindig!

55 IF – további formák IF: speciális formulák
IF [NOT] condition (statement1) [else (statement2)] Alapértelmezett használat if [not] errorlevel number command [else expression] Előző parancs visszatérési értéke (ha 0, akkor IGAZ) if [not] exist FileName command [else expression] Ha létezik a fájl, akkor IGAZ if defined variable command [else expression] Ha a változó definiált, akkor IGAZ További speciális ifek: if /?

56 Elágazások folytatás IF „%ComputerName%”==”kalapacs” (echo „De fura nev”) else (echo „Nem is olyan fura nev”) „”-re vigyázni, nélküle nem megy! IF NOT: mint az IF, csak negálva IF [NOT] DEFINIED true, ha a megadott változó létezik: if not definied %temp% (set temp=”C:\temp”) DE: %1, %2, stb. mindig definiálva van! IF [NOT] EXIST: fájl létezését vizsgálja IF [NOT] ERRORLEVEL: elágazás parancs végrehajtási státusza (exit code) alapján DIR q:\ & IF ERRORLEVEL 1 (echo HIBA) Igaz, ha az exit code >= mint az érték Mi is az az exit code?

57 Bemeneti paraméter vizsgálata(mély)
if %1==a (echo ez bizony a) c:\>vizsgal.bat a működik c:\>vizsgal.bat "a" - nem jó - a != "a" if "%~1"=="a" %~1 : a paraméter körüli " eltávolítása Ilyenkor akkor is működik, ha a paraméter a és akkor is, ha "a"

58 Elágazások folytatás IF igaz és hamis ágához csak egy parancsot írhatunk (vagy láncolni)  goto Például: if "%1"=="1" goto alma if "%1"=="2" goto korte goto exit :alma echo „ez itt az 1-ag” :korte echo „ez itt a 2-ag” :exit

59 Gyakorlás Az első paraméterként kapott értéket vizsgáljuk meg. Amennyiben 12 a szám, írjuk ki, hogy "Tizenkettő", amennyiben nem, akkor írjuk ki, hogy "A beírt érték nem tizenkettő!" Move példa hibakezelés része átalakítása „if” szerkezetre Készítsen scriptet, amely az első paraméterként kapott fájlt ellenőrzi, hogy létezik-e. Amennyiben igen, akkor írassa ki, amennyiben nem, hozzon létre egy új fájlt a könyvtár fastruktúrájának tartalmával Négy alapműveletes számológép, RPN megadással (parancssori paraméterekkel)

60 Iteráció for [módszer] (változónév) in (fájllista) do (parancs)
Módszer lehet: /D: Könyvtárak iterálása /R: alkönyvtárakkal együtt /L: értéksorozat végigjárása /F: fájlon belül soronkénti iterálás Kapcsoló nélkül: Fájlok iterálása Példák for %%B in (*.*) do echo %%B for /d %%B in (*.*) do echo %%B for /l %%B in (0,1,10) %%B for /f %%B in (akarmi.txt) do echo %%B Parancssorban csak %B a változó

61 Iteráció for /d %%B in (%SystemRoot% %SystemRoot%\*) do echo %%B
for /d %%B in (%APPDATA% %APPDATA%\*) do %%C in (”%%B\*.txt”) do echo %%C)

62 Gyakorlás 1. Készítsen egy olyan scriptet, amely elszámol az első paraméterként megadott értéktől a másodikig. Módosítsa úgy a scriptet, hogy akkor is fusson le, ha az első paraméter nagyobb, mint a második! 2. Hozzon létre egy fájlt, melynek tartalma a következő legyen: Valami_1 Valami_2 Valami_3 Hozzon létre script segítségével könyvtárakat a fájlban szereplő nevekkel!

63 Bevezetés Windows XP többfelhasználós operációs rendszer
és nagyjából a többi Windows is A felhasználók csoportokba szervezhetők Egy felhasználó több csoportnak is a tagja lehet

64 Többfelhasználós rendszer
Kijelentkezés, bejelentkezés Felhasználóváltás (windows+L) Tartományos környezetben nem Futtatás mint jobb klikk runas parancs bármilyen futtatható állományra Tipp: TC futtatás mint rendszergazda A többfelhasználós rendszer miatt kell kijelentkezni és bejelentkezni, mint újdonság a doshoz képest. Windows gomb és L betű lenyomására lép elő a gyors felhasználóváltás, de ha be van lépve egy gép egy tartományba, akkor ez a funkció letiltódik. RunAs parancshoz elmondható tippként az a rendszergazdai gyakorlat, ha például jogosultságokat akarunk beállítani, de még nem tudjuk, hogy hogy lesz jó, és ki akarjuk próbálni, akkor macerás rendszergazdaként belépni, valamit állítani, majd kijelentkezni, userként be, kipróbálni, aztán vissza. Ehelyett lehet a korlátozni kívánt userként belépni, és a Total Commandert rendszergazdaként futtatni, ott akkor a fájljogokat be tudjuk állítani, és rögvest tesztelni is tudjuk egy sima fájlkezelővel.

65 Mi a felhasználó? Név SID
Minden felhasználónak van egy neve, ami alapján a humán operátor azonosítja SID Minden felhasználónak van egy SID-je (Security ID), ez alapján azonosítja a rendszer

66 Felhasználó hozzáadása (1)
Egyszerű felület: Vezérlőpult / Felhasználókezelés control userpasswords Szinte semmi nem állítható be 1-2 felhasználó esetén jó csak Ha a rendszer domainben van, akkor nem fog bejönni ez az ablak.

67 Felhasználókezelés (2)
Domainben alap control userpasswords2 Egyszerűsített csoportkezelés Kevesebb beállítási lehetőség Domain esetén ez jön be a vezérlőpultból, ha nincs domain, akkor pedig a control userpasswords2 paranccsal hívható elő.

68 Felhasználókezelés (3)
userpass..2-n Speciális lap mmc lusrmgr.msc Szabadon beállíható minden „Ipari” kivitel Ezt nézzük át

69 Felhasználókezelés (4)
Parancssorból is felvehető user: net user parancs pl: net user wg /add user létrehozása net localgroup admins /add csoport létrehozása net localgroup admins WG /add user csoporthoz hozzáadása Net parancsnak van még egy csomó másik funkciója is, itt most ezek érdekesek. Net user nev /add : nev user létrehozása. Net localgroup valami /add : valami nevu csoport létrehozása. Net localgroup valami nev /add: nev user valami csoporthoz hozzáadása.

70 Helyi felhasználók és csop.
Végrehajtható feladatok (user): Hozzáadás Lista exportálása Átnevezés: nem név alapján azonosít a windows, ezért lehet Törlés: nem javasolt (letiltás inkább) Új jelszó megadás: rendszergazda új jelszót oszt, érdemes megváltoztatni

71 Felhaszn. Beallítások Felhasználó nevén jk, Tulajdonságok
General: név, leírás, jelszó, letiltás Member Of: Csoporttagságok Profile: profile path: saját könyvtár (doc&sett) logon script: belépéskor futtatás home folder: kezdőkönyvtár megadás

72 Beépített felhasználók
Guest: vendég (legyen letiltva) Rendszergazda: célszerű átnevezni System: Maga a számítógép

73 Beépített csoportok (1)
Felhasználók Igen kevés jog Kiemelt felhasználók Több jog, de pl. rendszergazda felhasználót nem hozhat létre Rendszergazdák Mindenre kiterjedő jogosultságok Vendégek

74 Beépített csoportok-Spec.
Everyone Minden felhasználó tagja Authenticated Users „Rendes” felhasználók - system és guest nem tagja. Célszerű ezt használni. Creator Owner Egy erőforrás létrehozója vagy tulajdonosa

75 Általános jótanácsok Felhasználókat rendezzük csoportba
Felhasználót ne töröljük, zároljuk

76 Login módok beállítása
Change the way the users sign in Ha ki van kapcsolva, akkor alt+ctrl+delete megnyomása után lehet bejelentkezni (védelem) User accountnál állítható Group policy editorban is beállítható Registryből állítható HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\LogonType

77 Adminisztrátor felhasználó
Telepítés után az admin felhasználó látszólag elérhetetlen Klasszikus bejelentkező képernyőnél írjuk be az administrator (rendszergazda) nevet XP-s bejelentkezésnél Alt+ctrl+del kétszer

78 Felhasználók megjelenítése a welcome screenen
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\Use rList Ezen bejegyzéshez kell adni egy DWORD típust, aminek a neve legyen a felhasználó neve, az érték pedig 0, ekkor letilthatunk bizonyos felhasználókat a welcome screenből. Tiltsa le az Administratort az üdvözlőképernyőből!

79 Belépési házirendek Személyre szabható a belépési mód
Biztonsági házirendben állítható run: (mmc) gpedit.msc (csak professional)

80 Belépési házirendek mmc gpedit.msc -vel lehet belépni a group policy editorba. Itt szerintem érdemes lehet átlapozni pár dolgot, amiket be lehet mutatni a hallgatóknak. Ilyen bemutatandó lehet pl. a különféle jelszavakkal, felhasználói belépéssel kapcsolatos dolgok. Ez megtalálható: Helyi számítógép\Számítógép konfigurációja\Windows beállításai\Biztonsági beállítások\Fiókházirend\Jelszóházirend Ugyanitt lehet mutatni, hogy beállítható, hány rossz bejelentkezés után tiltson. (általában ugy van megfogalmazva, hogy: xy tiltása: nem konfigurált/engedélyezett/tiltott. Nem konfigurált az alap, akkor más beállítások adják az eredményt. Az engedélyezett beállításkor van letiltva az adott dolog (hisz engedélyezzük a tiltást), a tiltáskor pedig tiltjuk a tiltást.) A helyi házirendet is érdemes lehet itt megmutatni, azon belül a felhasználói jogosultságokat. Itt adható meg, hogy bizonyos muveleteket (gep leallitasa, oraatallitas stb.) melyik user(ek) hajthassanak végre. Meg ugy általában is el lehet játszogatni ezzel. Sok magyarázatot talán nem igényel, mivel meglehetősen jól megmagyaráz a név mindent. Ugyanitt elmondhatóak még gyakorlati példának a gazdagépek windowsjai, amelyek hosszas gpeditelés után lettek annyira használhatatlanok, amilyenek most (hallgato usernek szinte minden letiltva, kezdve a vezerlopult megjelenitestől a jobb egérgomb használatáig)

81 Account policy gpedit.msc –ben Enforce password history
Futtatás: mmc, windows\system32\gpedit.msc Enforce password history Maximum password age Minimum age Minimum length Complexity Taking Advantage of Windows XP’s Password Policies Windows XP maintains a small set of useful password-related policies that govern settings such as when passwords expire and the minimum length of a password. In the Group Policy editor, select Computer Configuration, Windows Settings, Security Settings, Account Policies, Password Policy. (In the Local Security Policy snap-in, select Security Settings, Account Policies, Password Policy.) There are six policies: · Enforce Password History This policy determines the number of old passwords that Windows XP stores for each user. This is to prevent a user from reusing an old password. For example, if you set this value to 10, the user can’t reuse a password until he or she has used at least 10 other passwords. Enter a number between 0 and 24. · Maximum Password Age This policy sets the number of days after which passwords expire. This only applies to user accounts where the Password Never Expires property has been disabled (see the ··previous section). Enter a number between 1 and 999. · Minimum Password Age This policy sets the numbers of days that a password must be in effect before the user can change it. Enter a number between 1 and 998 (but less than the Maximum Password Age value). · Minimum Password Length This policy sets the minimum number of characters for the password. Enter a number between 0 and 14 (where 0 means no password is required). · Password Must Meet Complexity Requirements If you enable this policy, Windows XP examines each new password and accepts it only if it meets the following criteria: it doesn’t contain all or part of the user name; it’s at least six characters long; and it contains characters from three of the following four categories: uppercase letters, lowercase letters, digits (0-9), and non-alphanumeric characters (such as $ and #). · Store Password Using Reversible Encryption For All Users In The Domain Enabling this policy tells Windows XP to store user passwords using reversible encryption. Some applications require this, but they’re rare and you should never need to enable this policy.

82 Megosztott gépek biztonsága
Biztonságosabbá tehető a számítógép, ha Felhasználóknak legyen saját accountja nem használt account eltávolítandó Administratort átnevezni Ne írja ki az utolsó nevet Ezt amolyan általános diának gondolnám. Első három triviális, utolsó kettőt a gpeditben lehet megváltoztatni (biztonsági házirend\biztonsági beállítások)

83 Megosztott gépek biztonsága
Ezt amolyan általános diának gondolnám. Első három triviális, utolsó kettőt a gpeditben lehet megváltoztatni (biztonsági házirend\biztonsági beállítások)

84 Feladatok - 1 Hozzon létre két csoportot: hallgatok, oktatok
Hozzon létre 5 felhasználót: user1 - user5 user1 és user2 csak a hallgatok csoportjába tartozzon. user3 és user4 csak az oktatok csoportjába tartozzon. User5 legyen tagja mind a hallgatok, mind az oktatók csoportjának. Parancssoros és GUIs megoldást vegyítse

85 Feladatok - 2 Állítsa be úgy a rendszert, hogy
a user 1 és user 2 ne kapcsolhassa ki a számítógépet a jelszavaknak minimum 5 karakteresnek kelljen lennie minden bejelentkezést naplózzon tiltsa le a hangrögzítő alkalmazást (felügyeleti sablonok)

86 PowerShell Automatizmust elősegítő parancsok gyűjteménye
Parancssorhoz hasonló, de annál hatékonyabb Alkalmazások, Windows komponensek vezérlése parancssorból, kívülről Minden objektum

87 Powershell verziók PowerShell v1.0: 2006 PowerShell v2.0: 2009
129 parancs Windows 2008 kiegészítés Letölthető Windows 2003 és XP verzió PowerShell v2.0: 2009 Windows 7 és 2008 R2 alapból tartalmazza PowerShell v3.0: 2012

88 Használata Start / kellékek / WinPowerShell
Parancssorral kompatibilis - látszólag Ez is átszinezhető cd, dir, mkdir, copy - minden parancs elérhető - de csak hasonló parancs! mkdir proba echo "hello" > proba\mintafajl.txt del proba - könyvtár törlésére is - suspend új Nem case sensitive - mkdir == MKdir get-command == gET-COMMand Itt azt szeretném bemutatni, hogy a powershell teljesen jol hasznalhato parancssornak, hiszen minden parancsot lehet használni benne, amit a cmdben megszoktunk. De csak nevükben hasonlóak, igazándiból nem.

89 Miért más, mint mások? Objektumokon dolgozik, szöveg helyett
A parancsok eredménye egymás után fűzhető programozás nélkül Hagyományosan (pl: linux - bash) kill `ps ax | grep java | cut -f1` A ps ax lekérdezi a futó folyamatokat. A grep kikeresi a java nevűt, a cut feldarabolja a kimenetet tabonként, ahol az első érték a process ID, ami kell a kilövéshez. A ` `-en belüli rész fut le először, visszaad egy azonosító számot, és lefut a kill <PID> parancs (ahol PID helyére bekerül a java folyamat azonosítója) Powershellben ugyanez get-process java | stop-process ps java | kill

90 ps kimenete (linux) PID TTY STAT TIME COMMAND 1 ? Ss 0:00 /sbin/init
1611 ? Ss 0:00 /usr/sbin/sshd 1930 ? S :10 metacity 1932 ? S :26 gnome-power-manager 1933 ? S :21 /usr/libexec/gdm-simple-greeter 17867 ? SN 0:00 /usr/bin/python /usr/bin/denyhosts.py --daemon --config=/etc/denyhosts.conf 18093 ? Ss 0:00 sshd: winger [priv] 18096 ? S :00 sshd: 18097 pts/0 Ss 0:00 -bash 18143 pts/0 S :00 /usr/bin/mc -P /tmp/mc-winger/mc.pwd.18097 18145 pts/1 Ss 0:00 bash -rcfile .bashrc 18171 pts/1 R :00 java 24960 ? Ss 0:13 /usr/sbin/httpd

91 PowerShell parancs típusok
cmdlet (command-let) Powershell parancs pl: Get-ChildItem - könyvtár listázása alias cmdlet-ek ismerős nevei pl: Get-ChildItem cmdlet-re mutató alias: ls, dir, gci natív parancs "normál" windows parancsok, programok pl: notepad, ping, ipconfig script Powershell scriptek

92 cmdlet Ige-Főnév formátum (verb-noun ; csináld-mit) Verb Noun Add
Object Get QADUser Import VM Export Alias New Content Remove QADGroup

93 Forrás: Wikipedia

94 Példa parancsok 1 Dir C:\windows Alias Dir $a = dir C:\windows
$a.count $a | Select Name $a | Select Name, Extension $a | group extension Get-ChildItem PS:\powershell $DateToCompare = (Get-date).AddDays(-2) Get-Childitem PS:\windows–recurse | where-object {$_.lastwritetime –gt $DateToCompare}

95 Powershell Get-Command Get-Help * Get-Help about_*
get-help get-command -detailed get-help get-command -example get-command -commandType function get-command write-* get-command *-object get-command more get-command more.com | get-member get-command more.com | foreach {$_.FileVersionInfo} get-qaduser -logonname JDoe | get-member get-qaduser -logonname JDoe | get-member -MemberType Property get-qaduser -logonname JDoe | select DisplayName, PhoneNumber Get-PSDrive Get-ChildItem HKLM: Get-ChildItem Function: Get-ChildItem cert:

96 get-command get-help get-member get-psdrive
forrás:

97 Objektumok Get-Service -name fax Get-Service | Get-Member
Get-Service | Get-Member -MemberType Property Get-Service | Get-Member -MemberType Method

98 Start-service -name fax
Get-ChildItem | Get-Member Get-ChildItem -Path C:\ -Recurse | Where-Object {$_.LastWriteTime -gt “08/25/2007″}<enter>

99 Kimenet formázása Get-Command Format-*
Get-ChildItem C:\Windows | Format-Table Get-ChildItem C:\Windows | Format-Table -AutoSize Get-ChildItem C:\Windows | Format-List Get-ChildItem C:\Windows -Recurse | Format-List -Property FullName,CreationTime,LastWriteTime Get-ChildItem C: | Format-Wide -Column 3

100 Kimenet átirányítás Get-Process | ConvertTo-html
out-file cmdlet - hasonló a > parancshoz Get-Process | ConvertTo-html | out-file “Processes.html” Megnyitás: Invoke-Item Processes.html Get-Process | Export-CSV Processes.csv

101 Változók $ a változók neve előtt $a = Get-Content c:\file.txt
$users = Get-QADUser –SizeLimit 0 $VMs = Get-VM $_ az aktuális objektumot jelenti get-process | where-object { $_.WS -gt 1000MB } | stop-process

102 Elágazás $x = 2 #creates a variable x and assigns 2 as the value
if ($x -eq 5) {Write-Host "Hello my name is Bob"} elseif ($x -eq 4) {Write-Host "Hello, my name is Sue"} elseif ($x -eq 2) {Write-Host "Hello, my name is Troy"} elseif ($x -gt 1) {Write-Host "Hello, my name is Mary"} else {"I have no idea what my name is?"}

103 Iterációk do while for while until foreach do
{ Write-Host $i $i++ } while ($i -le 5) for ($i=1; $i -le 5; $i++) { Write-Host $i } do { Write-Host $i $i++ } until ($i -gt 5) while ($i -le 5) { Write-Host $i $i++ } $ints 2, 3, 4, 5) foreach ($i in $ints) {Write-Host $i}

104 foreach Nincs feltételvizsgálat, gyűjtemény elemeit járja be - pl: processzorok listázása $strComputer = “.” $colItems = get-wmiobject -class “Win32_Processor” -namespace “root\CIMV2″ ` -computername $strComputer foreach ($objItem in $colItems) { write-host “Caption: ” $objItem.Caption write-host “CPU Status: ” $objItem.CpuStatus write-host “Current Clock Speed: ” $objItem.CurrentClockSpeed write-host “Device ID: ” $objItem.DeviceID write-host “L2 Cache Size: ” $objItem.L2CacheSize write-host “Name: ” $objItem.Name }

105 Külső programok is vezérelhetőek
Microsoft alkalmazások mindegyike fog PS támogatással rendelkezni pl: MS SQL szerver kezelése távolról - új adatbázis létrehozása Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases $MyDBVar = New-Object Microsoft.SqlServer.Management.SMO.Database $MyDBVar.Parent = (Get-Item ..) $MyDBVar.Name = "NewDB" $MyDBVar.Create() $MyDBVar.State

106 Providerek A rendszer elemeihez való hozzáférés providereken keresztül történik. get-psprovider - elérhető providerek

107 Provider használata Provider használatához csatlakozni kell az általa kínált erőforráshoz Get-PSDrive

108 Csatlakozás providerhez
Set-Location Alias: get-childitem Set-Location Env: Set-Location c:

109 A Get-ChildItem és társai parancsok nem lemez kezelők, hanem a provideren belül kezelik az elemeket
pl: fájl átnevezése Rename-Item -Path c:\valami -newname masik környezeti változó átnevezése set-location env: Rename-Item -Path env:var1 -NewName var2

110 PowerShell scriptek Scriptek készíthetőek .ps1 kiterjesztéssel
Execution policy megadja, hogy milyen scriptek futtathatóak Restricted – scriptek letiltva RemoteSigned – aláírt távoli, vagy helyi scriptek AllSigned – aláírt scriptek Unrestricted – bármi fut Get-ExecutionPolicy Set-ExecutionPolicy <policy name> #: comment

111 PowerShell script - paraméterek
Bejövő paraméterek args tömb echo $args echo $args[0] echo $args[1] foreach($arg in $args){ echo $arg }

112 PowerShell script - paraméterek
Formális paraméterlistát is generálhatunk első sorba kell, hogy kerüljön param([string]$foo = "x", [string]$bar = "y") [string]: paraméter típusa $foo: paraméter neve „x”: default érték fussal.ps1 alma korte fussal.ps1 alma fussal.ps1 alma –foo korte

113 PowerShell mintascript
param([string]$foo = "x", [string]$bar = "y") Write-Host "Arg: $foo" Write-Host "Arg: $bar" foreach ($svc in Get-Service){ if($svc.displayName.startsWith($args[0])) { echo $svc }

114 Feladat Készítsünk egy olyan scriptet, ami első paraméterként megadott nevű (azzal kezdődő, azt tartalmazó stb) szolgáltatást megkeres, és ha fut, akkor leállítja.

115 Feladat Az előző scriptet bővítsük ki. Két paramétert fogadjon:
-name és –muvelet name: a szolgáltatás neve, amit berhelni akarunk muvelet: lehet indit vagy leallit Értelem szerűen működjön (és persze ellenőrizze, hogy az adott feladat értelmes –e) (ha fut, akkor ne indítsa el megint)


Letölteni ppt "Operációs Rendszerek Önállóan feldolgozandó részek, amelyekből dolgozat írása fog történni a harmadik héten."

Hasonló előadás


Google Hirdetések