Unix/Linux
Časť 5
O čom budeme hovoriť
- Unix v rokoch osemdesiatych a deväťdesiatych
- Linuxové distribúcie
- balíčkovacie systémy
- aký softvér používam a odporúčam
- ukážky okenných manažérov
Unix v rokoch 80-tych a 90-tych
1983 - AT&T môže predávať Unix
1984 - vznik GNU
Kto (firma/organizácia) mal v druhej polovici 80-tych rokov najväčší podiel na unixovom trhu (ak rátame počet počítačov, na ktoré dodali Unix)?
Microsoft
Xenix
- MS predpokladal, že Xenix bude nástupcom MS-DOS, hneď, ako to hardvér dovolí
- MS-DOS inzerovali ako "jednopoužívateľský systém" a Xenix ako "multipoužívateľský a multitaskový systém"
- po tom, čo AT&T začalo predávať Unix, MS si myslel, že nemôže konkurovať a Xenix predal firme SCO
Berkeley Software Distribution
BSD
Podľa mňa najdôležitejšia distribúcia pôvodného Unixu
- 1974 - prvý Unix na University of California v Berkeley
- 1975 - Ken Thompson má sabatical a počas neho učí v Berkeley a implementuje Pascal na tamojší Unix
- v jeho práci pokračujú študenti Chuck Haley a Bill Joy*
- 1978 - 1BSD
- ex, vi, csh... (Bill Joy)
- sieťové nástroje (TCP/IP, sockety...)
- 1989 - odstránenie AT&T kódu zo systému a vydanie pod vlastnou licenciou (BSD licencia)
*Bill Joy bol v roku 1982 jedným zo štyroch zakladateľov Sun Microsystems
4.3BSD-Reno
Verzia BSD z roku 1990
Greatest Software Ever Written*
* podľa časopisu InformationWeek z augusta 2006
BSD/386
- proprietárna implementácia BSD pre i386 procesory
- vyvolala 2 roky trvajúce právne spory s AT&T (USL)
- právna neistota spomalila vývoj BSD
- Linux získal náskok
386BSD
- Free implementácia BSD Unixu pre i386 procesory.
- vydaná v r. 1992, ale vývoj začal skôr, ako na Linuxe
- neujala sa (predbehol ju Linux + právne problémy)
- základ pre NetBSD a FreeBSD
Významné deriváty BSD
V r. 1995 bola vydaná posledná verzia BSD Unixu z Berkeley
-
FreeBSD - všeúčelný
- Next NEXTSTEP a OPENSTEP (Mach kernel)
- Darwin (Apple, Mach-o kernel)
- Next NEXTSTEP a OPENSTEP (Mach kernel)
-
NetBSD - zameraný na čistý dizajn a portovateľnosť
- OpenBSD - zameraný na bezpečnosť
Distribúcie Linuxu
Čo je distribúcia?
Distribúcia je pomenovanie pre balík softvéru dodávaný spolu s jadrom (Linux).
Distribúcie vytvárajú rôzni ľudia, organizácie aj firmy.
Väčšinou obsahujú predvybraný softvér, sú nejako nakonfigurované a/alebo zamerané na nejaký účel.
Zoznam distribúcií
Distribúcií je veľa a nováčik sa môže vo výbere stratiť
Moja rada: vybrať si hocičo z tých populárnejších a pri inštalácii si dať /home adresár na samostatný disk (partíciu)
Ak nebude vyhovovať:
- je to Unix, všetko sa dá vymeniť alebo prispôsobiť a softvér sa dá doinštalovať
- prinajhoršom sa dá preinštalovať (tu sa zíde mať home na samostatnom disku)
Populárne distribúcie
- Ubuntu a jeho varianty, asi najrozšírenejšia, pre bežných ľudí aj odborníkov
- Arch Linux - veľká konfigurovateľnosť, minimálna defaultná konfigurácia, skvelé návody
- Fedora - pre bežných ľudí aj odborníkov
- Linux Mint - jednoduché a graficky pekne vyladené distro, vhodné napr. pre grafikov
- Debian - skôr pre odborníkov, obľúbené na serveroch
Balíčkovacie systémy
Každá distribúcia má nejaký štandardný spôsob inštalácie softvéru.
Distribúcie majú na internete dostupné repozitáre, z ktorých je možné inštalovať programy
Balíčkovacie systémy
- deb balíčky: Debian, Ubuntu, Linux Mint
- rpm balíčky: Fedora, Red Hat, CentOS
- pacman balíčky: Arch
- ... x ďalších
- zdrojové kódy + kompilácia: Gentoo, Linux From Scratch
Balíčkovací systém APT
Inštaluje deb balíčky
# aktualizovať zoznam dostupného softvéru
apt update
# nainštalovanie softvéru
apt install názov
# odinštalovanie
apt remove názov
# upgrade všetkého nainštalovaného softvéru na najnovšiu verziu
apt upgrade
# grafické prostredie na výber SW pre konzolu
aptitude
# grafické prostredie pre GUI
synaptic
Balíčkovací systém Snap
Pokus o zjednotenie balíčkovacích systémov
Funguje na všetkých populárnych distribúciách
Balíčky sa inštalujú napr. grafickým programom snap-store
Kontroverzia: server so zoznamom balíčkov je iba jeden
a jeho kód nie je open source
Vplyv Unixu/Linuxu na nás
- architektúra vývoja SW
- teória programovacích jazykov
- open source
- internet a siete
- balíčkovacie systémy (composer, npm, pip, brew...)
- App Store, Google Play Store...
- microservices
- git - distribuovaný, autorom je Linus Torvalds
- kontajnerizácia na serveroch (Docker)
Aký softvér používam a odporúčam
Ubuntu
Distribúcia:
- založená na Debiane (stabilná, bezpečná)
- obsahuje asi najrozsiahlejšiu databázu softvéru inštalovateľného cez balíčkovací systém
- veľa návodov
Okenný manažér:
aktuálne
- rýchly
- minimalistický
- tiling aj floating
- pomáha mi focusovať sa na prácu
Okenný manažér:
dlhé roky
- rýchly
- graficky vyladený
- veľmi prispôsobiteľný
- viem si nastaviť prostredie tak, ako chcem
- floating aj tiling
- mínus: nestabilný, binárne konfiguráky
Okenný manažér:
z času na čas
- rýchly (skvelá voľba pre slabé počítače)
- minimalistický
- iba floating
- okenné taby(!)
- mínus: neohúri dizajnom
Iné:
- terminál: alacritty alebo terminator
- shell: fish
- grafika: Inkscape, Gimp
- prehliadač: Firefox
- emailový klient: Thunderbird
- office: Libre Office
- hry: Steam
- terminal multiplexer: tmux
- editor kódu: Neovim
Ukážky okenných manažérov
Ďakujem za pozornosť
Unix/Linux, časť 5
By Milan Herda
Unix/Linux, časť 5
- 591