07. Linux

Osnove o Linuxu

Gdje se koristi Linux?

Koristi se koristi u raznim pametnim uređajima, smartfonima, pametnim televizorima, u svemirskim letjelicama, automobilima, a obično je i prvim izborom kao temeljni operacijski sustav na serverima. Stoga nema baš nikakva razloga da ga se ne proba i kao primarni operacijski sustav na desktop računarima i laptopima.

Kernel

Većina pod terminom Linux smatra neku od brojnih dostupnih distribucija operacijskog sustava koji je temeljen na Linuxovom kernelu, a to je ono što Linux zapravo jest, jezgra sustava.

Kernel je središnji dio operacijskog sustava koji povezuje hardver i aplikacije, a onda se oko njega gradi cjelokupni operacijski sistem sa svojim interfejsom, dodatnim aplikacijama i nekim karakterističnim mogućnostima svojstvenim upravo distribucijama kojih je tokom vremena nastao pozamašan broj, a koje udahnjuju vlastiti šarm i funkcionalne mehanizme.

Distribucija (Distro)

…je operativni sistem nastao na Linux kernelu, te je dio velike UNIX familije. Budući da se sa samim Linux kernelom ne bi se moglo napraviti puno toga, dodaje se grafičko sučelje (X-Windows, Wayland, Compiz), razni programi, alati i sl., čime nastaje distribucija Linuxa.

Distribucije se mogu nazvati i kompilacijama, jer su upravo to – kompilacije najrazličitijeg softvera, a tvore cjelokupan i funkcionalan operacijski sustav spreman za korištenje na svim oblicima računara. 

 Debian
Veteran u svijetu Linux distribucija poznat po stabilnosti i prilagodljivosti. Svojom striktnom filozofijom uključuje samo slobodan softver. Vrlo je popularan na serverima, ali i na računarima. Podržava ga ogromna zajednica, ali nije u potpunosti prilagođen početnicima. Nudi veliki izbor grafičkih interfejsa.
 Fedora
Popularna distribucija koju sponzorira Red Hat. Odlikuje se najnovijim softverom iz FLOSS svijeta što često dovodi do nestabilnosti, te uglavnom uključuje samo slobodan softver. Zbog svega navedenog ipak nije najbolji izbor za početnike. Nudi veliki izbor grafičkih interfejsa.
 Linux Mint
Najpopularnija distribucija bazirana na Debianu i Ubuntuu, koja je još više prilagođena početnicima nego originalni Ubuntu jer uključuje i ostale aplikacije za koje je potrebna posebna licenca itd. Kompatibilan je s Ubuntuovim i Debianovim paketima. Razvija vlastita grafička okruženja Cinnamon i MATE.
 OpenSUSE
Slobodna distribucija iza koje stoji Novell. Pruža jedno od najkvalitetnijih izdanja KDE okruženja, a namijenjen je početnicima i naprednim korisnicima; upravljanje je centralizirano kroz grafičku aplikaciju YaST.
 Ubuntu
Najraširenija distribucija i najzaslužniji za popularizaciju Linuxa. Baziran je na Debianu. Iako je prvenstveno namijenjen početnicima, koriste ga i iskusniji korisnici. Dolazi s grafičkim intefejsom Unity, ali postoje i službene verzije s ostalim sučeljima: Kubuntu (KDE), Xubuntu (XFCE), Lubuntu (LXDE) itd. Financiranje i razvoj podupire tvrtka Canonical.

Terminal (konzola)

U svim operativnim sistemima koje se temelje na UNIX-u, konzola (terminal) se upotrebljava u velikoj mjeri (u osnovi ne koristi se izvorna konzola, već shell – koji omogućava interakciju korisnika sa konzolom).

Većina distribucija Linux-a ima malo grafičkih alata koji se koriste za podešavanje i održavanje sistema, tako da se veliki broj operacija mora vršiti iz konzole, jednostavnim unošenjem komandi preko tastature. Stoga, da bi uspješno mogli raditi na jednom Linux operativnom sistemu, svakako je potrebno dobro poznavati konzolu.

