Alnao Debian Handbook
Total Page:16
File Type:pdf, Size:1020Kb
AlNao Debian HandBook Nao Alberto (www.alnao.it) December 28, 2019 AlNao Debian 9 HandBook Autore Nao Alberto ([email protected]) Disponibile su www.alnao.it Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Docu- mentation License, Version 1.2 or any later version published by the Free Software Foundation. E` garantito il permesso di copiare, distribuire e/o modificare questo documento in base ai termini della GNU Free Documentation License, Versione 1.2 o ogni versione successiva pubblicata dalla Free Software Foundation. Scritto da Nao Alberto (www.alnao.it - [email protected]) con LATEX con l'editor Kile Forse un giorno riuscir`oa finire questa maledetta cosa che chiamo manuale Prima edizione (solo appunti, versione Debian 3.1 Sarge): 2006 Seconda edizione (versione Debian 4 Etch): 2008 Terza edizione (in inglese, incompleta, Debian 5): 2011/2012 Quarta edizione (versione Debian 8): 2015/2016 Quinta edizione (versione Debian 9): 2018 Contents 1 Introduzione 7 1.1 Perch`equesto manuale . 7 1.2 Note e Convenzioni . 7 1.3 Perch`eLinux . 8 1.4 Correttezza di questo manuale . 8 2 Installazione di Debian 9 10 2.1 Come e dove trovare Debian . 10 2.1.1 Attuale versione . 11 2.2 Avvio dell'installazione . 11 2.3 Configurazioni del sistema (rete, partizioni ed utenti) . 12 2.4 Copia del sistema base e impostazioni finali . 12 2.5 Prima login e aggiornamento del sistema . 13 3 Configurazioni base di GNU Linux e Debian 15 3.1 Gestione di cartelle e file . 15 3.1.1 Caratteristiche e gestione dei diritti sui file . 16 3.2 Montaggio delle partizioni . 17 3.2.1 Montaggi permanenti . 18 3.3 Il pannello di controllo WebMin . 18 3.4 Gestione dei pacchetti di Debian . 19 3.5 La shell e i desktop . 20 3.6 Login manager, processi e rete . 21 4 Applicazioni per GNU Linux 23 4.1 File di testo . 23 4.2 File explorer . 24 4.3 Sistema di compressione dei file (Tar, Zip e Rar) . 24 4.4 Programmi per l’ufficio . 25 4.5 Navigazione web e Mail Client . 25 4.6 Multimedialit`a . 25 4.7 Visualizzatori ed editor di immagini . 27 4.8 Applicazioni varie . 27 4.9 Giochi per GNU Linux e Cedega . 28 5 Demoni 30 5.1 Sistema di stampa (demone CUPS) . 30 5.2 Condivisione di rete (demone Samba) . 31 5.3 LAMP (demoni Apache e Mysql) . 32 5.4 Altri demoni . 34 5.5 Systemd e i runlevel . 35 5.6 Lo schedulazione crontab . 36 6 Programmazione 37 6.1 Programmazione della shell . 37 6.2 CeC++ .................................................... 38 6.3 Java e Tomcat . 38 6.4 Didattica, scienza e calcolo numerico . 39 6.5 Programmazione WEB . 40 5 CONTENTS 6 6.6 Macchine virtuali . 41 7 Configurazioni particolari e HowTo 43 7.1 Il BootLoader Grub . 43 7.2 Configurazioni del demone grafico X e accelerazione grafica . 43 7.3 Backup e restore dei dati . 44 7.4 Installazione di font . 45 7.5 Il sistema sotto controllo . 46 7.6 Il cestino . 46 7.7 Configurazione del comando SUDO . 46 7.8 Configurazione base delle quote . 47 7.9 Programmi di partizionamento dischi . 48 7.10 Configurazioni veloci delle sorgenti di apt . 48 8 Comandi della Shell di Gnu Linux 49 8.1 Tabella dei comandi . 50 8.2 Editor di testo . 57 8.3 Rinominare gruppi di files . 57 8.4 Gestione processi e memoria . 58 8.5 Gestione della rete . 58 8.6 Creazione di alias . 59 8.7 Comandi del demone MySql . 59 8.8 Manipolazione immagini e video da riga di comando . 60 8.9 Configurazione del path base . 61 8.10 Manipolazione PDF da riga di comando . 61 8.11 Notifiche e finestre di dialogo . 62 Chapter 1 Introduzione 1.1 Perch`equesto manuale Questo \manuale" nasce dagli anni di utilizzo dei sistemi GNU Linux e dalla necessit`adi riordinare il contenuto di grossi blocchi di appunti sparsi in raccolte di pagine web o articoli di riviste, in particolare dal sistema Debian su che uso da ormai pi`udi dieci anni. Dopo aver sentito la necessit`adi dover mettere ordine in questi appunti, ho deciso di scrivere un documento che poi io chiamo \manuale" che, prima di tutto mi permetta di aver ordine nei miei appunto e che vuole essere una mia condivisione di esperienze e conoscenze, seguendo proprio lo spirito base del mondo GNU Linux: la condivisione delle proprie conoscenze in modo tale che tutti possano leggerle e migliorarle. L'opera `ediretta principalmente all'utente semplice, che usa il computer per scrivere, giocare, navigare, che ha la possibilit`adi approfondire alcune tematiche evolute di un sistema operativo, come l'installazione di alcuni server e le configurazioni base del sistema. Un programmatore, anche non alle prime armi, potr`atrovare molti spunti da questo manuale, essendo presente un capitolo dedicato a questo argomento e riferimenti continui alla programmazione visto che chi scrive `eun sopratutto un programmatore. La dispersione delle informazioni e la troppa documentazione non adatta alle mie conoscenze, a volte troppo evoluta e a volte troppo semplice, sono stati i motivi che mi hanno spinto a scrivere un \opera" completa cercando di realizzare una facile esposizione, facendo per`ol'importante assunzione che il lettore sia a conoscenza dei concetti base dell'informatica, come ad esempio quelli di hardware, periferica, software di sistema e software applicativo. Molti argomenti complessi, come la compilazione dei programmi dal codice sorgente, sono accennati a livello introduttivo, in modo che il lettore li possa comunque sperimentare, apprezzare, per poi eventualmente approfondirli per proprio conto tali argomenti anche trattati in altri miei scritti. A volte si danno per scontate alcune nozioni, come per esempio la conoscenza di alcuni linguaggi di programmazione (come C, HTML, PHP, Perl e SQL) che chi scrive questo documento trova ovvie, mentre ad un lettore meno esperto potrebbero essere molto complicate ma questo non deve spaventare in quanto questo documento non `eun manuale sulla programmazione e le nozioni richieste non sono fondamentali al fine di capire gli argomenti e gli esempi proposti servono solo per verificare il corretto funzionamento dei demoni installati. Ho sempre cercato il tempo per scrivere e per correggere gli errori di grammatica e di battitura di cui questo documento `epieno, cerco anche di essere chiaro e non ripetitivo ma non sempre trovo il tempo e le energie per fare tutto e poi sistemare tutto, non avendo nessun scopo di guadagno mi auguro che il lettore comprenda che questa `eun \amatoriale" e che non pretenda troppo da questo manuale, ovviamente le cose scritte sono (quasi) sempre corrette e verificate. 1.2 Note e Convenzioni Per chiarezza e per completezza in questo manuale saranno adottate queste convenzioni: - Viene usato # per indicare un comando eseguito da un utente con privilegi di amministratore di sistema (per esempio il superutente root). - Viene usato $ per indicare un comando eseguito da un utente non amministratore (cio`el'utente dell'utente). - Viene usato lo stile macchina di scrivere per indicare quanto mostrato a video dal sistema, tutti i caratteri inseriti da tastiera e i nomi dei file, facendo sempre attenzione alla distinzione fra lettere minuscole e maiuscole. - Viene usato lo stile Grassetto quando si indicano, per la prima volta, nomi di programmi o dei pacchetti di particolare importanza. 7 CHAPTER 1. INTRODUZIONE 8 - Viene usato lo stile corsivetto quando.