SlideShare a Scribd company logo
1 of 16
Marko Nikolić, 22.04.2022.
Osnovni koncepti, arhitektura i korišćenje
Istorijat
UNIX koreni
• Unix nastaje sredinom `60-tih godina
• AT&T i Berkeley prave svoje distribucije; nastaje problem sa licencama
• GNU nastaje 1983
• Minix se koristi u nastavi, ali nije slobodan za distribuciju
• 25.08.1991. - početak Linuxa
Linux je OS
Ili nije
• GNU/Linux
• Kernel
• Interfejs između procesa i hardvera
• Menadžment procesa
• Menadžment resursa
• I/O menadžment
• Distribucije
Arhitektura
• Dva “režima” rada: user i kernel
• Sve je korisnička aplikacija (bash, xwin…)
• Nema “specijalnih” aplikacija u user space-u
• glibc je standardna run time biblioteka
• KISS princip
• Do one thing and do it well
Interakcija sa OS-om
Terminal
• Služi za ulaz/izlaz
• Tekstualni ili grafički
• Uvek postoji neki “shell” za interakciju sa korisnikom
• Tekstualni - sh, bash, zsh
• Grafički - Gnome, KDE, Cinnamon
• Terminal može biti lokalni i udaljeni - suštinski rade na isti način!
Terminal server
Tekstualni
• Aplikacija (servis) namenjen da komunicira sa terminalima
• Prihvata ulaz sa terminala, izvršava komandu, preuzima izlaz komande i šalje
terminalu
• Ulaz i izlaz se vrši kroz “kanale”
• Standardni, predefinisani kanali: stdin, stdout, stderr
• Kanali mogu da se preusmeravaju ili šalju kroz “pipe”-ove
• Primer
Terminalske komande
Bash
• Svaki terminal ima svoj “shell”. Shell omogućava naprednu interakciju:
• Editovanje komandi
• Kreiranje skripti
• Promenljive okruženja
• Podrazumevani i najčešći shell je “bash”; uvek postoji sh, postoje i ksh i zsh.
• Komande mogu da budu interne ili eksterne
• ls, rm - listanje, brisanje fajlova
• mkdir, cd, rmdir, pwd - kreiranje, promena, brisanje, prikaz trenutnog direktorijuma
• cat, more, less - prikaz sadržine fajla
• grep - filtriranje ulaza
• head, tail - prikaz početka ili kraja fajla
• https://cheatography.com/davechild/cheat-sheets/linux-command-line/
Terminalski pristup
• Terminal se koristi za izvršavanje lokalnih komandi, ali i komandi na
udaljenom računaru.
• Udaljeni računar ne mora da ima ulazne uređaje, npr. VM na AWS-u.
• Većina internet servera sadrže samo minimum potrebnih servisa.
• SSH - Secure Shell - omogućava kriptovanu komunikaciju sa serverima
• Javni i privatni ključ (public/private key)
• Asimetrična kriptografija
Terminal server
Grafički
• Suštinski se ne razlikuje od tekstualnog terminala.
• Ulaz su miš I tastatura, izlaz je neka grafika.
• X server i client su terminal server i terminal. Server i
terminal barataju sa grafičkim primitivama, koje su
ekvivalent karakterima kod tekstualnog terminala.
• Shell je window manager npr. Gnome, Cinnamon, KDE…
• Grafičke performanse mogu da zavise od načina primene.
• Postoji više tipova file system-a, svaki sa svojim prednostima i manama, npr.
ext4 , brtfs, zfs…
• Predstavlja organizaciju datoteka na nekom medijumu (disk, memorija,
traka…).
• Šta je datoteka?
Sistem datoteka (file system)
Koncept
• Sve.
• Unix apstrakuje datoteku kao podatke koji mogu da se čitaju i zapisuju, bez
pretpostavki odakle. Uređaji su datoteke. Procesi su datoteke. CPU je datoteka.
• Drajver za uređaj je softver koji omogućava da se čita i piše na neki uređaj.
• /etc - globalni konfiguracioni fajlovi
• /dev - uređaji
• /proc - process
• /var/log - logovi
• /lib, /usr/lib - biblioteke
• /bin, /usr/bin - komande
• /opt - dodatne aplikacije
• /home/<username> - home direktorijum
Sistem datoteka (file system)
Specijalni direktorijumi
• Sadrži fajlove korisnika koji je ulogovan. Sve što je u $HOME direktorijumu je
privatno za tog korisnika.
• Fajlovi koji počinju sa “.” su nevidljivi, osim ako se eksplicitno ne zahteva
njihov prikaz.
• Simbol ~ je sinonim za $HOME direktorijum.
• Prava pristupa:
drwxr-xr-x+ 4 markonikolic staff 128 Apr 21 20:07 Public = 755
-rwxr-xr-x 1 markonikolic staff 24 Apr 23 01:07 script.sh = 755
-rw-r--r-- 1 markonikolic staff 42 Apr 23 01:07 test.txt = 644
• chown, chmod - promena vlasništva i prava
Sistem datoteka (file system)
Home direktorijum
• Hard i soft (simbolički) linkovi
ln -s target link_name
• Montiranje diskova. Nema odvojenih diskova (C:, D:…), već se sve nalazi u
jednom fajl sistemu.
mount [-t type] device dir
mkdir ~/usb
mount /dev/sdb ~/usb
mkdir ~/dvd
mount image.iso ~/dvd -o loop
• df -h — prikazuje se zauzetost diskova i preostali prostor na njima
Sistem datoteka (file system)
Terminalski pristup
Secure Shell
• Standard za pristup udaljenim računarima preko terminala (naslednik telnet-a,
rlogin-a…)
• Koristi logovanje korišćenjem un/pw ili daleko bolje, javnim/privatnim ključem.
• Javni ključ se postavi na server(e) u $HOME/.ssh/authorized_keys
• Privatni ključ se nalazi lokalno, u $HOME/.ssh direktorijumu
ssh user@server -i .ssh/private_key
• Moguće je direktno izvršiti komande na udaljenom računaru
ssh user@server ls -l
• Aplikacije se retko instaliraju direktnim downloadom, već se koriste
repozitorijumi.
• Menadžer aplikacija se razlikuje u distribucijama, pa postoje apt-get, yum,
pacman…. Princip rada je sličan.
• Izbegavaju se problemi sa zavisnošću biblioteka, nedostajući frameworci itd…
• Update sistema je veoma brz.
Instalacija aplikacija
Primer
• Aplikacije se retko instaliraju direktnim downloadom, već se koriste
repozitorijumi.
• Menadžer aplikacija se razlikuje u distribucijama, pa postoje apt-get, yum,
pacman…. Princip rada je sličan.
• Izbegavaju se problemi sa zavisnošću biblioteka, nedostajući frameworci itd…
sudo apt update
sudo apt install appxyz
sudo apt upgrade
sudo apt distupgrade
• Update sistema je veoma brz.
Instalacija aplikacija
Primer

More Related Content

Similar to Linux osnove prezentacija o linuxu na srpskom

Similar to Linux osnove prezentacija o linuxu na srpskom (20)

Softver racunara
Softver racunaraSoftver racunara
Softver racunara
 
Softver racunara
Softver racunaraSoftver racunara
Softver racunara
 
Hardvarske komponente računara
Hardvarske komponente računaraHardvarske komponente računara
Hardvarske komponente računara
 
Hardvarske komponente računara
Hardvarske komponente računaraHardvarske komponente računara
Hardvarske komponente računara
 
hardware_racunara1.ppt
hardware_racunara1.ppthardware_racunara1.ppt
hardware_racunara1.ppt
 
hardware_racunara1.ppt
hardware_racunara1.ppthardware_racunara1.ppt
hardware_racunara1.ppt
 
hardware_racunara1.ppt
hardware_racunara1.ppthardware_racunara1.ppt
hardware_racunara1.ppt
 
hardware_racunara1.ppt
hardware_racunara1.ppthardware_racunara1.ppt
hardware_racunara1.ppt
 
Komponente hardvera pc a
Komponente hardvera pc aKomponente hardvera pc a
Komponente hardvera pc a
 
Komponente hardvera pc a
Komponente hardvera pc aKomponente hardvera pc a
Komponente hardvera pc a
 
L151 - Računarstvo i informatika - Operativni sistemi - Tamara Stojiljković -...
L151 - Računarstvo i informatika - Operativni sistemi - Tamara Stojiljković -...L151 - Računarstvo i informatika - Operativni sistemi - Tamara Stojiljković -...
L151 - Računarstvo i informatika - Operativni sistemi - Tamara Stojiljković -...
 
L151 - Računarstvo i informatika - Operativni sistemi - Tamara Stojiljković -...
L151 - Računarstvo i informatika - Operativni sistemi - Tamara Stojiljković -...L151 - Računarstvo i informatika - Operativni sistemi - Tamara Stojiljković -...
L151 - Računarstvo i informatika - Operativni sistemi - Tamara Stojiljković -...
 
Strujturarac.sistema
Strujturarac.sistemaStrujturarac.sistema
Strujturarac.sistema
 
Strujturarac.sistema
Strujturarac.sistemaStrujturarac.sistema
Strujturarac.sistema
 
Hardver
HardverHardver
Hardver
 
Hardver
Hardver Hardver
Hardver
 
Hardver Prezentacija
Hardver  PrezentacijaHardver  Prezentacija
Hardver Prezentacija
 
Hardver
HardverHardver
Hardver
 
Hardver
Hardver Hardver
Hardver
 
Hardver Prezentacija
Hardver  PrezentacijaHardver  Prezentacija
Hardver Prezentacija
 

Linux osnove prezentacija o linuxu na srpskom

  • 1. Marko Nikolić, 22.04.2022. Osnovni koncepti, arhitektura i korišćenje
  • 2. Istorijat UNIX koreni • Unix nastaje sredinom `60-tih godina • AT&T i Berkeley prave svoje distribucije; nastaje problem sa licencama • GNU nastaje 1983 • Minix se koristi u nastavi, ali nije slobodan za distribuciju • 25.08.1991. - početak Linuxa
  • 3. Linux je OS Ili nije • GNU/Linux • Kernel • Interfejs između procesa i hardvera • Menadžment procesa • Menadžment resursa • I/O menadžment • Distribucije
  • 4. Arhitektura • Dva “režima” rada: user i kernel • Sve je korisnička aplikacija (bash, xwin…) • Nema “specijalnih” aplikacija u user space-u • glibc je standardna run time biblioteka • KISS princip • Do one thing and do it well
  • 5. Interakcija sa OS-om Terminal • Služi za ulaz/izlaz • Tekstualni ili grafički • Uvek postoji neki “shell” za interakciju sa korisnikom • Tekstualni - sh, bash, zsh • Grafički - Gnome, KDE, Cinnamon • Terminal može biti lokalni i udaljeni - suštinski rade na isti način!
  • 6. Terminal server Tekstualni • Aplikacija (servis) namenjen da komunicira sa terminalima • Prihvata ulaz sa terminala, izvršava komandu, preuzima izlaz komande i šalje terminalu • Ulaz i izlaz se vrši kroz “kanale” • Standardni, predefinisani kanali: stdin, stdout, stderr • Kanali mogu da se preusmeravaju ili šalju kroz “pipe”-ove • Primer
  • 7. Terminalske komande Bash • Svaki terminal ima svoj “shell”. Shell omogućava naprednu interakciju: • Editovanje komandi • Kreiranje skripti • Promenljive okruženja • Podrazumevani i najčešći shell je “bash”; uvek postoji sh, postoje i ksh i zsh. • Komande mogu da budu interne ili eksterne • ls, rm - listanje, brisanje fajlova • mkdir, cd, rmdir, pwd - kreiranje, promena, brisanje, prikaz trenutnog direktorijuma • cat, more, less - prikaz sadržine fajla • grep - filtriranje ulaza • head, tail - prikaz početka ili kraja fajla • https://cheatography.com/davechild/cheat-sheets/linux-command-line/
  • 8. Terminalski pristup • Terminal se koristi za izvršavanje lokalnih komandi, ali i komandi na udaljenom računaru. • Udaljeni računar ne mora da ima ulazne uređaje, npr. VM na AWS-u. • Većina internet servera sadrže samo minimum potrebnih servisa. • SSH - Secure Shell - omogućava kriptovanu komunikaciju sa serverima • Javni i privatni ključ (public/private key) • Asimetrična kriptografija
  • 9. Terminal server Grafički • Suštinski se ne razlikuje od tekstualnog terminala. • Ulaz su miš I tastatura, izlaz je neka grafika. • X server i client su terminal server i terminal. Server i terminal barataju sa grafičkim primitivama, koje su ekvivalent karakterima kod tekstualnog terminala. • Shell je window manager npr. Gnome, Cinnamon, KDE… • Grafičke performanse mogu da zavise od načina primene.
  • 10. • Postoji više tipova file system-a, svaki sa svojim prednostima i manama, npr. ext4 , brtfs, zfs… • Predstavlja organizaciju datoteka na nekom medijumu (disk, memorija, traka…). • Šta je datoteka? Sistem datoteka (file system) Koncept • Sve. • Unix apstrakuje datoteku kao podatke koji mogu da se čitaju i zapisuju, bez pretpostavki odakle. Uređaji su datoteke. Procesi su datoteke. CPU je datoteka. • Drajver za uređaj je softver koji omogućava da se čita i piše na neki uređaj.
  • 11. • /etc - globalni konfiguracioni fajlovi • /dev - uređaji • /proc - process • /var/log - logovi • /lib, /usr/lib - biblioteke • /bin, /usr/bin - komande • /opt - dodatne aplikacije • /home/<username> - home direktorijum Sistem datoteka (file system) Specijalni direktorijumi
  • 12. • Sadrži fajlove korisnika koji je ulogovan. Sve što je u $HOME direktorijumu je privatno za tog korisnika. • Fajlovi koji počinju sa “.” su nevidljivi, osim ako se eksplicitno ne zahteva njihov prikaz. • Simbol ~ je sinonim za $HOME direktorijum. • Prava pristupa: drwxr-xr-x+ 4 markonikolic staff 128 Apr 21 20:07 Public = 755 -rwxr-xr-x 1 markonikolic staff 24 Apr 23 01:07 script.sh = 755 -rw-r--r-- 1 markonikolic staff 42 Apr 23 01:07 test.txt = 644 • chown, chmod - promena vlasništva i prava Sistem datoteka (file system) Home direktorijum
  • 13. • Hard i soft (simbolički) linkovi ln -s target link_name • Montiranje diskova. Nema odvojenih diskova (C:, D:…), već se sve nalazi u jednom fajl sistemu. mount [-t type] device dir mkdir ~/usb mount /dev/sdb ~/usb mkdir ~/dvd mount image.iso ~/dvd -o loop • df -h — prikazuje se zauzetost diskova i preostali prostor na njima Sistem datoteka (file system)
  • 14. Terminalski pristup Secure Shell • Standard za pristup udaljenim računarima preko terminala (naslednik telnet-a, rlogin-a…) • Koristi logovanje korišćenjem un/pw ili daleko bolje, javnim/privatnim ključem. • Javni ključ se postavi na server(e) u $HOME/.ssh/authorized_keys • Privatni ključ se nalazi lokalno, u $HOME/.ssh direktorijumu ssh user@server -i .ssh/private_key • Moguće je direktno izvršiti komande na udaljenom računaru ssh user@server ls -l
  • 15. • Aplikacije se retko instaliraju direktnim downloadom, već se koriste repozitorijumi. • Menadžer aplikacija se razlikuje u distribucijama, pa postoje apt-get, yum, pacman…. Princip rada je sličan. • Izbegavaju se problemi sa zavisnošću biblioteka, nedostajući frameworci itd… • Update sistema je veoma brz. Instalacija aplikacija Primer
  • 16. • Aplikacije se retko instaliraju direktnim downloadom, već se koriste repozitorijumi. • Menadžer aplikacija se razlikuje u distribucijama, pa postoje apt-get, yum, pacman…. Princip rada je sličan. • Izbegavaju se problemi sa zavisnošću biblioteka, nedostajući frameworci itd… sudo apt update sudo apt install appxyz sudo apt upgrade sudo apt distupgrade • Update sistema je veoma brz. Instalacija aplikacija Primer