Konzole većine operativnih sistema zasnovanih na UNIX-u koriste BASH shell (Bourne Again Shell).

Desktop okruženja

Kada je u pitanju Linux, desktop okruženje je vrlo bitna stvar.

Desktop okruženje čini grafičko korisničko sučelje (GUI – Graphical User Interface) zajedno sa skupom aplikacija koje dobivate u svojoj distribuciji Linuxa.

Ovo su neki od najpopularnijih desktop okruženja:

GNOME (GNU Network Object Model Environment):

  • Filozofija: GNOME je desktop okruženje koje se fokusira na jednostavnost, intuitivni dizajn i korisničko iskustvo. Naglasak je na olakšavanju rada korisnicima bez suvišnih kompleksnosti.
  • Dizajn i korisnički interfejs: Ima moderni i elegantni dizajn s intuitivnim korisničkim interfejsom. Koristi GNOME Shell kao osnovni interfejs.

KDE (K Desktop Environment):

  • Filozofija: KDE je desktop okruženje koje se fokusira na moć, fleksibilnost i bogatstvo funkcionalnosti. Nastoji pružiti korisnicima potpunu kontrolu nad svojim radnim okruženjem.
  • Dizajn i korisnički interfejs: Ima modularnu arhitekturu i nudi razne komponente kao što su Plasma Workspace, KDE Applications i KDE Frameworks. Koristi Plasma Shell kao osnovni interfejs.
  • Korisnici Windows OS će najviše voljeti KDE zbog sličnosti ali i daleko veće kontrole mnogih stvari u interfejsu.

Xfce

  • Filozofija: Xfce je desktop okruženje koje kombinira lahkoću i brzinu s dovoljno funkcionalnosti. Cilj mu je biti resursno efikasan, što ga čini odličnim izborom za starije ili slabije računare.
  • Dizajn i korisnički interfejs: Ima jednostavan i čist dizajn s fokusom na učinkovitost i brzinu.

Repozitorij

U Linuxu, repozitorij (eng. repository) je skladište softvera koje sadrži kolekciju paketa koji se mogu instalirati, ažurirati ili ukloniti sa sistema koristeći alat za upravljanje paketima. Repozitoriji se obično nalaze na serverima koji su dostupni putem interneta, ali mogu biti postavljeni i lokalno.

Svaka distribucija ima svoje repozitorije. Isto tako mnogi ISP provajderi pružaju usluga hostanja repozitorija na svojim serverima i ta se usluga zove mirror.

Instalacija aplikacija

Instaliranje aplikacija na Linuxu može se obaviti na nekoliko načina, u zavisnosti od distribucije koju koristite i željenog načina instalacije. Evo nekoliko uobičajenih metoda:

  1. Preko Package Manager-a (putem repozitorija)

    • APT (Debian, Ubuntu, Linux Mint): Koristite terminal i komandu sudo apt install ime_paketa za instaliranje aplikacije. Npr., sudo apt install firefox će instalirati Firefox browser.

    • DNF (Fedora, CentOS, RHEL): Koristite terminal i komandu sudo dnf install ime_paketa za instalaciju aplikacije. Npr., sudo dnf install firefox će instalirati Firefox browser.

    • Pacman (Arch Linux): Koristite terminal i komandu sudo pacman -S ime_paketa za instaliranje aplikacije. Npr., sudo pacman -S firefox će instalirati Firefox browser.

  2. Preko Software Center-a:

    • Većina Linux distribucija ima svoj Software Center, gde možete pretraživati, pregledavati i instalirati aplikacije koristeći grafički interfejs.
  3. Preuzimanje i Instaliranje izvan repozitorija:

    • Ponekad možete preuzeti aplikaciju kao arhiviranu datoteku (npr. .tar.gz, .tar.xz) s web stranice developera. Nakon preuzimanja, dekompresujte arhivu i slijedite upute za instalaciju koje obično dolaze s aplikacijom.
  4. Koristeći Flatpak, Snap ili AppImage:

    • Neke distribucije podržavaju univerzalne pakete kao što su Flatpak, Snap i AppImage. Ovi paketi omogućavaju instalaciju aplikacija nezavisno od distribucije.

    • Za instalaciju Flatpak aplikacija koristite flatpak install ime_aplikacije.

    • Za instalaciju Snap aplikacija koristite sudo snap install ime_aplikacije.

    • Za instalaciju AppImage aplikacija preuzmite .AppImage datoteku, učinite je izvršivom (chmod +x ime_aplikacije.AppImage) i pokrenite je.

