Ucz się Linuxa krok po kroku
ShellForge prowadzi od podstaw terminala do praktycznej administracji systemem, deploymentu aplikacji, automatyzacji i monitoringu.
Ścieżka nauki pokazuje sugerowaną kolejność materiałów. Zacznij od poziomu podstawowego, a następnie przechodź do kolejnych obszarów, gdy poczujesz się pewniej w pracy z Linuxem.
Podstawy
Terminal, pliki, katalogi, uprawnienia, użytkownicy, procesy, praca z tekstem i pakiety.
Administracja i sieć
Usługi systemowe, logi, konta użytkowników, diagnostyka, DNS, SSH, firewall, SELinux i HTTPS.
DevOps
Deployment aplikacji, Nginx, HTTPS, kontenery, CI/CD, monitoring i utrzymanie.
Podstawy Linuxa
Pierwszy etap uczy swobodnej pracy w terminalu. To fundament, bez którego trudno przejść do administracji systemem, sieci, deploymentu i automatyzacji.
Materiały w tym etapie
- Gdzie jestem? Komendy pwd, ls i cd
- Pliki i katalogi: mkdir, touch, cp, mv i rm
- Uprawnienia plików: chmod, rwx, 755 i 644
- Użytkownicy i grupy: whoami, id i groups
- Procesy w Linuxie: ps, top, kill i PID
- Praca z plikami tekstowymi: cat, less, tail, grep i nano
- Pakiety i aktualizacje: yum, rpm i repozytoria
Administracja systemem
Kompletny etap rozwijający podstawy w kierunku codziennej pracy administratora. Użytkownik uczy się zarządzania usługami, logami, kontami, miejscem na dysku oraz zadaniami cyklicznymi.
Materiały w tym etapie
- Usługi systemowe: systemctl i systemd
- Logi systemowe: journalctl i katalog /var/log
- Struktura katalogów administracyjnych: /etc, /var, /opt, /usr i /tmp
- Podstawowa diagnostyka systemu: uptime, free, df, du i hostnamectl
- Sudo i praca administratora: sudo, su, root i dobre praktyki
- Zarządzanie użytkownikami i grupami: useradd, passwd, usermod i userdel
- Diagnostyka usług systemd: systemctl status, restart, enable i journalctl -u
- Analiza logów w praktyce: journalctl, /var/log i filtrowanie zdarzeń
- Miejsce na dysku i porządkowanie systemu: df, du, cache i logi
- Zadania cykliczne: cron i podstawy systemd timers
Sieć i bezpieczeństwo
Kompletny etap skupia się na podstawach komunikacji sieciowej, DNS, portach, zdalnym logowaniu, firewallu, SELinux oraz HTTPS w codziennej administracji serwerem Linux.
Materiały w tym etapie
- Podstawy adresacji IP
- DNS w praktyce
- Porty i usługi sieciowe
- SSH w administracji systemem
- Firewall — podstawy
- SELinux — podstawowe pojęcia
- Bezpieczna konfiguracja SSH
- Klucze SSH w praktyce
- Firewalld — strefy, usługi i porty
- SELinux — diagnostyka problemów
- Diagnostyka DNS, routingu i połączeń
- Podstawy TLS i HTTPS
Deployment aplikacji
Kompletny etap pokazuje, jak przygotować aplikację Python, uruchomić ją jako usługę, udostępnić przez Nginx i HTTPS oraz bezpiecznie aktualizować i diagnozować wdrożenie.
Materiały w tym etapie
- Przygotowanie aplikacji do wdrożenia
- Środowisko Python na serwerze
- Uruchamianie aplikacji przez Uvicorn
- Aplikacja jako usługa systemd
- Nginx jako reverse proxy
- Domena i rekordy DNS dla aplikacji
- HTTPS z Let's Encrypt i Certbot
- Zmienne środowiskowe i sekrety aplikacji
- Aktualizacja aplikacji przez Git
- Backup przed wdrożeniem i podstawowy rollback
- Logi i diagnostyka problemów po wdrożeniu
- Procedura deploymentu i lista kontrolna
DevOps i automatyzacja
Kompletny etap prowadzi od kontenerów i obrazów aplikacji przez PostgreSQL po automatyczne testy, budowanie i kontrolowane dostarczanie zmian w GitHub Actions.
Materiały w tym etapie
- Podstawy konteneryzacji
- Cykl życia kontenera i diagnostyka
- Dane, porty i sieć kontenerów
- Dockerfile dla aplikacji webowej
- Budowanie obrazów: kontekst, .dockerignore i cache
- Bezpieczny obraz aplikacji
- PostgreSQL w środowisku aplikacji
- Aplikacja i baza w Docker Compose
- Trwałość danych, migracje i podstawowy backup PostgreSQL
- CI/CD z GitHub Actions: pierwszy workflow
- Automatyczne testy i budowanie w pipeline
- Dostarczanie zmian i diagnostyka pipeline
Monitoring i utrzymanie
Kompletny etap prowadzi od health checków, logów i metryk przez alerty, SLO oraz diagnozę incydentów do bezpiecznych kopii, odtwarzania i runbooka.
Materiały w tym etapie
- Health checki i gotowość aplikacji
- Obserwowalność: logi, metryki i ślady
- Logi usług i aplikacji
- Monitoring aplikacji i zależności
- Metryki i percentyle w praktyce
- Alerty i eskalacja
- SLI, SLO, SLA i budżet błędów
- Diagnoza incydentu: od alertu do weryfikacji
- Strategia backupu aplikacji
- Backup PostgreSQL w kontenerze
- Odtworzenie PostgreSQL i test kopii
- Runbook i utrzymanie po wdrożeniu