Edocti
Training tehnic avansat pentru inginerul software de mâine
Edocti Training

Linux Internals and system administration

Intermediar
21 h
0.0 (0 recenzii)
Linux Internals and system administration

Competențe practice de administrare Linux, din perspectiva unui inginer software: dobândește o înțelegere solidă a conceptelor Linux, respectiv abilități de administrare sistem și troubleshooting, toate într-un singur curs hands-on.

Lucrează cu procese, systemd, loguri, rețelistică și servere de rețea, stocare, containere și shell scripting.

Înțelege userspace vs. kernelspace, syscall, memorie, fundamentele POSIX și operațiunile de administrare ale unui sistem Linux în activitățile zilnice.

Dobândește experiență practică prin laboratoare ghidate (~70% hands-on), axate pe fluxuri realiste de troubleshooting.

Cum te ajută: îți dezvoltă încrederea necesară pentru a inspecta, administra și diagnostica sisteme Linux în medii de development, embedded sau devops.

Cui i se adresează: este conceput pentru ingineri software care au nevoie atât de context despre Linux internals, cât și de competențe practice de administrare de sistem.

La final, vei putea diagnostica probleme Linux uzuale, automatiza sarcini de rutină și înțelege ce se întâmplă „sub capotă”.

Curriculum

Modelul de execuție al aplicațiilor Linux
  • Userspace vs. kernelspace
  • Mecanismul de apel sistem - syscall
  • Niveluri de privilegii, access control și granița user/kernel
  • Memorie virtuală vs. memorie fizică
  • Fundamente POSIX și modelul de programare Linux
Noțiuni esențiale despre containere
  • Containere vs. mașini virtuale
  • Fundamente despre imagini, containere, volume și networking
  • Fluxuri de lucru de bază cu Docker și Podman
  • Inspectarea logurilor, proceselor și a modurilor uzuale de failure în containere
Fluxul de lucru de bază în shell și userspace
  • Productivitate în terminal, convenții de shell și shortcut-uri uzuale
  • Standard streams, pipes, redirection și noțiuni de bază pentru procesarea de text
  • Navigarea în sistemul de fișiere și citirea fișierelor importante din /etc, /proc și /var
  • Folosirea eficientă a man pages și a help-ului integrat
Utilizatori, permisiuni și fundamente de securitate
  • Utilizatori, grupuri, ownership, mode bits și umask
  • sudo, sudoers și pattern-uri practice de permisiuni
  • SSH keys, agent forwarding și noțiuni de bază pentru acces remote securizat
  • Concepte de bază de hardening: igiena autentificării, expunerea serviciilor și fail2ban
  • Framework-uri de securitate Linux: fundamente SELinux și AppArmor
Managementul proceselor și scheduling
  • Procese, daemons și job-uri
  • ps, top, htop, pgrep, kill
  • Noțiuni de bază despre scheduling și controlul resurselor: CFS, Real-time Linux, nice și renice
  • Înțelegerea stărilor proceselor și a semnalelor
  • Inspectarea sistemelor în producție și rezolvarea problemelor
Fundamentele systemd
  • Procesul de boot - o explicație succintă
  • Procesul systemd, unit types și dependențele
  • Controlul serviciilor, targets și timers
  • Fluxuri de lucru cu systemctl: start, stop, restart, enable și status
  • Citirea logurilor pentru servicii cu journalctl
  • Crearea, testarea și depanarea unui custom service simplu
Logging și monitorizare
  • Concepte journald și pattern-uri de utilizare pentru journalctl
  • Citirea /var/log și înțelegerea locațiilor uzuale pentru loguri
  • Noțiuni de bază despre log rotation - logrotate
  • Inspectarea stării de sănătate a sistemului cu uptime, free, vmstat, iostat și pstop
  • Construirea unui flux practic de troubleshooting pe baza logurilor și metricilor
Noțiuni esențiale de networking și troubleshooting
  • Modelul de rețea OSI
  • Ethernet switching - ce trebuie să știe un programator despre Ethernet switching
  • Noțiuni de bază despre routing - ce trebuie să știe un programator despre IP routing
  • Configurarea și inspectarea rețelei cu ip, ss, netstat și iptraf
  • Rezolvarea DNS cu dig, nslookup și /etc/resolv.conf
  • Troubleshooting de conectivitate cu ping, curl, wget, mtr
  • Citirea logurilor pentru network troubleshooting
  • Fundamente firewall: concepte UFW și noțiuni de bază despre iptables / nftables
  • Introducere în serviciile de rețea: SSH config, Apache și systemd-networkd
  • Utilizarea /proc și sysfs pentru troubleshooting avansat și fine-tuning de rețea
Stocare și filesystem-uri
  • De la block device la filesystem. Tabela de inode-uri - concepte de bază
  • Inspectarea block devices și a partițiilor cu lsblk, fdisk și blkid
  • Mounting, unmounting și noțiuni de bază despre /etc/fstab
  • Tipuri de sisteme de fișiere și când să le folosești (ext4, xfs și o privire de ansamblu asupra opțiunilor mai noi)
  • Analiza utilizării discului cu df și du
  • Citirea logurilor pentru probleme de stocare și simptome de corupție
Managementul pachetelor și actualizările de sistem
  • apt, dnf și noțiuni de bază despre ciclul de viață al pachetelor
  • Repository-uri, semnături, GPG keys și surse de încredere
  • Căutarea, instalarea, eliminarea și actualizarea pachetelor
  • Strategii de update, verificare și opțiuni de rollback
Shell scripting la nivel intermediar
  • Structura Bash, quoting și lucrul cu funcții
  • Input parsing, positional parameters și argument handling
  • Lucrul cu structuri de date uzuale; de la string-uri și numere la arrays și parsare JSON
  • Error handling
  • Scrierea unor scripturi de automatizare ușor de întreținut pentru sarcini administrative. Exerciții
Scheduled tasks, performanță și pattern-uri operaționale
  • User vs. system crontabs
  • Logging și debugging pentru cron jobs
  • cron vs. systemd timers
  • Introducere în Linux performance tuning
  • Pattern-uri end-to-end de troubleshooting pentru procese, rețea, stocare și loguri

Structura zilei de curs

  • Partea 1: 09:00–10:30
  • Pauză: 10:30–10:45
  • Partea 2: 10:45–12:15
  • Pauză de prânz: 12:15–13:15
  • Partea 3: 13:15–15:15
  • Pauză: 15:15–15:30
  • Partea 4: 15:30–17:30

Vrei să afli mai multe? Suntem aici să te ajutăm!

Sau scrie-ne direct la training@edocti.com.