Važno je napomenuti da je instaliranje aplikacija na Linuxu obično bezbjedno, a softverski paketi su potpisani i provjereni od strane distribucija i zajednice, čineći Linux ekosistem sigurnim i pouzdanim.

Preporučujemo korištenje službenih repozitorija i preporučenih metoda instalacije kako biste imali najbolje iskustvo.

Package manager

Package manager  je alat koji olakšava instalaciju, updejtovanje, uklanjanje i upravljanje softverskim paketima na računarskom sistemu. Softverski paketi su arhivirane datoteke koje sadrže aplikacije, biblioteke, konfiguracije i druge komponente potrebne za funkcionalnost određenog softvera.

Osnovne funkcije package managera uključuju:

  1. Instalacija: Omogućava korisnicima da lako instaliraju nove softverske pakete na svojim računarima. Paketi se preuzimaju s udaljenih repozitorija ili lokalnih izvora.

  2. Updejtovanje: Pruža mehanizam za ažuriranje postojećih softverskih paketa na sistemu na najnovije dostupne verzije.

  3. Uklanjanje: Omogućava korisnicima da deinstaliraju softverske pakete s računara, uklanjajući ih zajedno sa svim zavisnostima koje više nisu potrebne.

  4. Upravljanje zavisnostima (dependency): Automatski upravlja zavisnostima softverskih paketa, obezbeđujući da se svi potrebni paketi instaliraju i ažuriraju kako bi se obezbjedio ispravan rad aplikacija.

  5. Pretraga i pregledavanje: Omogućava korisnicima da pretražuju dostupne pakete, dobijaju informacije o paketima (opis, verzija, autor, licenca itd.) i saznaju koji su paketi instalirani na sistemu.

  6. Sigurnost: Pruža mehanizme za provjeru i potvrdu integriteta paketa kako bi se osiguralo da su paketi autentični i bezbjedni za instalaciju.

Primjeri popularnih package managera u Linux okruženjima uključuju:

  • APT (Advanced Package Tool): Koristi se u Debian-based distribucijama kao što su Ubuntu, Debian, Linux Mint.

  • DNF (Dandified YUM): Koristi se u Fedora, CentOS, RHEL i drugim distribucijama koje koriste RPM pakete.

  • Pacman: Koristi se u Arch Linux distribuciji.

  • zypper: Koristi se u openSUSE distribuciji.

Svaka distribucija ima svoj specifičan package manager i sistem za upravljanje paketima prilagođen njenim potrebama i standardima. Package manageri olakšavaju održavanje i upravljanje softverom na računarima i doprinose boljem iskustvu korisnika.

Kurs o Linux operativnom sistemu za početnike

⌨️ Intro
⌨️ Install Linux
⌨️
Desktop Environment
⌨️
Terminal
⌨️
Working with Directories
⌨️
Working with Files
⌨️
Working with File Content
⌨️
Linux File Structure
⌨️ System Information
⌨️
Networking
⌨️
Linux Package Manager
⌨️
Text Editor

Instalacija

Video je snimljen prije 5 godina. Jedino što nije aktuelno su cijene SSD-ova ali je sve ostalo isto.

Vježba #7

  1. Instalirati programe putem package managera:
    • Transmission (Torrent klijent) .
    • Google Chrome
    • Brave
    • Libre Office