Titolo del modulo: dgt_sys04 – Sistemi di gestione dei pacchetti RPM e DEB
Panoramica:
Questo modulo tratta i sistemi di gestione dei pacchetti di Linux, con particolare attenzione a RPM (Red Hat Package Manager) e DEB (pacchetto Debian). I partecipanti studiano come funzionano pacchetti, repository e dipendenze sia sulle distribuzioni basate su RPM, come Fedora e CentOS, sia su quelle basate su DEB, come Debian e Ubuntu, e poi gestiscono i pacchetti nella pratica istruendo la macchina in linguaggio naturale.
Obiettivi del modulo:
– Comprendere i principi fondamentali dei sistemi di gestione dei pacchetti di Linux.
– Capire come i pacchetti vengono installati, aggiornati, rimossi e gestiti nei formati RPM e DEB, così da poter chiedere queste operazioni alla macchina e verificarne il risultato.
– Esplorare strumenti avanzati di gestione dei pacchetti come dnf per RPM e apt per i sistemi DEB, e imparare a leggere i comandi che la macchina esegue con essi.
– Distinguere i formati RPM e DEB per struttura, casi d’uso e supporto dell’ecosistema.
– Sviluppare la capacità di diagnosticare i problemi più comuni di installazione e di dipendenze e di guidare la macchina verso la soluzione corretta.
Argomenti principali:
1. Introduzione ai sistemi di gestione dei pacchetti
– Panoramica delle distribuzioni Linux e delle loro esigenze di gestione dei pacchetti.
– Contesto storico ed evoluzione dei formati RPM e DEB.
- Comprendere i pacchetti RPM
- Struttura e componenti di un file RPM.
- Cosa fa il comando
rpmnelle operazioni di base: installazione, interrogazione, verifica. - Il passaggio agli strumenti avanzati: introduzione a
dnf. -
Sessione in linguaggio naturale: chiedi alla macchina di installare e interrogare pacchetti con
dnf, poi controlla la transazione che propone prima di confermare. -
Esplorare i pacchetti DEB
- Anatomia di un pacchetto DEB.
- Come
dpkggestisce le operazioni di base sui pacchetti. - Il passaggio ad
apt: APT vs. DPKG. -
Esercizi in cui guidi la macchina nella gestione dei pacchetti con
apte verifichi cosa ha installato, aggiornato o rimosso. -
Analisi comparativa: RPM vs. DEB
- Differenze chiave nei formati dei pacchetti e nella gestione dei metadati.
- Gli ecosistemi delle distribuzioni e il loro impatto sulla disponibilità dei pacchetti.
-
Casi di studio che illustrano scenari in cui si può preferire RPM a DEB, o viceversa.
-
Tecniche avanzate di gestione dei pacchetti
- Gestire le dipendenze e risolvere i conflitti.
- Automatizzare l’installazione dei pacchetti: descrivere l’obiettivo alla macchina e revisionare lo script che genera.
-
Aspetti di sicurezza nella gestione dei pacchetti.
-
Troubleshooting e best practice
- Errori comuni e come evitarli.
- Garantire l’integrità del sistema durante gli aggiornamenti dei pacchetti.
- Mantenere un ambiente di sistema pulito ed efficiente.
Prerequisiti:
– Conoscenza di base dei sistemi operativi Linux e del funzionamento dell’interfaccia a riga di comando.
– La familiarità con concetti come repository, dipendenze e permessi dei file è utile ma non obbligatoria.
Risultati di apprendimento:
Al termine del modulo, i partecipanti sapranno gestire i pacchetti software sia su sistemi basati su RPM sia su sistemi basati su DEB dando alla macchina istruzioni chiare e ben delimitate. Sapranno leggere e comprendere i comandi dnf e apt che esegue, riconoscere le differenze tra le due filosofie di gestione dei pacchetti e risolvere con sicurezza i problemi legati ai pacchetti, accorgendosi quando la macchina sta per rimuovere il pacchetto sbagliato o introdurre una dipendenza indesiderata.
Formato del modulo:
Il modulo combina lezioni teoriche e laboratori in linguaggio naturale. Non digiti mai tu i comandi di gestione dei pacchetti: chiedi alla macchina, ad esempio, di installare un web server dai repository ufficiali sia su un host Fedora sia su un host Ubuntu, poi confronti le transazioni dnf e apt che ti mostra, controlli versioni e dipendenze alla luce di quanto hai studiato e la correggi se qualcosa non torna. Il modulo comprende anche discussioni interattive e dimostrazioni dal vivo.
Gli studenti possono caricare i propri esercizi nel Progetto Git dell’Academy DevOps & SRE. Per questo modulo, crea una cartella con il tuo username come nome nella seguente sottocartella: https://github.com/Garanti-Del-Talento/gdt_academy
