Zagadnienia-na-kolokwium-SO-1
Architektura systemu Linux
1. Dystrybucja Linuxa
System uniksopodobny oparty na jądrze Linux.
Kompletność: zawiera menedżer pakietów oraz dodatkowe narzędzia
Rodzaje dystrybucji: różnice dotyczą:
konfiguracji systemu
przeznaczenia
sposobu zarządzania
wyglądu interfejsu graficznego
sposobu obsługi
zawartości oprogramowania
poziomu zaawansowania
2. Najpopularniejsze dystrybucje
Red Hat Enterprise Linux (RHEL):
Płatna dystrybucja przeznaczona dla dużych korporacji i serwerów.
CentOS:
Darmowy odpowiednik RHEL, używany głównie na serwerach.
Fedora:
Innowacyjna dystrybucja z krótkim okresem wsparcia, dla entuzjastów nowości.
Debian:
Stabilna baza dla wielu dystrybucji, w tym Ubuntu.
Ubuntu:
Przyjazna dla użytkownika, idealna dla początkujących z dużym wsparciem społeczności.
Arch Linux:
NixOS:
Nowoczesny system z deklaratywnym podejściem do zarządzania konfiguracją.
Budowa: Ubuntu wywodzi się z Debiana, a RHEL i CentOS mają korzenie w Fedorze.
Zastosowanie systemu Linux
1. Procesy użytkownika
Graficzny Interfejs Użytkownika: wizualna interakcja z systemem.
Serwery: odpowiedzialne za różne usługi systemowe, np. obsługa stron www.
Powłoka: interfejs wiersza poleceń, np. bash.
2. Jądro systemu Linux
Wywołania systemowe: interfejs między programami użytkownika a jądrem.
Zarządzanie procesami: kontrola nad tworzeniem, wykonywaniem i kończeniem procesów.
Zarządzanie pamięcią: alokacja i zarządzanie pamięcią.
Sterowniki urządzeń: komunikacja między systemem a sprzętem.
3. Sprzęt
Procesor (CPU): wykonuje instrukcje i obliczenia.
Pamięć operacyjna (RAM): przechowuje aktualnie używane dane.
Dyski: zapewniają trwałe przechowywanie danych.
Porty sieciowe: komunikacja z innymi urządzeniami w sieci.
Zastosowania Linuxa obejmują serwery, infrastrukturę IT, stacje robocze do rozwoju oprogramowania itp.
Główne moduły LSM
Trzy główne moduły
Security-Enhanced Linux (SELinux):
Dostępy: Mandatory Access Control (MAC)
AppArmor:
Dostępy: MAC, Discretionary Access Control (DAC)
Smack:
Dostępy: MAC
Mocne i słabe strony Linuxa
Słabe strony:
Problemy ze zgodnością sprzętu
Trudna krzywa uczenia się
Ograniczona dostępność oprogramowania
Brak standaryzacji
Ograniczone wsparcie komercyjne
Mocne strony:
Wysoka elastyczność i konfigurowalność
Duża społeczność dostarczająca wsparcia
Możliwość wykorzystania na wielu rodzajach sprzętu
Bezcenne narzędzia do bezpieczeństwa
Popularne powłoki
Gnome, KDE, sh, Bash, Csh, Zsh
Interfejsy w Linuxie
Interfejs:
Punkt komunikacji z innymi urządzeniami w sieci
Wysyłanie danych, komunikacja
Obsługuje protokoły (np. TCP/IP)
Interfejsy fizyczne:
Ethernet (eth0, eth1, etc.)
Wi-Fi (wlan0, wlan1, etc.)
Interfejsy wirtualne:
Loopback (lo)
Tunelowe (tun0, tap0)
Mostkowe (br0)
Interfejsy Dockerowe (docker0)
Komendy sieciowe:
ifconfig: Pokazuje konfigurację kart sieciowych (zastąpione przez ip a)
route: Pokazuje tablice tras (zastąpione przez ip route show)
arp: Tablica ARP (zastąpione przez ip neigh)
Tablica routingu
Zbiór reguł w systemie operacyjnym, który określa przesyłanie pakietów danych.
Rodzaje tras
Statyczna: dodawana ręcznie
Dynamiczna: zarządzana przez protokoły (np. OSPF, RIP)
Usuwanie tras
Komenda:
ip route del example
Brama domyślna
Domyślny adres gdzie pakiety są wysyłane, gdy brak konkretnej trasy.
Network manager
Narzędzie do zarządzania sieciami w systemach Linux.
Plik /etc/hosts
Mapowanie nazw domen na adresy IP.
Plik /etc/resolv.conf
Konfiguracja połączenia do serwera DNS.
Narzędzia diagnostyczne sieciowe
Ping
Sprawdza czy adres IP/nazwa hosta jest osiągalny
Traceroute
Śledzi ścieżkę pakietów do hosta
Nslookup
Narzędzie do zapytań DNS
Diagnostyka usług sieciowych
Ocena parametrów jakościowych wpływających na stabilność i wydajność sieci.
Network Manager
Ułatwia konfigurację interfejsów sieciowych
Komendy do zarządzania usługami
systemctl start <nazwa_usługi>- uruchamianie usługisystemctl stop <nazwa_usługi>- zatrzymywanie usługisystemctl status <nazwa_usługi>- status usługisystemctl restart <nazwa_usługi>- restart usługisystemctl enable <nazwa_usługi>- automatyczne uruchamianie usługisystemctl disable <nazwa_usługi>- wyłączenie usługi
MBR i GPT
MBR
Lokalizacja: pierwsze 512 bajtów dysku
Limit partycji: 4 podstawowe
Max pojemność dysku: 2 TB (32-bitowa adresacja)
GPT
Lokalizacja: UEFI, kopia tablicy na początku i końcu dysku
Limit partycji: do 128
Max pojemność: teoretycznie 8 ZB (64-bitowa adresacja)
RAID
Definicja: Zbiór dysków współdzielących dane w celu zapewnienia wydajności i redundancji.
Technologie RAID
RAID 0 (stripe), RAID 1 (mirror), RAID 5, 6, oraz kombinacje, np. RAID 10.
LVM
Zaawansowane zarządzanie przestrzenią dyskową.
LV (Logical Volumes), VG (Volume Groups), PV (Physical Volumes).
Systemy plików w Linuxie
Rodzaje systemów plików
EXT4: Domyślny system plików
VFAT: Dla przenośnych urządzeń
NTFS: Obsługa systemów Windows
LUKS
Standard szyfrowania dysku twardego w Linuxie.
Wydajność RAID
Wydajność, redundancja i pojemność jako kluczowe cele.
Sygnały TERM i KILL
Sygnał KILL: natychmiastowe zamknięcie procesu
Sygnał TERM: uruchamia procedury czyszczące przed zamknięciem procesu
Uwierzytelnianie użytkowników
Metody uwierzytelniania
Login + hasło
Public Key
MFA (Multi-Factor Authentication)
Tunel SSH
Umożliwia bezpieczny dostęp do portów zdalnego serwera.
Iptables
Narzędzie do zarządzania ruchem sieciowym w systemie Linux.