🟢 Beginner

Linux — Operačný systém pre DevOps

Linux je open-source operačný systém, ktorý poháňa väčšinu serverov na svete. Pre DevOps inžinierov je znalosť Linuxu absolútnou nevyhnutnosťou.


Prečo Linux pre DevOps?

  • 96 %+ serverov beží na Linuxe
  • Kontajnery (Docker, K8s) sú postavené na Linux kerneli
  • Cloud — AWS, GCP, Azure primárne ponúkajú Linux inštancie
  • Automatizácia — shell scripting je mocný nástroj
  • Bezplatný a open-source

Distribúcie

Distribúcia Použitie
Ubuntu/Debian Servery, development
RHEL/CentOS/AlmaLinux Enterprise produkcia
Alpine Docker images (minimálna veľkosť)
Amazon Linux AWS optimalizované

Základné príkazy

# Navigácia a súbory
ls -la                  # výpis súborov
cd /var/log             # zmena adresára
cat, less, tail -f      # zobrazenie súborov
find / -name "*.log"    # hľadanie
grep -r "error" /var/log  # vyhľadávanie v obsahu

# Správa procesov
ps aux                  # zoznam procesov
top / htop              # monitorovanie systému
kill -9 <PID>           # ukončenie procesu
systemctl status nginx  # stav služby

# Sieť
ss -tlnp                # otvorené porty
curl -I https://example.com  # HTTP hlavičky
dig example.com         # DNS lookup
ip addr                 # sieťové rozhrania

# Používatelia a oprávnenia
chmod 755 script.sh     # nastavenie práv
chown user:group file   # zmena vlastníka
sudo command            # spustenie s root právami

Súborový systém

  • /etc/ — konfiguračné súbory
  • /var/log/ — logy
  • /home/ — domovské priečinky
  • /tmp/ — dočasné súbory
  • /opt/ — voliteľný softvér

Shell Scripting

#!/bin/bash
LOG_DIR="/var/log/myapp"
MAX_AGE=30

find "$LOG_DIR" -name "*.log" -mtime +$MAX_AGE -delete
echo "Vyčistené logy staršie ako $MAX_AGE dní"

Systemd

Moderný init systém pre správu služieb:

systemctl start nginx     # spustenie
systemctl enable nginx    # automatický štart
systemctl restart nginx   # reštart
journalctl -u nginx -f    # logy služby

Dôležité pre DevOps

  • SSH konfigurácia a key-based autentifikácia
  • Cron jobs pre plánované úlohy
  • Firewall (iptables, ufw, firewalld)
  • Disk management (LVM, df, du)
  • Package management (apt, yum, apk)

Linux je fundament, na ktorom stojí celý DevOps ekosystém.