% Linux Guida dell'Utente                   -*- TeX -*-
  % intro.tex
  % Copyright (c) 1993, 1994 by Larry Greenfield
  %
  % Traduzione di Eugenia Franzoni, 1997
  %
  % Questo file e' liberamente distribuibile, ma si deve preservare questo
  % avviso di copyright su tutte le copie, e deve essere distribuito solo come
  % parte di "Linux Guida dell'Utente". L'uso di questo file e'
  % protetto dal copyright dell'intero documento, nel file "copyright.tex".
  
  \chapter{Introduzione}
  \section{Chi dovrebbe leggere questo Libro}
  
  Siete fra quelli che dovrebbero leggere questo libro? Rispondiamo con
  un'altra domanda: avete appena prelevato Linux da qualche parte,
  l'avete installato
  e volete sapere cosa farci? Oppure siete utenti di computer
  non-UNIX che stanno
  considerando Linux ma vogliono vedere cosa pu\`o fare?
  
  Se avete questo libro, la risposta a queste domande \`e probabilmente
  ``s\`{\i}''. Chiunque ha \linux, la versione di UNIX liberamente
  distribuibile scritta da Linux Torvalds\index{Torvalds, Linus}, nel proprio
  PC ma non sa cosa farci dovrebbe leggere questo libro. Qui
  tratteremo la maggior parte dei comandi UNIX semplici e alcuni
  di quelli pi\`u
  avanzati. Parleremo anche di GNU Emacs\index{GNU Emacs}, un potente editor,
  e di parecchie altre grosse applicazioni \unix. \glossary{applicazioni}
  
  
  \subsection{Cosa bisogna aver fatto prima di leggere questo libro}
  
  Questo libro assume
   che possiate accedere ad un sistema \unix.
  (Sfortunatamente \`e un po' arduo imparare senza!) Pi\`u precisamente, questo
  sistema UNIX dovrebbe essere un PC Intel\index{Intel} con \linux.
  Questo requisito non \`e necessario, ma dove le versioni di
  UNIX differiscono tra loro, qui si parla esclusivamente del comportamento di
  \linux.
  
  Linux \`e disponibile in vari formati, chiamati distribuzioni.
  Si spera che abbiate trovato una distribuzione completa, come la
  Slackware, la Debian o la MCC-Interim, e l'abbiate installata. Ci
  sono delle
  differenze tra le varie distribuzioni di \linux, ma sono perlopi\`u
  piccole e poco importanti.
  Potrete trovare delle differenze dagli esempi proposti in questo
  libro. Per la maggior parte saranno differenze minime, di cui non ci
  si deve preoccupare. Se notate una differenza notevole tra questo
  libro e la vostra esperienza reale, informate me, l'autore.
  
  Se siete il superutente\glossary{superuser}\index{superutente}
  (l'installatore e
  amministratore) del sistema, dovreste anche aver creato un account normale
  per voi stessi. Consultate i manuali di installazione per 
  informazioni su come fare. Se non siete il superutente, dovreste avere ottenuto un
  account da lui/lei.
  
  Dovete avere anche tempo e pazienza. Imparare Linux non \`e
  semplice---molti hanno trovato pi\`u semplice imparare il Sistema
  Operativo
  Macintosh\index{Macintosh}, ma una volta imparato Linux, diventa tutto
  molto pi\`u facile. UNIX \`e un sistema molto potente ed \`e facilissimo
  portare avanti dei compiti molto complessi.
  
  Oltre a ci\`o, questo libro presume che abbiate un po' di familiarit\`a con
  alcuni termini informatici. Sebbene questo requisito non sia necessario,
  rende pi\`u semplice la lettura del libro. Dovreste conoscere
  termini come `programma' ed `esecuzione'; altrimenti
  sarebbe meglio che aveste qualcuno che vi aiuti ad imparare lo \unix.
  
  
  \section{Come evitare di leggere questo libro}
  
  Il modo migliore per imparare un programma \`e usando il proprio
  computer. Molta gente ha trovato che leggere un libro senza usare il
  programma non \`e utile, quindi il modo migliore per imparare UNIX e
  Linux \`e usarli. Usate Linux pi\`u che potete. Sperimentate. Non
  preoccupatevi---\`e {\em possibile\/} sbagliare qualcosa, ma si pu\`o sempre
  reinstallare tutto. Tenete copie di sicurezza e divertitevi!
  
  UNIX non \`e intuitivo come molti altri sistemi
  operativi, quindi molto probabilmente finirete con il leggere almeno
  i capitoli~\ref{shell-chapter},~\ref{x-chapter}
  e~\ref{shell2-chapter}.
  
  Il primo modo per evitare di usare questo libro \`e di usare la documentazione
  disponibile in linea. Imparate ad usare il comando {\tt
  man}\ttindex{man}---\`e descritto nella sezione~\ref{man-section}.
  
  
  \section{Come leggere questo libro}
  
  Il suggerimento per imparare UNIX \`e di leggere un po', poi provare.
  Continuate a provare finch\'e non comincerete ad avere dimestichezza con i
  concetti, e poi iniziate a girare all'interno del libro. Troverete una
  variet\`a di argomenti, alcuni dei quali vi interesseranno, altri vi
  annoieranno. Dopo un po' avrete
  abbastanza confidenza per iniziare ad usare comandi senza sapere quello che
  fanno esattamente, che \`e una cosa molto utile.
  
  Quando molta gente si riferisce ad \unix, in realt\`a si riferisce alla
  shell\index{shell}\glossary{shell} di \unix, un programma speciale che
  interpreta i comandi. \`E il programma che controlla l'``apparenza''
  di \unix.
   In
  pratica la si pu\`o vedere cos\`{\i}, ma bisogna sapere
  che in realt\`a UNIX consiste di molte 
  cose in pi\`u, o molte in meno. Questo libro spiega come
  usare la shell\index{shell}, i programmi contenuti in UNIX ed alcuni
  programmi che non sempre si trovano in UNIX (ma in Linux di
  solito s\`{\i}).
  
  Questo capitolo \`e particolare---tratta di questo libro e
  come usarlo per imparare a lavorare. Gli altri capitoli
  contengono:
  
  \begin{description}
  
  \item [Capitolo~\ref{unixinfo}:] spiega da dove provengono UNIX e Linux e
  dove sono diretti. Parla anche della Free Software Foundation\index{Free
  Software Foundation} e del Progetto GNU\index{Progetto GNU}.
  
  \item [Capitolo~\ref{bootup}:] parla di come avviare e fermare il computer, e
  cosa succede in questi momenti. Per la maggior parte tratta argomenti
  non necessari per l'uso di
  \linux, ma comunque utili ed interessanti.
  
  \item [Capitolo~\ref{shell-chapter}:] introduce la shell di \unix, che
  \`e dove si lavora e si eseguono i programmi. Parla dei comandi e
  programmi base che bisogna conoscere per usare \unix.
  
  \item [Capitolo~\ref{x-chapter}:] spiega il Sistema X~Window. X \`e
  l'interfaccia grafica primaria di UNIX e alcune distribuzioni lo impostano
  per default.
  
  \item [Capitolo~\ref{shell2-chapter}:] spiega alcune parti pi\`u avanzate
  della shell di \unix. Imparare le tecniche descritte in questo capitolo
  render\`a pi\`u efficiente il vostro modo di lavorare.
  
  \item [Capitolo~\ref{commands-chapter}:] \`e una breve descrizione di molti
  comandi \unix. Pi\`u strumenti un utente sa usare, pi\`u velocemente
  completa il suo lavoro.
  
  \item[Capitolo~\ref{emacs-chapter}:] descrive l'editor di testi Emacs. Emacs
  \`e un grosso programma che integra molti strumenti di UNIX in un'unica
  interfaccia.
  
  \item[Capitolo~\ref{configuration-chapter}:] descrive come adattare
  il sistema UNIX ai vostri gusti personali.
  
  \item[Capitolo~\ref{network-chapter}:] studia i modi in cui un utente
  UNIX pu\`o comunicare con altre macchine sparse per il mondo,
  compresa la posta elettronica e il WWW.
  
  \item [Capitolo~\ref{funny-chapter}:] descrive alcuni dei comandi pi\`u
  grossi e difficili da usare.
  
  \item [Capitolo~\ref{error-chapter}:] parla dei modi semplici per
  evitare
  errori in UNIX e \linux.
  
  \end{description}
  
  
  \section{Documentazione su \linux}
  
  Questo libro, \uguide, \`e rivolto ai principianti di \unix. Fortunatamente,
  il Linux Documentation Project sta scrivendo anche libri per gli
  utenti di
  maggiore esperienza.
  
  
  \subsection{Altri libri su \linux}
  
  Gli altri libri comprendono {\em Installation and Getting Started}, una
  guida su come prelevare ed installare \linux, {\em The\/ Linux System
  Administrator's Guide}, come organizzare e amministrare un sistema \linux,
  e {\em The Linux Kernel Hackers' Guide}, un libro su come modificare
  \linux. {\em The Linux Network Administration Guide\/} parla di come
  installare, configurare ed usare una connessione di rete.
  
  
  \subsection{HOWTO}
  
  In aggiunta ai libri, il Linux Documentation Project ha creato una serie di
  brevi documenti che descrivono come impostare un particolare aspetto di
  \linux. Per esempio, lo {\tt SCSI-HOWTO} descrive alcune delle complicazioni
  dell'uso dello {\tt SCSI}---uno standard per la comunicazione tra 
  dispositivi---con \linux.
  
  Questi {\tt HOWTO} sono disponibili in diversi formati: in un libro
  rilegato come la 
  \emph{The Linux Bible} o \emph{Dr.~Linux},
  nel newsgroup
  {\tt comp.os.linux.answers} o in svariati siti sulla World Wide Web. 
  Uno dei siti centrali per le informazioni su Linux \`e 
  {\tt http://www.linux.org}.
  
  
  \subsection{Cos'\`e il Linux Documentation Project?}
  
  Come quasi tutte le organizzazioni che riguardano \linux, il Linux
  Documentation Project
  \`e un gruppo di persone che lavorano sparse in giro per il mondo.
  Originariamente organizzato da Lars Wirzenius\index{Wirzenius, Lars},
  il Progetto \`e ora coordinato da Matt Welsh\index{Welsh, Matt} con
  l'aiuto di
  Michael K. Johnson.\index{Johnson, Michael K.}
  
  Si spera che il Linux Documentation Project fornir\`a in futuro libri
  che
  vadano
  incontro a tutti i bisogni della documentazione di \linux. Diteci se ci
  siamo riusciti o come dovremmo migliorare. Potete contattare l'autore all'indirizzo {\tt
  greenfie@gauss.rutgers.edu} e/o Matt Welsh a {\tt
  mdw@cs.cornell.edu}.
  
  
  \section{Sistemi Operativi}
  
  Lo scopo principale di un sistema operativo\glossary{sistema operativo} \`e
  supportare i programmi che eseguono realmente il lavoro a cui si \`e
  interessati. Per esempio, state usando un editor per creare un documento.
  Questo editor non pu\`o lavorare senza l'aiuto del sistema operativo---
  necessita di questo aiuto per interagire con il terminale, i file ed il resto
  del computer.
  
  
  Se tutto quello che fa il sistema operativo \`e supportare le
  applicazioni,
  perch\'e \`e necessario un libro intero solo per poterlo usare?
  Ci sono varie attivit\`a di manutenzione (senza considerare i problemi pi\`u grossi)
  che \`e necessario fare. Nel caso di \linux, il sistema operativo contiene
  anche una serie di ``mini-applicazioni'' per aiutare ad eseguire il lavoro
  in modo pi\`u efficiente; conoscere il sistema operativo pu\`o essere utile
  quando non si lavora con grosse applicazioni.
  
  I sistemi operativi (in breve OS) possono essere semplici e
  minimalisti, come il
  DOS\index{DOS}, o grandi e complessi, come OS/2\index{OS/2} o
  VMS\index{VMS}.\footnote{Apologia per gli utenti DOS, OS/2 e VMS\@. Ho usato
  tutti e tre, e ognuno ha i suoi lati positivi.} UNIX tenta di essere una
  via di mezzo: mentre fornisce pi\`u risorse e fa pi\`u cose dei primi sistemi
  operativi, non tenta di fare {\em tutto}. UNIX \`e stato
  originariamente progettato come una semplificazione di un sistema
  operativo chiamato Multics.
  
  La filosofia originale di UNIX fu di distribuire le funzionalit\`a in
  piccole parti, i programmi.\footnote{Questo fu in realt\`a determinato
  dall'hardware in cui originariamente funzionava \unix. Per qualche
  strana
  ragione, il sistema operativo risultante era molto pratico su altri
  hardware. Il progetto di base viene ancora usato dopo venticinque anni.} 
  In questo modo si possono aggiungere nuove funzionalit\`a e
  caratteristiche combinando le piccole parti
  (programmi) in nuovi modi. E se appaiono nuove utility (e succede), si
  possono integrare con i vecchi strumenti. Sfortunatamente i programmi
  tendono con il tempo a crescere e acquistare nuove caratteristiche, ma la
  flessibilit\`a rimane. Mentre sto scrivendo questo documento, per
  esempio, sto usando attivamente questi programmi: {\tt fvwm} per gestire
  le mie ``finestre'', {\tt emacs} per editare il testo, \LaTeX\ per
  formattarlo, {\tt xdvi} per vedere l'anteprima, {\tt dvips} per preparare la
  stampa e {\tt lpr} per stamparlo. Se un domani mi procurassi un visualizzatore
  dvi migliore, lo potrei usare al posto di {\tt xdvi} senza cambiare il resto
  della mia configurazione. In questo momento, il mio sistema ha
  trentotto programmi che girano simultaneamente (la maggior parte
  sono programmi di sistema che ``dormono'' finch\'e non hanno qualcosa
  di specifico da fare).
  
  Quando si usa un sistema operativo, si vuole minimizzare la quantit\`a di
  lavoro necessaria per i ottenere lo scopo. UNIX fornisce molti strumenti per
  aiutarvi, ma solo se sapete cosa fanno. Passare ore tentando di fare
  qualcosa e alla fine arrendersi non \`e molto produttivo. Questo libro
  vi insegner\`a quali strumenti usare nelle varie situazioni e come
  collegarli tra loro.
  
  La parte chiave di un sistema operativo \`e chiamata
  ``kernel''\glossary{kernel} (nucleo). In molti sistemi operativi, come
  \unix, OS/2\index{OS/2} o VMS\index{VMS}, il kernel 
  fornisce ai programmi le funzioni da usare e gestisce la sequenza della
  loro esecuzione.
  Semplicemente dice che il programma A pu\`o avere un certo tempo a
  disposizione, il programma B un altro tempo, e cos\`i via.
  C'\`e sempre il kernel che gira: \`e il primo programma ad essere
  inizializzato quando si accende il sistema e l'ultimo a fare
  qualsiasi cosa quando lo si ferma.
  
  % Local Variables:
  % mode: latex
  % TeX-master: ``guide''
  % End:
