LFCA: Comprendere il sistema operativo Linux - Parte 1
La Linux Foundation ha presentato una nuova certificazione IT pre-professionale nota come Linux Foundation Certified IT Associate (LFCA). Si tratta di una nuova certificazione entry-level che si concentra sul test di concetti IT fondamentali come comandi di amministrazione dei sistemi di base, cloud computing, sicurezza e DevOps.
LFCA: panoramica e schema del corso
Ecco un riepilogo delle competenze e degli ambiti che LFCA cercherà di testare:
Fondamenti di Linux 20%
- Sistema operativo Linux – Parte 1
- Comandi di gestione dei file – Parte 2
- Comandi del sistema Linux – Parte 3
- Comandi generali di rete – Parte 4
Fondamenti di amministrazione di sistema 20%
- Gestione degli utenti Linux – Parte 5
- Gestire ora e data in Linux – Parte 6
- Gestire il software in Linux – Parte 7
- Monitorare le metriche di base di Linux – Parte 8
- Reti di base su Linux – Parte 9
- Numeri binari e decimali Linux – Parte 10
- LFCA: Scopri le classi dell'intervallo di indirizzi IP di rete - Parte 11
- LFCA: suggerimenti di base per la risoluzione dei problemi di rete - Parte 12
Fondamenti di cloud computing 20%
- Impara i fondamenti del cloud computing – Parte 13
- Scopri disponibilità, prestazioni e scalabilità del cloud – Parte 14
- LFCA: Scopri il serverless computing, vantaggi e insidie - Parte 15
- LFCA: Scopri i costi e il budget del cloud - Parte 16
Fondamenti di sicurezza 16%
- Suggerimenti di sicurezza di base per proteggere il sistema Linux – Parte 17
- Suggerimenti utili per la protezione dei dati e di Linux – Parte 18
- Come migliorare la sicurezza della rete Linux – Parte 19
Fondamenti di DevOps 16%
Supporto ad applicazioni e sviluppatori 8%
Panoramica della certificazione LFCA
La certificazione LFCA conferisce conoscenze fondamentali sui comandi di base di sistema e gestione dei file, comandi di rete e risoluzione dei problemi, concetti di cloud computing, sicurezza dei dati che include la sicurezza di sistema e di rete e nozioni di base su DevOps.
Una volta acquisiti i concetti fondamentali e superato l'esame LFCA, non vedrai l'ora di iniziare con LFCS (Linux Foundation Certified Sysadmin), che è una certificazione di livello intermedio, e successivamente perseguire LFCE ( Ingegnere certificato dalla Linux Foundation).
L'esame LFCA è un esame a scelta multipla e costa $200. Si svolge online con un supervisore remoto che ti tiene d'occhio tramite una webcam durante l'intera seduta. Dopo aver superato l'esame, ti verrà assegnato un badge LFCA e un certificato valido per 3 anni.
Fondamenti di Linux
In questa sezione inaugurale, tratteremo i seguenti capitoli:
- Sistema operativo Linux – Parte 1
- Comandi di gestione dei file – Parte 2
- Comandi del sistema Linux – Parte 3
- Comandi generali di rete – Parte 4
Senza ulteriori indugi, entriamo subito nel merito.
Questo articolo è la Parte 1 della serie LFCA, che tratterà gli ambiti e le competenze necessari per l'esame di certificazione LFCA.
Comprendere il sistema operativo Linux
All'inizio presumiamo che potresti aver interagito con Windows o macOS o entrambi nello svolgimento delle tue attività informatiche quotidiane. Entrambi sono sistemi operativi e consentono di interagire con i componenti hardware e software di un computer ed eseguire una moltitudine di attività tra cui navigazione, giochi, streaming di musica e video e sviluppo di software, per citarne solo alcune.
Windows è un sistema operativo molto diffuso e vanta una quota di mercato notevole tra gli utenti desktop. È facile da usare e apprendere e di solito è un gateway per gli studenti che muovono piccoli passi nell'imparare a interagire con i computer.
Qual è il problema con Windows e macOS?
Nonostante la sua facilità d'uso e il supporto per una vasta gamma di dispositivi hardware, Windows presenta una buona dose di inconvenienti. Innanzitutto Windows è un sistema operativo proprietario di Microsoft e la maggior parte delle applicazioni software come la suite Microsoft Office sono a pagamento. Ciò esclude molti che non hanno la capacità finanziaria di acquisire una licenza per il prodotto.
Lo stesso vale per macOS di Apple che, nonostante la sua eleganza e lodevole sicurezza, ha un prezzo elevato. Infatti, alcune applicazioni per l'AppStore sono solitamente a pagamento. Gli utenti hanno spesso denunciato il pagamento di abbonamenti subdoli per applicazioni che altrimenti sarebbero gratuite su altre piattaforme.
Inoltre, Windows è piuttosto instabile ed è spesso vulnerabile agli attacchi di malware come virus e trojan. Potresti spendere centinaia di dollari per proteggere robusti programmi antivirus per scongiurare attacchi e violazioni o spendere una fortuna pagando un professionista per diagnosticare e rimuovere il virus.
Inoltre, l'applicazione delle patch di sicurezza e degli aggiornamenti delle funzionalità è spesso un processo lungo. Nella maggior parte dei casi, l'aggiornamento del sistema può durare da trenta minuti a un'ora a seconda delle dimensioni dell'aggiornamento e spesso è causato da una serie di riavvii del sistema.
Perché utilizzare il sistema operativo Linux?
Linux, proprio come Windows e macOS, è un altro sistema operativo che ha preso d'assalto il settore IT. Linux è onnipresente ed è utilizzato quotidianamente da migliaia di utenti.
Il popolare sistema operativo Android che alimenta milioni di dispositivi intelligenti è basato sul kernel Linux. Il tuo smartphone Android preferito o la smart TV nel tuo salotto sono alimentati da Linux. Ancora più importante, Linux è il sistema predominante su Internet, occupando una quota enorme nelle piattaforme di web hosting e nei server Internet. Circa il 90% del cloud pubblico e il 99% della quota di mercato dei supercomputer è sostenuta da Linux.
Allora, come è nato Linux?
A questo punto, sarà prudente tornare indietro nel tempo e dare uno sguardo alla genesi di uno dei sistemi operativi più utilizzati.
Storia di Linux
La storia di Linux risale agli anni '60 presso gli AT&T Bell Labs dove Dennis Ritchie – il padre del linguaggio di programmazione C & KenThompson, un informatico americano, insieme ad altri sviluppatori stavano lavorando al progetto Multics. Multics era un sistema operativo che alimentava i sistemi informatici mainframe.
I due scienziati informatici stavano cercando di costruire un sistema operativo multiutente e multitasking con un file system gerarchico. Inizialmente, Multics era un progetto di ricerca ma si è rapidamente trasformato in un prodotto commerciale. Non impressionati dalla direzione che stava prendendo Multics, i due sviluppatori principali tracciarono la propria strada e decisero di sviluppare un altro sistema basato su Multics chiamato UNICS , che più tardi si trasformò in UNIX.
Negli anni '70 e '80 UNIX divenne sempre più popolare, soprattutto negli ambienti accademici. Ciò ha visto la sua adozione da parte di diverse istituzioni, tra cui l'Università di Berkley in California che in seguito ha cambiato la sua traiettoria. Gli sviluppatori dell'Università lavorarono ulteriormente sul codice UNIX e crearono BSD, acronimo di Berkeley Software Development. BSD in seguito ispirò diversi sistemi operativi, alcuni dei quali sono ancora utilizzati oggi come FreeBSD e NetBSD.
Nei Bells Labs, la ricerca e lo sviluppo su UNIX sono continuati, dando origine ad altre varianti di UNIX che sono state successivamente adottate dai fornitori commerciali. Tuttavia, BSD era molto più popolare delle varianti commerciali di Bells Labs.
Nel frattempo, nel 1991, Linus Torvalds, un laureato finlandese, stava lavorando su una versione di UNIX chiamata MINIX ma rimase deluso dalla licenza del progetto. In una lettera indirizzata al suo gruppo di utenti MINIX, annunciò che stava lavorando su un nuovo kernel che in seguito venne soprannominato kernel Linux. Ha utilizzato il codice GNU, insieme al compilatore GNU e bash per creare il primo kernel Linux utilizzabile, che in seguito è stato concesso in licenza con il modello GNU/GPL.
Il kernel Linux ha posto le basi per lo sviluppo di centinaia di distribuzioni o versioni Linux. Puoi avere un'idea completa delle popolari distribuzioni Linux su distrowatch.
Distribuzioni Linux popolari
Linux è un sistema operativo open source. Cosa significa questo? Bene, implica che puoi visualizzare il codice sorgente di Linux, modificarlo e ridistribuirlo liberamente e senza alcun costo. Anche utenti esperti come gli sviluppatori possono contribuire al codice per renderlo migliore e più interessante.
Per questo motivo esistono centinaia di distribuzioni Linux con diversi sistemi di gestione dei pacchetti, applicazioni software e aspetto visivo. Una distribuzione Linux, colloquialmente nota come distribuzione, è una versione del sistema operativo Linux preconfezionata con programmi, librerie, strumenti di gestione e altro software aggiuntivo. Tutte le distribuzioni derivano dal kernel Linux.
Un buon numero di distribuzioni Linux possono essere scaricate gratuitamente. Tuttavia, ci sono eccezioni come Zorin OS che richiede una piccola tariffa per il download. Le distribuzioni Enterprise Linux tra cui RHEL – Red Hat Enterprise Linux – richiedono un abbonamento per supporto, sicurezza e aggiornamenti delle funzionalità.
Esistono 4 famiglie principali di distribuzioni Linux:
- Sistemi della famiglia Debian (ad esempio Ubuntu, Mint, Elementary e Zorin).
- Sistemi della famiglia Fedora (ad esempio CentOS, Red Hat 7 e Fedora).
- Sistemi della famiglia SUSE (ad esempio OpenSUSE e SLES).
- Sistemi Arch (ad esempio Arch, Manjaro, ArchLabs e ArcoLinux).
Alcune delle distribuzioni Linux popolari e ampiamente utilizzate includono:
- Ubuntu
- Debian
- Linux Mint
- Fedora
- Approfondimento
- Manjaro Linux
- MXLinux
- Sistema operativo elementare
- CentOS
- OpenSUSE
Le distribuzioni adatte ai principianti altamente raccomandate per i principianti di Linux includono Ubuntu, Mint, Zorin OS e Elementary OS . Ciò è in gran parte dovuto alla loro facilità d'uso, alle interfacce utente semplici e pulite e all'elevata personalizzazione.
Alcune versioni come Zorin OS assomigliano molto a Windows 10, il che le rende ideali per gli utenti Windows che passano a Linux. Altri, come il sistema operativo elementare, imitano da vicino macOS con un menu dock caratteristico.
Per gli utenti intermedi o con una conoscenza relativamente buona di Linux, CentOS, Debian e Fedora saranno sufficienti. Gli utenti esperti che conoscono i dettagli dell'amministrazione del sistema Linux, generalmente si sentirebbero a proprio agio lavorando su sistemi Linux basati su Arch e Gentoo.
Ogni distribuzione Linux è unica a modo suo in termini di ambiente desktop o interfaccia utente grafica (GUI) e app predefinite. Tuttavia, la maggior parte include applicazioni pronte all'uso, come la suite LibreOffice, il client di posta Thunderbird, l'editor di immagini GIMP e le applicazioni multimediali. per iniziare.
Le distribuzioni Linux ampiamente utilizzate negli ambienti server includono:
- Red Hat Enterprise Linux (RHEL)
- SUSE Linux Enterprise Server (SLES)
- Server Ubuntu
- Debian
Perché Linux è così popolare
Linux comprende i seguenti componenti principali.
1. Kernel Linux
Al centro di ogni sistema Linux c'è il kernel Linux. Scritto in C, il kernel interfaccia i componenti hardware con il software e i programmi sottostanti. Il kernel gestisce i processi in esecuzione e determina quali potranno utilizzare la CPU e per quale durata di tempo. Determina inoltre la quantità di memoria ottenuta da ciascun processo. Inoltre, gestisce i driver del dispositivo e riceve richieste di servizio dai processi in esecuzione.
2. Caricatore di avvio
Il bootloader è il programma che gestisce il processo di avvio in un sistema Linux. Carica il sistema operativo dal disco rigido alla memoria principale. Il bootloader non è specifico solo di Linux. È presente anche in Windows e macOS. In Linux il bootloader viene chiamato GRUB. L'ultima versione è GRUB2 utilizzata dalle distribuzioni systemd.
3. Inizial
Init, forma abbreviata di Inizializzazione, è il primo processo che viene eseguito una volta acceso il sistema. Gli viene assegnato un ID processo (PID) pari a 1 e genera tutti gli altri processi nel sistema Linux inclusi demoni e altri processi e servizi in background. Viene quindi battezzata come la madre di tutti i processi. Init viene eseguito in background fino al momento in cui il sistema viene spento.
I primi sistemi Init includevano System V Init (SysV) e Upstart. Questi sono stati sostituiti da systemd init nei sistemi moderni.
4. Demoni
I demoni sono processi che vengono eseguiti silenziosamente in background dal momento in cui il sistema si avvia. I demoni possono essere controllati dall'utente sulla riga di comando. Possono essere arrestati, riavviati, disabilitati o abilitati al momento dell'avvio. Esempi di demoni includono sshd che è il demone SSH che controlla le connessioni SSH remote e ntpd che gestisce la sincronizzazione dell'ora sui server.
5. Conchiglia
La shell Linux è un'interfaccia della riga di comando, abbreviata in CLI, in cui i comandi vengono eseguiti o richiamati per eseguire e automatizzare le attività amministrative. Le shell più popolari includono la shell bash (bash) e la shell Z (zsh).
6. Ambiente desktop
Un ambiente desktop è ciò che un utente utilizza per interagire con il sistema Linux. Fornisce una GUI (interfaccia utente grafica) resa possibile tramite il software di sistema X Windows. Il sistema X Windows (X11, chiamato anche X) è un sistema che fornisce una struttura di visualizzazione o GUI e determina il modo in cui gli utenti interagiscono con finestre, tastiera, mouse e touchpad.
Gli ambienti desktop comuni includono GNOME, MATE, XFCE, LXDE, Enlightenment, Cannella, Budgie e KDE Plasma. I gestori desktop vengono forniti con componenti grafici come file manager, widget desktop, sfondi, icone e altri elementi grafici.
7. Applicazioni
L'ambiente desktop fornisce solo le applicazioni di base per iniziare. Proprio come Windows o macOS, puoi installare applicazioni per l'uso quotidiano. Questi includono applicazioni come Google Chrome, VLC media player, Skype, la suite LibreOffice, DropBox, l'editor di immagini GIMP e così via. Alcune distribuzioni vengono fornite con il proprio centro software che funge da negozio da cui puoi scaricare le applicazioni di cui hai bisogno.
Vantaggi dell'utilizzo di Linux rispetto ad altri sistemi operativi
A questo punto, sta diventando chiaro il motivo per cui Linux è il sistema operativo preferito da molti utenti e aziende. Riassumiamo brevemente alcuni dei vantaggi derivanti dall’utilizzo di Linux.
1. Linux è Opensource
Come sottolineato in precedenza, Linux è completamente opensource. Gli utenti esperti possono visualizzare il codice, modificarlo senza alcuna restrizione per qualunque scopo desiderino e condividerlo con la community. Inoltre, la maggior parte delle distribuzioni, ad eccezione di alcune, possono essere scaricate e utilizzate gratuitamente senza pagare le licenze.
Windows è proprietario e alcuni dei suoi prodotti sono piuttosto costosi. Al momento il prezzo della suite Microsoft Office è di $430. La licenza Windows Server 2019 costa fino a $6.000. macOS è altrettanto costoso e un buon numero di applicazioni dell'App Store si pagano tramite abbonamento.
2. Altamente personalizzabile
Uno dei principali vantaggi che Linux offre ai suoi utenti è la possibilità di personalizzare praticamente qualsiasi componente in base alle proprie preferenze. Puoi modificare l'aspetto, inclusi lo sfondo, l'immagine di sfondo, la combinazione di colori, l'aspetto delle icone e così via per migliorarne l'aspetto.
3. Stabilità e sicurezza eccezionali
I sistemi Linux hanno un livello ammirevole di stabilità e sicurezza. Linux è meno suscettibile agli attacchi e hai molte meno probabilità di cadere vittima di malware come virus e trojan se aggiorni costantemente il tuo sistema.
4. Una scelta perfetta per i server
Grazie alla sua sicurezza e stabilità, Linux è la scelta ideale per gli ambienti server nell'hosting di siti Web, database e applicazioni. Sono necessari solo pochi comandi per avviare un server Web completo insieme ad altri componenti come database e strumenti di scripting. Un classico esempio è il popolare server LAMP che è un'aggregazione di server web Apache, database MySQL e linguaggio di scripting PHP.
Con la stabilità fornita da Linux, non avrai quasi mai bisogno di riavviare il tuo server, tranne quando devi eseguire un aggiornamento del kernel. Ciò garantisce il massimo tempo di attività per i server e un'elevata disponibilità.
5. Requisiti di sistema bassi
La maggior parte delle distribuzioni Linux hanno la capacità di funzionare su PC con specifiche di sistema basse come CPU e RAM. In effetti, puoi far rivivere alcuni vecchi PC installando alcune distribuzioni Linux leggere come Linux Lite, Puppy Linux e AntiX.
Alcuni possono essere eseguiti su un sistema con solo 1 GB di RAM, CPU da 512 MHZ e disco rigido da 5 GB. Ciò che è ancora più impressionante è che puoi persino eseguire queste distribuzioni da una chiavetta USB Live e continuare a lavorare.
6. Disponibilità di tonnellate di pacchetti software
Le principali distribuzioni Linux come Debian e Ubuntu ospitano migliaia di pacchetti software nei loro repository. La sola Ubuntu vanta oltre 47.000 pacchetti. Puoi installare facilmente le applicazioni eseguendo alcuni comandi sul terminale o utilizzando gli App Center inclusi nelle distribuzioni.
Inoltre, puoi ottenere una varietà di applicazioni che eseguono attività simili come elaborazione di testi, condivisione di file, riproduzione di audio/video, fotoritocco, progettazione grafica e molto altro ancora. Hai semplicemente l'imbarazzo della scelta e puoi optare per una varietà di applicazioni per eseguire un'attività.
7. Vasto supporto comunitario
Il sistema operativo Linux è sviluppato e gestito da una vivace comunità di sviluppatori che lavorano instancabilmente 24 ore su 24 per assicurarti di ottenere il meglio in termini di applicazioni software, aggiornamenti di sicurezza e correzioni di bug.
Le principali distribuzioni come Ubuntu e Debian hanno una vasta comunità di sviluppatori e tantissimi forum che offrono assistenza e guida agli utenti soprattutto quando incontrano difficoltà o sfide lungo il percorso.
Riepilogo
Quella era una visione dall’alto del sistema operativo Linux e del suo posto in un ambiente informatico in continua evoluzione. Certo, Linux è onnipresente e ha lasciato un segno indelebile nel frenetico mondo tecnologico in cui viviamo. Pertanto, acquisire competenze fondamentali su Linux è essenziale per qualsiasi professionista IT che non vede l'ora di scalare la scala nella professione IT competitiva.
Imparare Linux aprirà le porte ad altri campi IT avanzati come DevOps, sicurezza informatica e cloud computing. Nei nostri argomenti successivi, ci concentreremo sui comandi Linux di base che devi avere a portata di mano mentre procediamo.