11. évfolyam, informatikai rendszerüzemeltető 2018.
Témakörök 1. Kialakulása 2. Disztribúciók 3. Telepítés, bootloader 4. Csomagkezelés 5. Rendszer felépítése, kernel (könyvtárak, fájlok, jogok, felhasználók) 6. Konzol 7. Alapvető parancsok 8. Grafikus felület (GUI), ablakkezelők 9. Terminálok, parancssor, alias, előzmények (környezeti változók, súgó) 10. Könyvtárszerkezet, csatolások (mount) 11. Felhasználókezelés, csoportok 12. Rendszergazda fiók (sudo) 13. Csomagkezelés, processzkezelés 14. Fájlrendszer jogosultságok 15. Shell, héjprogramozás, fájlok 2
1. Kialakulása Linus Torvald (finn), 1991. Szakdolgozatként indult (UNIX-like) Nyílt forráskódú, ingyenes (GPL) Több disztribúció jelent meg Disztribúció terjesztés, kiadás A kernel köré épül a rendszer: moduláris, hibrid kernel Interneten: http://linux.org http://kernel.org 3
1. Kialakulása Kabalája: A hivatalos Linux Pingvint Linus Torvalds választotta ki. Az eredeti ötlet Alan Cox-é volt. A rajzot Larry Ewing készítette. 4
2. Disztribúciók Nyílt forráskód (GPL) Kiadások, közösségek saját fordításai Legismertebb disztribúciók: RedHat CentOS Fedora Debian Ubuntu SuSE Gentoo Arch Mandriva (korábban Mandrake) Slackware Mint...stb. 5
2. Disztribúciók Magyar disztribúciók: UHU-Linux (Debian alapokon) BlackPanther OS (RH alapokon) 6
3. Telepítés Telepítési folyamat: Hagyományos telepítés Ma már grafikus, korábban volt konzolos (text) Telepítési módok: Médiáról (CD, DVD, USB) Live Média Hálózatról 7
3. Telepítés Telepítési példák: 8
3. Telepítés Telepítési példák: 9
3. Telepítés Telepítési példák: 10
3. Bootloader Rendszerbetöltő Első lépés induláskor BIOS, EFI ezt indítja először Ez tölti be az operációs rendszert, kernelt (magot) GRUB Korábban: LILO 11
3. Bootloader GRUB: Grand Unified Boot Loader Folyamat: MBR v. GPT 12
3. Bootloader GRUB 2 13
4. Csomagkezelés Disztribúciók meghatározzák a csomagokat Mik a csomagok? Programok kezelése csomagszinten Egy csomag: egy alkalmazás v. annak része Alapvető formátumok: rpm (redhat package management) deb (debian package) Telepítéskor installálódnak Utólag is telepíthetők, eltávolíthatók Pl.: kernel-4.9.5-200.fc25.x86_64.rpm 14
4. Csomagkezelés 15
4. Csomagkezelés Csomagkezelés sokszor nehézkes volt Függőségek Egyszerűsítésre volt szükség Csomagkezelő segédprogramok apt (Debian rendszerek) dnf ill. yum (RedHat rendszerek) Ezekhez van konzolos és grafikus front-end 16
4. Csomagkezelés Csomagkezelők összehasonlítása 17
5. Rendszer felépítése, a KERNEL Kernel = rendszermag. Az operációs rendszer lelke, ez irányítja a rendszert. Általában az operációs rendszer belső rétegét nevezik így, mely alapvető szolgáltatásokat biztosít a rendszer felsőbb rétegei számára. Általában ezek hardverközeli hozzáférések (eszközmeghajtó-programok), IO és processz ütemezés, filerendszer megvalósítás, hálózati stack, stb. Forrás: https://hup.hu 18
5. Rendszer felépítése, a KERNEL Milyen kerneltípusok léteznek? Mikrokernel Monolitikus Rétegzett (layered) Virtuális gépeken alapuló Kliens-szerver modellen alapuló Moduláris Hibrid kernel 19
5. Rendszer felépítése, a KERNEL Monolitikus kernel: A monolitikus kernelű operációs rendszer (mint például a UNIX, Linux) magja egyetlen programból áll. Ebben a programban az eljárások szabadon hívhatják egymást, a köztük levő kommunikáció eljárásparamétereken és globális változókon keresztül zajlik. 20
5. Rendszer felépítése, a KERNEL Mikrokernel: A mikrokernel olyan kernel, ahol nem egyetlen egészben van megvalósítva a szokványos (azaz nem monolitikus) kernel összes feladata, hanem több, egymással kooperáló program látja el ezt a feladatot, így futásidőben is messzemenőkig átkonfigurálhatóvá válik a rendszer. Bár az elmélet szép, az az igazság, hogy a gyakorlatban nehéz jó mikrokernelt írni, talán ezért is van, hogy a népszerű Linux se mikrokernel felépítésű, bár több szempontból már nem is tekinthető teljesen monolitikus kernelnek se, mégis talán ahhoz áll közelebb. Mikrokernelek: EROS, Mach, L4. 21
5. Rendszer felépítése, a KERNEL Moduláris: A linux kernel eltér a hagyományos értelemben vett monolitikus kernelektől abban, hogy a kód nagy része (jellemzően egy-egy adott hardware támogatásáért felelős driver, azaz "eszközmeghajtó") nemcsak a kernel állományban foglalhat helyett, hanem külön ún. kernel modulból is betöltehető. Ez a 2.0-ás kernelben bevezetett változás jelentősen lecsökkenti a kernel méretét és megkönnyíti a fejlesztést (adott modul új verzióra cserélése újraindítás nélkül, vagy épp 3rd party modulok fejlesztése akár a kerneltől eltérő licenszel). A kernel modulok általában a /lib/modules/kernel_verzio/ könyvtárban találhatók. A 2.4 szériáig a modprobe volt a fő modultöltő, ezt a 2.6-tól a module-init-tools váltotta fel (mivel megváltozott a kernel modulokért felelős API). 22
5. Rendszer felépítése, a KERNEL Hibrid kernel: A hibrid kernelek alapjában véve olyan mikrokernelek, amelyekben néhány nem létfontosságú kódrészletet átmozgattak a felhasználói szintről (userspace) a kernel szintre (kernelspace) azért, hogy az kevesebb absztrakciót használva, gyorsabban fusson. Néhányan összetévesztik a hibrid kerneleket az olyan monolitikus kernelekkel, amelyek indulásuk után modulokat képesek betölteni. Ez helytelen: a hibrid kifejezés utal arra, hogy mind a monolitikus, mind a mikrokernelek elveit és mechanizmusait alkalmazza. Hibrid kernel pl.: Windows 23
5. Rendszer felépítése, a KERNEL A kernel helye: A /boot könyvtárban van. Neve (alapértelm.): vmlinuz-<verzio>.<arch> pl.: vmlinuz-4.17.3.fc28.x86_64 24
5. Rendszer felépítése Alapvetően konzolos (text mód) DOS is hasonló volt Windows parancssor Van grafikus felület (GUI) 25
5. Rendszer felépítése Fájlrendszer Nincs betűjelzés, mint a DOS/Windows esetén Csatolja a külső tárolókat (mount) Ma már a Windows is tudja. :) 26
5. Rendszer felépítése Fájlkezelők mc (Midnight Commander) 27
5. Rendszer felépítése Fájlkezelők Gnome Commander (GUI) 28
5. Rendszer felépítése Fájlrendszer DOS minden meghajtón létrehoz egy ún. fájlallokációs táblát (File Allocation Table, azaz FAT) és ebben rögzíti a szabad és lefoglalt szektorokat. Egy másik szektor a gyökérkönyvtárat tartalmazza. A DOS könyvtár a tárolt fájlok nevén kívül azok attribútumát, méretét és dátumbélyegét is tárolja. 29
5. Rendszer felépítése Fájlrendszer LINUX minden egyes fájl számára úgynevezett i-csomópontot (i-node) foglal le, amelyben fontos rendszerjellemzőket tárol. A létrehozott fájlról az operációs rendszer nemcsak a nevét és létrehozásának dátumát tárolja (mint a FAT), hanem annak azonosítóját is, aki létrehozta, továbbá annak a csoportnak a nevét, amelyhez a fájl tartozik. Ezért finomabban lehet szabályozni az 30 engedélyeket.
5. Rendszer felépítése Fájlrendszer tulajdonságai Az engedélyeket minden fájlhoz külön tárolja A hozzáférés a saját tulajdonosára, vagy bizonyos felhasználók csoportjára korlátozható. olvasási (read), írási (write) és végrehajtási (execute) engedélyek 31
5. Rendszer felépítése Linkek, csatolások Hivatkozások Lehet kötött (hard) (soft/symbloc) link Helytakarékosság Mikor érdemes használni? v. szimbolikus 32
5. Rendszer felépítése Fájlrendszerek Virtuális fájlrendszerek (a rendszer számára..) SMBFS, SSHFS, NFS stb. Támogatott fájlrendszerek ext2, ext3, ext4 (Linux saját fájlrendszere) ReiserFS XFS ZFS FAT32 NTFS 33 stb.
5. Rendszer felépítése Könyvtárszerkezet Hierarchikus Könyvtárak Fájlok Elérési út Root gyökér: / pl.: /home/joe/myfile.txt Csatolt (mount) tárolóeszközök pl.: /mnt/usb 34
5. Rendszer felépítése Könyvtárszerkezet 35
5. Rendszer felépítése Könyvtárszerkezet /bin, /sbin Futtatható, bináris állományok (sbin: root) /boot Rendszer betöltésének állományai: grub, lilo, kernel (/boot/vmlinuz) /cdrom, /media, /mnt Média becsatolása: USB, Floppy, CD/DVD /dev Az eszközöket (mindet) fájlokon keresztül érjük el, pl.: /dev/dsp (hangkártya) /dev/cdrom (CD) 36
5. Rendszer felépítése Könyvtárszerkezet /etc Konfigurációs fájlok Rendszergazda éri el Globális konfig hely 37
5. Rendszer felépítése Könyvtárszerkezet /home Felhasználók mappa Felhasználó fájljai Beállítások, konfigurációs fájlok, mappák Pl.: /home/peter /home/peter/dokumentumok 38
5. Rendszer felépítése Könyvtárszerkezet /lib Megosztott objektumok, library-k Mint windows esetén a DLL-ek Valamint a kernel moduljai 39
5. Rendszer felépítése Könyvtárszerkezet /lost+found Sérült fájlok Helyreállíthatók 40
5. Rendszer felépítése Könyvtárszerkezet /proc az éppenfutó műveletek -fájlként leképezve, sorszámozva, illetve információk a rendszerről: processzorról, memóriáról 41
5. Rendszer felépítése Könyvtárszerkezet /tmp Ideiglenes fájlok helye Rendszer és felhasználó szinten 42
5. Rendszer felépítése Könyvtárszerkezet /usr Felhasználói fájlok helye Telepített programok Library-k Források (kernel): /usr/src Dokumentációk: /usr/share/doc, /usr/doc Ikonok stb. 43
5. Rendszer felépítése Könyvtárszerkezet /var Szolgáltatások gyűjtőkönyvtára Átmeneti tárolók (cache): /var/cache Naplófájlok (log): /var/log/maillog Levelezési fiókok (mailbox): /var/mail/root 44
5. Rendszer felépítése Felhasználók Rendszergazda: root Felhasználók: a root felhasználó hozza létre alapvetően Csoportokba szervezhetők a felhasználók Jogosultságok adhatók a fájlrendszeren: /home/joe/myfile.txt 26 joe joe -rwxrwxrwx 45
6. Konzol Szöveges üzemmód (text mode) DOS-szerű Grafikus felületről is nyitható Terminál gnome-terminal, xterm, xfce4-terminal Parancsok adhatók ki Különböző parancsértelmezők lehetnek bash cs stb. 46
7. Alapvető parancsok Linux parancssor kezdőknek Prompt, ami formázható is: [root@server ~]# [user@server ~]$ 47
7. Alapvető parancsok Fájl- és könyvtárkezelő parancsok: pwd ls cd cp mv rm rmdir uount umount 48
7. Alapvető parancsok Rendszerinformációs parancsok: df du free top uname uptime users netstat man info 49
7. Alapvető parancsok Hálózatkezelési parancsok: ip ifconfig iwconfig ping ifup ifdown ifstatus ifstat 50
7. Alapvető parancsok Felhasználókezelési (jogosultsági) parancsok: adduser userdel chmod chown usermod chroot 51
7. Alapvető parancsok Csomagkezelési parancsok: dpkg rpm apt yum dnf Lsd. Korábbi dia 52
7. Alapvető parancsok Egyéb parancsok: clear kill halt shutdown reboot /bin/bash service systemctl stb. 53
8. Grafikus felület (GUI), ablakkezelők X Window System Grafikus felület (GUI): X11 Xorg Bejelentkezés is lehet grafikus felületen XDM: Desktop Management 54
8. Grafikus felület (GUI), ablakkezelők Login (GUI): 55
8. Grafikus felület (GUI), ablakkezelők Szoftver frissítés (GUI): 56
8. Grafikus felület (GUI), ablakkezelők Asztal (GUI): 57
8. Grafikus felület (GUI), ablakkezelők Ablakkezelő (window manager): A grafikai elemeket kezeli (látható elemek) Egyéb szolgáltatások is beállíthatók Automatikus futtatás Saját szoftverek stb. Telepítéskor többnyire választható, de később is módosítható Menet közben is váltható! 58
8. Grafikus felület (GUI), ablakkezelők Ablakkezelő (window manager): Legismertebb ablakkezelők: KDE GNOME XFCE LXDE Icewm Compiz... stb. 59
8. Grafikus felület (GUI), ablakkezelők Ablakkezelő (window manager): KDE 60
8. Grafikus felület (GUI), ablakkezelők Ablakkezelő (window manager): GNOME 61
8. Grafikus felület (GUI), ablakkezelők Ablakkezelő (window manager): Xfce 62
8. Grafikus felület (GUI), ablakkezelők Ablakkezelő (window manager): LXDE 63
8. Grafikus felület (GUI), ablakkezelők Ablakkezelő (window manager): Compiz 64
9. Terminálok, parancssor, alias, előzmények Terminál = parancssor parancsértelmező Különböző terminálok vannak (window manager) Gnome-terminal, XFCE4 terminal, xterm...stb. 65
9. Terminálok, parancssor, alias, előzmények Parancsok: adott funkciót, feladatot hajt végre pl.: ls parancs kilistázza a fájlokat, könyvtárakat Parancsok listája: letix.hu, szit.hu 66
9. Terminálok, parancssor, alias, előzmények Alias: álnév Alias: egy adott álnévvel tudunk rövidíteni egyegy összetettebb parancsot. Vagy saját parancsot hozhatunk létre. Definiálás helye (bash shell esetén): ~/.bashrc Globális alias-ok: /etc/bashrc #.bashrc # Source global definitions if [ -f /etc/bashrc ]; then. /etc/bashrc fi alias ls='ls color=auto' alias pmotd='cat /etc/motd' 67
9. Terminálok, parancssor, alias, előzmények Alias: álnév Mikor lesz aktív egy beállított alias? A konfigurációs fájlok belépéskor kerülnek beolvasásra, aktiválásra tehát ha kilépünk (logout/exit) és visszalépünk (login), akkor lesz aktív. 68
9. Terminálok, parancssor, alias, előzmények Előzmények (history): korábban kiadott parancsok. A korábbi parancsokat nem kell begépelni, FEL/LE nyilakkal lehet újra előhívni. Előzmények lekérdezése: history Konfiguráció (bash shell): ~/.bash_history Megjegyzés: SHIFT+PGUP/PGDN lehet a képernyőn/terminálon lapozni. 69
9. Terminálok, parancssor, alias, előzmények Környezeti változók: az operációs rendszerről vagy programjainkról tárolnak információkat. A környezeti változók a rendszer indulása után automatikusan beállításra kerülnek. Listázásuk: printenv, set Lehet egyedileg lekérdezni: printenv PATH Beállításuk: set VAR1= valami Megszüntetésük: unset VAR1 Megjelenítésük: echo $VAR1 Megmaradjon a beállítás: export VAR1= valami 70
9. Terminálok, parancssor, alias, előzmények Súgó: help, segítség a parancs használatához Parancs: man, info 71
10. Könyvtárszerkezet, csatolások (mount) Könyvtárszerkezet: fájlok tárolására kialakított struktúra 72
10. Könyvtárszerkezet, csatolások (mount) Könyvtárszerkezet: /bin /boot /dev /etc /home /lib /lib64 /lost+found /media /mnt /opt /proc /root /sbin /srv /sys /tmp /usr /var Bináris futtatható állományok Boot fájlok (GRUB) Device, eszközök fájljai Központi konfigurációs Felhasználók home (saját) könyvtára Library-k, megosztott (shared objects) rendszerfájlok Library-k, megosztott (shared objects) rendszerfájlok 64bit Elveszett, visszaállított fájlok Média könyvtár, mount könyvtár Csatolások helye (mount) Egyéb szoftverek hely Rendszerkönyvtár, process információk Root (rendszergazda) könyvtára Rendszer szintű bináris fájlok helye Szerver szolgáltatások adatainak helye Rendszer könyvtár Temporary, átmeneti tároló Felhasználói fájlok helye, bináris, lib-ek, dokumentációk Változó fájlok helyei: cache, temp, adatbázisok, adatok stb. 73
10. Könyvtárszerkezet, csatolások (mount) Linkek: Hivatkozások (mutatók) Soft link: symlink, ln -s fájl symlink Ha a soft link célját törlik, átnevezik vagy áthelyezik a lemezen máshova akkor a linket töröttnek (broken link) nevezzük. Hard link: ln fájl link A hard linkek egymástól teljesen megkülönböztethetetlenek. Lényegében ugyan arra a tárterületre több néven helyezünk el hivatkozást a fájlrendszerben. Ezt láthatjuk is, ha egy fájl jellemzőiről részletes listát kérünk, itt a linkszámláló (második oszlop) értéke fogja mutatni, hogy a fájlrendszeren belül mennyi a hivatkozások száma. 74
10. Könyvtárszerkezet, csatolások (mount) Linkek: Soft link: symlink, ln -s fájl symlink Egy adott fájlra/könyvtárra mutat, másik partíción is lehet. Hard link: ln fájl link Egy adott fájlra mutat, másik partíción nem lehet. http://szabadlinuxot.blogspot.com/2009/02/symlink-hardlink.html https://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_operacios_rendszerek_gyakorlat/ch03s03.html 75
10. Könyvtárszerkezet, csatolások (mount) Csatolások (mount): Egy eszközt fel kell csatolni a rendszerhez Nem Windows nincsenek meghajtók! Mountolás/Umountolás: mount -t auto /dev/usb /mnt/usb umount /mnt/usb 76
10. Könyvtárszerkezet, csatolások (mount) Archiválás, tömörítés: TAR: archívumkezelő program Szintaxis tar kulcsok[kapcsolók] tarfile.tar fájlok GZIP, BZIP2: tömörítési feladatot látnak el. gzip -c file1 > foo.gz A tar és GZ, BZIP2 kombinálható. 77
11. Felhasználókezelés Segítség: http://szit.hu néhány parancs, amely csak a Debian rendszerben létezik. Funkciók: felhasználó hozzáadása, -törlése, jelszóadás,.módosítás stb. 78
11. Felhasználókezelés Felhasználó hozzáadása: adduser, useradd Egy felhasználót interaktívan vehetünk fel vele. A következő példában egy kati nevű felhasználót veszünk fel: 79
11. Felhasználókezelés Felhasználó hozzáadása: adduser, useradd Egy felhasználót interaktívan vehetünk fel vele. useradd -c "Teszt Katalin" -d /home/kati -g users G info,human,rgazda -k /etc/skel -m -s /bin/bash kati A useradd kapcsolói -c megjegyzés -d home könyvtár -g elsődleges csoport -G másodlagos csoport vagy csoportok -m hozzuk létre a home könyvtárát -s milyen shellt kapjon -u UID mi legyen a uid-je -k honnan másoljuk alapértelmezett fájlokat 80
11. Felhasználókezelés Felhasználó információi: getent getent passwd joska joska:x:1001:1001:nagy József,,,:/home/joska:/bin/bash A informatika csoportról szeretnénk informálódni: getent group informatika Felhasználói adatok helye: /etc/passwd joska:!$1$r8z4poer$osi234ndisere2erda83dd82dsik8ls:15407:0:99999:7::: 81
11. Felhasználókezelés Felhasználói adatok az /etc/passwd fájlban: 82
11. Felhasználókezelés Felhasználói szabályok módosítása: chage A chage parancs segítségével szabályozhatjuk egy-egy felhasználónak mikor jár le a jelszava. A joska felhasználónak mikor jár le a jelszava? chage -l joska Utolsó jelszóváltás Jelszó lejár Jelszó inaktív Hozzáférés lejár A jelszómódosítások közti legkevesebb nap A jelszómódosítások közti legtöbb nap A jelszó lejárata előtt figyelmeztetés napok száma 99999 nap körülbelül: ~273 év : dec 13, 2011 : soha : soha : soha :0 : 99999 :7 83
11. Felhasználókezelés Felhasználói szabályok módosítása: chage A joska felhasználó jelszava járjon le 10 nap múlva chage -M 10 joska Mikor járjon le a jelszava? chage -E "2009-05-31" joska Inaktív napok után lezárás Jóskának 10 inaktív nap után lezárjuk a jelszavát. chage -I 10 joska chage --inactive 10 joska 84
11. Felhasználókezelés Felhasználói jelszó: passwd Saját jelszó módosítása: passwd Rendszergazda módosíthatja bármelyik user jelszavát: passwd <username> Jelszó tárolása: /etc/shadow Jelszó generálása: makepasswd 85
11. Felhasználókezelés Felhasználói adatok módosítása: chfn A finger csomag szükséges. Pl.: # chfn -f János janos # chfn --full-name "Nagy János" janos Kapcsolók: -f, --full-name -o, --office -- irodai szobaszám -p, --office-phone -- irodai telefonszám -h, --home-phone -- otthoni telfonszám 86
11. Felhasználókezelés Felhasználó törlése: deluser, userdel Az /etc/deluser.conf segítségével szabályozni. Részletekért nézzük deluser.conf(5) kézikönyvet. Pl.: deluser --remove-home deluser --remove-all-files deluser --backup deluser --backup-to érdemes meg a 87
11. Felhasználókezelés Felhasználói csoportok kezelése Csoport létrehozása: addgroup, groupadd A csoportadatok helye: /etc/group Az /etc/group állomány kézzel is szerkeszthető (szövegszerkesztővel, mcedit) a root által. Minden felhasználónak saját nevével létrejön egy csoport is! Pl. kati user esetén egy kati csoport is létrejön. 88
11. Felhasználókezelés Felhasználói csoportok kezelése Csoporthoz adás: gpasswd -a kati info A kati user az info csoporthoz adása Csoportból kivétel: gpasswd -d kati info A kati user az info csoportból kivétel 89
11. Felhasználókezelés Felhasználói csoportok kezelése (és adatok) A usermod parancs: Felhasználó adatainak módosítása. A mari felhasználó felvétele csoportba: usermod -a -G human mari a user human (A -a hatására hozzáfűzés történik, vagyis a többi csoport megmarad. Ha elhagyjuk a -a kapcsolót, akkor a többi csoport törlődik.) 90
11. Felhasználókezelés Felhasználói csoportok kezelése (és adatok) A usermod parancs: Felhasználó adatainak módosítása. user Alap csoport beállítása: usermod -g info mari További csoporttagság: usermod -G human,gazdasag,rgazda mari 91
11. Felhasználókezelés Felhasználói csoportok kezelése (és adatok) A usermod parancs: Felhasználó adatainak módosítása. user A joska felhasználó kitiltása: usermod --lock --expiredate 1970-01-01 joska usermod -L -e 1970-01-01 joska Az expiredate értéke bármi lehet ami régebbi mint az aktuális dátum. A --lock a jelszó használatot tiltja. Azonban nem tiltja a kulcs alapú azonosítást. Ezért vettük vissza a lejárati dátumot. Magunk is letilthatjuk a felhasználó jelszavas bejelentkezését ha egy! ( felkiáltó jelet ) teszek a jelszó elé: joska:!$1$r8z4poer$osi234ndisere2erda83dd82dsik8ls:15407:0:99999:7::: 92
11. Felhasználókezelés Felhasználói csoportok kezelése (és adatok) A usermod parancs: Felhasználó adatainak módosítása. user A felhasználó számára új bejelentkezési könyvtárat állítunk be: usermod -d /home/info/joska usermod --home /home/info/joska usermod --home /home/tanulok/15z/janos 93
11. Felhasználókezelés Felhasználói csoportok kezelése (és adatok) A usermod parancs: Felhasználó adatainak módosítása. user A Shell beállítása: usermod -s /bin/ksh mari usermod --shell /bin/ksh kati 94
11. Felhasználókezelés Felhasználói csoportok kezelése adatok) Az id parancs: Felhasználó adatainak lekérése. (és user Csoporttag: id id -ng 95
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: A felhasználók levelei hol tárolódjanak. MAIL_DIR /var/mail 96
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: A sikertelen bejelentkezések naplózása a /var/log/faillog fájlba. FAILLOG_ENAB yes 97
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: Az ismeretlen felhasználónevek naplózása sikertelen bejelentkezés esetén. LOG_UNKFAIL_ENAB no 98
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: A sikeres bejelentkezések naplózása: LOG_OK_LOGINS no 99
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: Jelszavak kontrollálása. Alapértelmezésként, mikor jár le, mikor változtathatja meg, mikor legyen figyelmeztetés. PASS_MAX_DAYS 99999 PASS_MIN_DAYS 0 PASS_WARN_AGE 7 100
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: Felhasználók minimális azonosítója useradd esetén: UID_MIN 1000 UID_MAX 60000 101
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: Minimális csoportazonosítók: GID_MIN 1000 GID_MAX 60000 102
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: A bejelentkezés visszautasítása ennyi sikertelen próbálkozás után: LOGIN_RETRIES 5 103
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók beállítások: Az /etc/login.defs könyvtárban/fájlban a felhasználók számára beállítható néhány adottság. pl.: A maximális sikertelen bejelentkezések után ennyi ideig tiltva: LOGIN_TIMEOUT 60 104
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók alapbeállítások (defaults): Az /etc/default könyvtár tartalmazza. Pl. /etc/default/useradd # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes 105
11. Felhasználókezelés Felhasználói fiókok és default kezelése Felhasználói fiók alapbeállítások (defaults): Az /etc/skel könyvtár tartalmazza az alap HOME könyvtár tartalmát, pl.: 106
12. Felhasználókezelés - Rendszergazda A rendszergazda felhasználó és funkciói A kiemelt felhasználó a Linux rendszerben: root UID: 0, GID: 0 Mindenhez hozzáfér a rendszerben! 107
12. Felhasználókezelés - Rendszergazda A rendszergazda felhasználó és funkciói A su parancs: Felhasználó váltás és parancs futtatása Pl.: Például mari felhasználóvá válhatunk: su mari Ha kötőjelet is használok, akkor a mari felhasználó teljes környezetét kapom: su - mari 108
12. Felhasználókezelés - Rendszergazda A rendszergazda felhasználó és funkciói A su parancs: Egy csoportot is felvehetünk a sg paranccsal. Például az info csoport felvétele: sg info 109
12. Felhasználókezelés - Rendszergazda A rendszergazda felhasználó és funkciói A sudo parancs: A sudo lehetővé teszi rendszergazdai parancsok felhasználóhoz vagy csoporthoz kötését. Általában a rendszergazdai jogosultságokat adunk vele más felhasználóknak. Egy komplett rendszergazdai lehetőség is átadható. A parancsok végrehajtásához bekérhető a felhasználó saját jelszava. Hálózatos rendszerben adott gépekhez köthető a parancs végrehajtása. 110
12. Felhasználókezelés - Rendszergazda A rendszergazda felhasználó és funkciói A sudo parancs: Az Ubuntu és a LinuxMint rendszerek alapértelmezetten rendszergazdai jogokat csak a sudo-n keresztül biztosítanak, a root felhasználó nem kap jelszót! Nem lehet a root felhasználóval bejelentkezni! 111
12. Felhasználókezelés - Rendszergazda A rendszergazda felhasználó és funkciói A sudo parancs: Beállítások /etc/sudoers fájlban A visudo paranccsal szerkeszthető, de más editor is használható. 112
12. Felhasználókezelés - Rendszergazda A rendszergazda felhasználó és funkciói A sudo parancs: Beállítások /etc/sudoers fájlban Pl.: Szintaxis: <username> ALL=NOPASSWD: ALL Példa: joska ALL=NOPASSWD: ALL (A NOPASSWD nélkül kéri az adott felhasználó jelszavát.) 113
13. Csomagkezelés, processzkezelés Csomagkezelés: Feladata: Alkalmazások, ill. összetevőik telepítése. Két alapvető formátum van: Debian (deb): A csomagkezelés a dpkg programmal valósítható meg. Ennek a csomagnak több burkoló programja is van, ami megkönnyíti a használatát. Ilyen burkolóprogram az apt rendszer, vagy az aptitude. Az aptitude rendelkezik curses alapú felülete is. Grafikus felületen a Synaptic csomagkezelő használható. 114
13. Csomagkezelés, processzkezelés Csomagkezelés: Feladata: Alkalmazások, ill. összetevőik telepítése. Két alapvető formátum van: Redhat (rpm): Az RPM alapú rendszerek (RedHat, CentOS, Fedora, SUSE) csomagkezelője az rpm parancs. Ennek egyik burkolóprogramja a yum/dnf. SUSE alap rendszereknél yast vagy yast2 paranccsal telepíthetünk. 115
13. Csomagkezelés, processzkezelés Csomagkezelés: Csomagkezelés sokszor nehézkes volt: Függőségek!! Egyszerűsítésre volt szükség! Csomagkezelő segédprogramok: apt (Debian rendszerek) dnf ill. yum (RedHat rendszerek) Ezekhez van konzolos és grafikus front-end. 116
13. Csomagkezelés, processzkezelés Csomagkezelés: 117
13. Csomagkezelés, processzkezelés Csomagkezelés: segédprogramok (apt/yum/dnf) 118
13. Csomagkezelés, processzkezelés Csomagkezelés: segédprogramok (apt/yum/dnf) Debian (Ubuntu): apt install apache2 apt-get remove mc RedHat (CentOS/Fedora): yum install httpd dnf install httpd dnf remove mc 119
13. Csomagkezelés, processzkezelés Csomagkezelés: segédprogramok (apt/yum/dnf) Debian (Ubuntu) keresés: apt search apache2 apt-cache search server RedHat (CentOS/Fedora) keresés: yum search httpd dnf search httpd dnf search server 120
13. Csomagkezelés, processzkezelés Csomagkezelés: segédprogramok (apt/yum/dnf) Debian (Ubuntu) cache törlése: apt clean apt-get clean RedHat (CentOS/Fedora) cache törlése: yum clean all dnf clean all (/var/yum/cache; /var/cache/apt/archives) 121
13. Csomagkezelés, processzkezelés Processzkezelés: Process = Folyamat: Folyamatnak nevezzük egy operációs rendszerben a futó program egy példányát. Az operációs rendszerek egyik legfontosabb feladata a folyamatok kezelése. 122
13. Csomagkezelés, processzkezelés Processzkezelés: Amikor egy operációs rendszer egy programot futtat, akkor a program kódján kívül egyéb információkat is nyilvántart erről. Így például a programhoz rendelt memóriaterületet, megnyitott állományokat, környezeti változóit és még sok egyebet. Ezeket is kezelnie kell, így a futó program példánya több információt jelent mint a programkód. 123
13. Csomagkezelés, processzkezelés Processzkezelés: Felmerülő kérdések ennek kapcsán: időosztás elve: time slice, a folyamatok egymás utáni futtatása, az ütemezés megoldása (multitasking rendszerek) párhuzamos futtatás, több felhasználó egyidejűleg a gépen futó programokkal dolgozhat (multiuser munkamód) a prioritások kezelése 124
13. Csomagkezelés, processzkezelés Processzkezelés: Az operációs rendszer egyik fontos komponensének, az ütemezőnek a feladata a folyamatok végrehajtásának felügyelete! A programokat a héjból (shell) indítjuk, de magát az indítás folyamatát mindig a kernel végzi. Így a kernel egy adatstruktúrát hoz létre, amiben a folyamat dinamikus leíró információit tartja. Minden folyamat rendelkezik: Egy saját védett memória zónával. Ez azt jelenti, hogy ezt csak a folyamat használja, és mások nem 125 írnak/olvasnak belőle.
13. Csomagkezelés, processzkezelés Processzkezelés: A folyamatok futásuk közben több állapot vehetnek fel. Erre azért van szükség, mert a kernel a folyamatokat hol megállítja és várakoztatja ("blokkolja" őket) hol pedig egy adott időre teljesen felfüggeszti őket (pl. ha egy sleep parancsot hajtunk végre). A ps parancs ad információt az adott folyamatról: ps ax 126
13. Csomagkezelés, processzkezelés Processzkezelés: Állapotok: R: running fut v. futásra kész S: interruptable sleep 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 D: uninterruptable sleep A folyamat várakozik valamilyen eseményre vagy erőforrásra és nem szakítható meg jelzés által. Általában ez az állapot valamilyen be/kimeneti eszközre való várakozást 127 jelent
13. Csomagkezelés, processzkezelés Processzkezelés: Állapotok: T: felfüggesztett, áll (Stopped / Traced): Ide kerül egy folyamat ha a terminálról futtatva lenyomjuk a CTRL+Z billentyűt és a háttérbe dobjuk X: dead / halott: nem látható elvileg ilyen állapot Z: zombie folyamat: megszakított, memóriában maradt. Lásd man ps 128
13. Csomagkezelés, processzkezelés Processzkezelés: Process ID (PID): A folyamatok azonosítására a rendszer egy folyamatazonosítónak nevezett egész számot használ. Ezen keresztül érjük el gyakorlatilag folyamatot illetve annak tulajdonságait. Azt mondjuk, hogy az 1562-es folyamat fut, függesztődik fel, kilép, stb. pidof <processname> Folyamatot csak egy másik folyamat indíthat. Így minden folyamat egy másik folyamat gyereke (child child process), ezért használatosak a szülő (parent) folyamat és gyerek (child) folyamat elnevezések. 129
13. Csomagkezelés, processzkezelés Processzkezelés: Az első valódi folyamat az init ill. az új rendszereken a systemd, amelynek azonosítója 1. A következő elindított folyamatok mind tőle származnak, így a folyamatok összefüggésükben egy faszerű struktúrát alkotnak. pstree 130
13. Csomagkezelés, processzkezelés Processzkezelés: A JOB : A terminállal való munka során egy parancssorral egyszerre akár több folyamatot indíthatunk. Pl. az alábbi parancssor: $ head -20 data.txt sort uniq 3 folyamatot indít és köztük csővezetékeket (PIPELINE) hoz létre. Ezért a terminállal történő munka számára szükséges egy másik fogalom is, ami jellemzi az indított folyamatokat. A job-ok követése: jobs parancs 131
13. Csomagkezelés, processzkezelés Processzkezelés: A folymatok előtérben és háttérben futhatnak: FG, BG. Előtérben futó folyamatokat a terminálon meg tudjuk szakítani: CTRL+C Előtérben futó folyamatokat a terminálon fel tudjuk függeszteni: CTRL+Z Háttérbe futó folyamat a & jellel: $ openvpn config ~/vpn/client.ovpn & 132
13. Csomagkezelés, processzkezelés Processzkezelés: Folyamatkezelés: ps: folyamatok listája, státusza pstree: folyamat struktúra lista wait: [n] adott számú job-ra/folyamatra vár és visszaadja annak kilépési kódját top, htop, atop: dinamikusan listázza a folyamatokat. nice/renice: folyamat prioritásának (fontosság) növelése, csökkentése -20.. 19 pl.: $ nice -n 19 job.sh 133
13. Csomagkezelés, processzkezelés Processzkezelés: Folyamatkezelés: Jelzések, folyamatok megszakítása: A folyamatok normális esetben lefutnak és ha elvégezték feladataikat és befejeződnek az exit paranccsal kilépnek. Futás közben többféleképpen kommunikálnak egymással: vagy adatokat küldenek át egyik folyamatól a másikhoz (pl. állományokon vagy csővezetéken keresztül) vagy egyszerűen csak egymás feladatának összehangolása végett szinkronizációs 134 információkat küldenek.
13. Csomagkezelés, processzkezelés Processzkezelés: Folyamatkezelés: Jelzések, folyamatok megszakítása: Az ilyen szinkronizációs kommunikáció egyik formája az aszinkron kommunikáció. Aszinkron üzenetnek azokat az üzeneteket nevezzük, amelyek bármely pillanatban elküldhetőek egy folyamathoz, függetlenül attól, hogy az mit végez: vár-e éppen erre, vagy nem. Az aszinkron üzenetek egyik fajtája a jelzések általi kommunikáció. 135
13. Csomagkezelés, processzkezelés Processzkezelés: Folyamatkezelés: Jelzések, folyamatok megszakítása: A jelzés (signal) egy aszinkron értesítés amelyet egyik folyamat küld a másiknak (vagy a kernel egy folyamatnak) valamilyen esemény bekövetkeztéről. A folyamatok jelzéseket kiszolgáló függvényeket, un. jelzés kezelőket (signal handler) definiálhatnak. Amikor a folyamathoz egy jelzés érkezik, akkor normális futása megszakad, és a jelzéskezelő indul el. Amennyiben a folyamat nem definiált kezelő függvényt, a jelzés implicit kezelője szolgálja ki azt. 136
13. Csomagkezelés, processzkezelés Processzkezelés: Folyamatkezelés: Jelzések, folyamatok megszakítása: NÉV SZÁM Leírás TSTP 20 Felfüggesztés, CTRL+Z INT 2 Azonnali leállítás, CRL+C QUIT 3 Leáll, de takarítja állományait KILL 9 Azonnali leállás, kill parancs ABRT 6 Leáll, de core dump memória kép HUP 1 Hang up, újraindítás (config beolvasás) TERM 15 Takarít és leáll 137
13. Csomagkezelés, processzkezelés Processzkezelés: Folyamatkezelés: Jelzések, folyamatok megszakítása: kill killall 138
13. Csomagkezelés, processzkezelés Processzkezelés: PIPELINE csővezetékezés : az egyik program kimenetét használja fel a másik program bemenetként Pl.: $ who sort $ ps grep http 139
14. Fájlrendszer, jogosultságok Fájlrendszer: A fájlrendszer az állományok és könyvtárak elhelyezésének, elrendezésének, elérésének módja egy háttértárolón. Linux alatt a következő fájlrendszereket szoktuk használni: ext, ext2, ext3, ext4, ReiserFS, Reiser4, XFS, JFS, Btrfs, ZFS stb. A ZFS fájlrendszer verziókövetési lehetőséggel látták le. Ha bekapcsoljuk az állományaink korábbi verziót visszanyerhetjük backup! 140
14. Fájlrendszer, jogosultságok Fájlrendszer: LINUX rendszer alapvetően: Rendszer partíció Cserehely (swap) partíció 141
14. Fájlrendszer, jogosultságok Fájlrendszer: A Linuxnak szüksége van egy úgynevezett swap fájlrendszerre, amely magyarul cserehelynek nevezhető. A cserehelyre lapozza ki a Linux operációs rendszer a memória azon részeit, amelyek nincsenek használatban. Tehát a fizikai memória egyfajta kiterjesztésének tekinthető. Ha elfogy a fizikai memória, akkor a nem használt programok részeit a Linux, a merevlemezen, virtuális memóriában tárolja. 142
14. Fájlrendszer, jogosultságok Fájlrendszer: A programot, amint használjuk, a rendszer visszatölti a fizikai memóriába a gyorsabb működés érdekében, hiszen a merevlemezről elég lassú lesz a használat. Mivel a cserehely külön partícióra kerül, ezért a töredezettség fel sem merül. Még jobb teljesítményt érünk el, ha külön merevlemezre helyezzük a cserehelyet. A cserhely használata nem befolyásolja a normál lemezműveleteket. 143
14. Fájlrendszer, jogosultságok Fájlrendszer: Cserehelyet azonban fájlként is adhatunk a rendszerhez menet közben. Az ilyen fájlok mérete nem változik, így töredezettség miattuk nem lép fel. A cserehely mérete megegyezhet a fizikai memória méretével. A Linux akkor használja a cserehelyet, ha már kezd fogyni a memória. Ha memóriánk elég nagy akkor előfordulhat, hogy sosem használja a gyorsabb működés 144 érdekében.
14. Fájlrendszer, jogosultságok Fájlrendszer: A Linuxot több külön álló fájlrendszerre szokás telepíteni, ha azt szerverként telepítjük. Ennek oka a biztonság növelése. Ha például a naplófájlok a /var/log könyvtárban valamilyen oknál fogva igen gyorsan megtöltik a partíciót, a rendszer nem áll meg a betelt partíció miatt, ha a /var/log külön partícióra került. Általában a következő könyvtárakat szokás külön partícióra tenni: /home /var /tmp /boot /usr 145
14. Fájlrendszer, jogosultságok Fájlrendszer: Partíciók A háttértárolókat (merevlemez) partíciókra osztjuk fel, amelyeken létrehozzuk a fájlrendszert. A partíciós tábla határozza meg a partíciók tárolásának módját. Kompatibilitási okokból a Linux alapértelmezetten a DOS partíciós táblát használja. 146
14. Fájlrendszer, jogosultságok Fájlrendszer: Partíciók A DOS partíciós táblában 4 elsődleges partíció lehet, a többi egy kiterjesztett partícióban helyezkedhet el. A kiterjesztett partíciót további részekre oszthatjuk, ezeket logikai partícióknak nevezzük. A GPT partíciós tábla korlátlan partíciót enged. Ez használatos ma már. 147
14. Fájlrendszer, jogosultságok Jogosultságok: A DAC szó a Discretionary Access Control szavakból alkotott betűszó, jelentése röviden Kizárólagos hozzáférés-vezérlés. Ez megengedi az azonosított felhasználóknak az objektumokhoz való hozzáférést azok tulajdonságai alapján. A hozzáférés csak a tulajdonosra, illetve csak a csoportra állítható be. Ezeket a unixos alapjogoknak is szokás nevezni. 148
14. Fájlrendszer, jogosultságok Jogosultságok: Ismert még a MAC vagy Mandatory Access Control, vagy Rendelkező hozzáférés-vezérlés. Az objektumok számára hozzáférési szabályokat hozunk létre, amely minden felhasználóra (még a rootra is) érvényesek. A harmadik a Role-based Accesss Control vagy RBAC. Szerep alapú hozzáférés-vezérlés. A rendszergazda különböző szerepeket hoz létre. Az egyes objektumokhoz az adott szerepben lehet hozzáférni, az adott jogokkal. 149
14. Fájlrendszer, jogosultságok Jogosultságok: Alapvetően háromféle jogot különböztetünk meg: Olvasás (r) Írás (w) Végrehajtás (x) A jogok háromféle felhasználónak adhatók: tulajdonos csoportba tartozó felhasználó mindenki más (aki az előző kettőben nincs benne) 150
14. Fájlrendszer, jogosultságok Jogosultságok: A chmod paranccsal állíthatjuk a jogokat, ahol néha hivatkozunk a tulajdonosokra, csoportokra, illetve mindenki másra, az alábbi táblázat alapján: tulajdonos user u csoport group g mások other o mindenki all a 151
14. Fájlrendszer, jogosultságok Jogosultságok: Példa: Az ls -l kiemente: -rw-r--r-- 1 joska joska 3184 dec 13 18.37.bashrc típus Tulajdono s joga Csoport joga Mások joga - rw- r-- r-- 152
14. Fájlrendszer, jogosultságok Jogosultságok: A típus lehet: Tartalom Jelentés - Szimpla fájl d Könyvtár D Solaris kapu (Folyamatok közötti kommunikáció) c Karakteres eszköz (tty v. nyomtató) b Blokkeszköz (lemez v. CD-ROM) l Szimbólikus link (symlink) s Socket = vagy p FIFO (System V, Linux) 153
14. Fájlrendszer, jogosultságok Jogosultságok: A chown parancs: A parancsot egy állomány vagy egy könyvtár tulajdonos illetve csoport beállítása használhatjuk. chown joska.joska fajlnev chown joska:joska fajlnev chown joska. fajlnev chown joska: fajlnev 154
14. Fájlrendszer, jogosultságok Jogosultságok: A chmod parancs: A jogok beállítására használható. Két módon adhatunk/vehetünk el jogokat. Az egyik számokkal, a másik betűkkel. Betűkkel először megadjuk kinek adunk vagy kitől veszünk el. Ez után +/- attól függően, hogy adunk vagy elveszünk. Majd végül mit adunk vagy mit veszünk el. A felhasználófajta halmozható, vagyis egymás után írhato például: ug, vagy uo vagy ugo. Ez utóbbi persze egyenlő azzal ha csak a -t adok 155 meg.
14. Fájlrendszer, jogosultságok Jogosultságok: A chmod parancs: Szeretnénk a felhasználónak írási jogot adni az erdo.txt fájlra: chmod u+w erdo.txt Adjunk a csoportnak és a tulajdonosnak minden jogot: chmod ug+rwx erdo.txt 156
14. Fájlrendszer, jogosultságok Jogosultságok: A chmod parancs: Megadás számokkal: chmod 770 erdo.txt Jelentés (bináris számrendszer): tulajdonos csoport mások 421 421 000 157
14. Fájlrendszer, jogosultságok Jogosultságok: A setuid, setgid, sticky bitek: SETUID: Időnként szükség van arra, hogy egy egyszerű felhasználó egy privilegizált felhasználó jogaival rendelkezzen. Talán a legegyszerűbb eset a jelszó megváltoztatása. Egy egyszerű felhasználó nem írhatja közvetlenül a rendszer jelszófájlját, hiszen akkor bármikor korlátlan jogokhoz juthatna, de a saját jelszavát meg kell tudnia változtatni. Ehhez viszont írnia kell a jelszófájlba. Ezt az ellentmondást oldják fel úgy, hogy a programot ruházzák fel privilegizált jogokkal, a suid bit beállításával. A passwd parancs engedélyei a következők: -rwsr-xr-x 1 root root 28896 Sep 7 13:40 /usr/bin/passwd 158
14. Fájlrendszer, jogosultságok Jogosultságok: A setuid, setgid, sticky bitek: SETGID: Beállítása esetén a program annak a csoportnak a jogaival fog futni, akinek a fájl a birtokában van. A sgid bitet könyvtárak esetén is be lehet kapcsolni. Ennek eredményeként, ha ebben a könyvtárban bárki létrehoz egy fájlt (ehhez a többi jognak rendben kell lennie), akkor a fájl csoporttulajdonosa nem az a csoport lesz, amelyikbe a felhasználó tartozik, hanem az, akinek a könyvtár a birtokában van. 159
14. Fájlrendszer, jogosultságok Jogosultságok: A setuid, setgid, sticky bitek: STICKY: A sticky bit bekapcsolása fájlok esetén azt jelzi az operációs rendszernek, hogy a fájlt tartsa a memóriában a végrehajtás után is. Ennek a tulajdonságnak akkor van értelme, ha azt szeretnénk, hogy egy program minél gyorsabban induljon el, ne kelljen várni arra, hogy betöltődjön a memóriába. A sticky bitet be lehet kapcsolni könyvtárak esetén is. Az ilyen bittel ellátott könyvtárban bárki írhat fájlokat (a többi jognak is rendben kell lennie), de mindenki csak a sajátját törölheti. Ezt a lehetőséget pontosan azért tervezték, hogy az olyan, mindenki által írható könyvtárakban, mint például a /tmp, a felhasználók ne tudják a másik felhasználó által írt fájlokat módosítani, letörölni. 160
15. Shell, héjprogramozás, fájlok Shell: parancsértelmező. Többféle is létezik: zsh, csh, bash stb. A legelterjedtebb: BASH = BOURNE AGAIN SHELL Fejlett parancsértelmező, tudása azért elmarad a fejlett programnyelvekétől. PDF: BASH SHELL PROGRAMOZÁS (basic2bash) Készítette: Raffai Gábor István alias Glindorf 161
15. Shell, héjprogramozás, fájlok Shell: parancsértelmező. Többféle is létezik: zsh, csh, bash stb. A legelterjedtebb: BASH = BOURNE AGAIN SHELL http://szit.hu/doku.php?id=oktatas:linux:shell_programoz%c3%a1s 162
15. Shell, héjprogramozás, fájlok Fájlkezelés: fájlműveletek Fájlkezelő alkalmazások: Midnight Commander (mc, text alapú) Gnome Commander (GNOME gui) Krusader (KDE gui) stb. 163
Köszönöm a figyelmet! 164