aboutsummaryrefslogtreecommitdiff
path: root/it_IT.ISO8859-15/books/handbook/geom/chapter.xml
diff options
context:
space:
mode:
Diffstat (limited to 'it_IT.ISO8859-15/books/handbook/geom/chapter.xml')
-rw-r--r--it_IT.ISO8859-15/books/handbook/geom/chapter.xml432
1 files changed, 432 insertions, 0 deletions
diff --git a/it_IT.ISO8859-15/books/handbook/geom/chapter.xml b/it_IT.ISO8859-15/books/handbook/geom/chapter.xml
new file mode 100644
index 0000000000..db18e85c1d
--- /dev/null
+++ b/it_IT.ISO8859-15/books/handbook/geom/chapter.xml
@@ -0,0 +1,432 @@
+<?xml version="1.0" encoding="iso-8859-15" standalone="no"?>
+<!--
+ The FreeBSD Documentation Project
+ $FreeBSD$
+ Original revision: 1.18
+-->
+
+<chapter id="GEOM">
+ <chapterinfo>
+ <authorgroup>
+ <author>
+ <firstname>Tom</firstname>
+
+ <surname>Rhodes</surname>
+
+ <contrib>Scritto da </contrib>
+ </author>
+ </authorgroup>
+ </chapterinfo>
+
+ <title>GEOM: Framework modulare per la trasformazione del disco</title>
+
+ <sect1 id="GEOM-synopsis">
+ <title>Sinossi</title>
+
+ <indexterm>
+ <primary>GEOM</primary>
+ </indexterm>
+ <indexterm>
+ <primary>GEOM Disk Framework</primary>
+ <see>GEOM</see>
+ </indexterm>
+
+ <para>Questo articolo tratta l'utilizzo dei dischi attraverso la struttura
+ GEOM implementata in &os;. Questo include le più importanti
+ utility di controllo <acronym
+ role="Redundant Array of Inexpensive Disks">RAID</acronym>
+ che utilizzano la suddetta struttura per la loro configurazione.
+ Questo capitolo non si soffermerà in discussioni approfondite
+ su come la struttura GEOM utilizza o controlla gli I/O, il suo
+ sottosistema di funzionamento o il codice.
+ Queste informazioni sono fornite dalla manpage &man.geom.4; e
+ nei suoi vari riferimenti SEE ALSO. Questo capitolo non è nemmeno
+ la guida definitiva alla configurazione del <acronym>RAID</acronym>
+ Soltanto i dischi<acronym>RAID</acronym> classificati come "supportati
+ da GEOM" saranno discussi.</para>
+
+ <para>Dopo la lettura di questo capitolo saprai:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Quale genere di supporto<acronym>RAID</acronym> è
+ disponibile attraverso GEOM.</para>
+ </listitem>
+
+ <listitem>
+ <para>Come usare le utilities di base per configurare, manutenere,
+ e manipolare i vari livelli di <acronym>RAID.</acronym>
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Come creare dei mirror, degli stripe, criptare e connettere dischi
+ remoti attraverso l'utilizzo di GEOM.</para>
+ </listitem>
+
+ <listitem>
+ <para>Come sbrogliare problematiche relative ai dischi connessi
+ attraverso GEOM.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Prima di procedere alla lettura di questo capitolo dovresti:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Sapere la meccanica di utilizzo dei dischi da parte di &os;.
+ (<xref linkend="disks"/>).</para>
+ </listitem>
+
+ <listitem>
+ <para>Sapere come configurare e installare un kernel personalizzato
+ sotto &os; (<xref linkend="kernelconfig"/>).</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 id="GEOM-intro">
+ <title>Introduzione a GEOM</title>
+
+ <para>GEOM permette l'accesso e il controllo alle classi &mdash; Master Boot
+ Records, <acronym>BSD</acronym> labels, ecc &mdash; attraverso l'uso
+ di forniture o di di files speciali in <filename
+ role="directory">/dev</filename>. Mediante il supporto di vari
+ software di configurazione<acronym>RAID</acronym> , GEOM fornisce un
+ accesso "trasparente" al sistema operativo
+ e alle utilità di sistema.</para>
+ </sect1>
+
+ <sect1 id="GEOM-striping">
+ <sect1info>
+ <authorgroup>
+ <author>
+ <firstname>Tom</firstname>
+
+ <surname>Rhodes</surname>
+
+ <contrib>Scritto da </contrib>
+ </author>
+
+ <author>
+ <firstname>Murray</firstname>
+
+ <surname>Stokely</surname>
+ </author>
+ </authorgroup>
+ </sect1info>
+
+ <title>RAID0 - Striping</title>
+
+ <indexterm>
+ <primary>GEOM</primary>
+ </indexterm>
+ <indexterm>
+ <primary>Striping</primary>
+ </indexterm>
+
+ <para>Lo striping è un metodo utilizzato per unire gli hard disks in
+ un singolo volume. In molti casi, questo si ottiene attraverso dei
+ controllers hardware. Il sottosistema GEOM fornisce il supporto software
+ per il <acronym>RAID</acronym>0, conosciuto anche come disk
+ striping.</para>
+
+ <para>In un sistema <acronym>RAID</acronym>0, i dati sono tagliati in
+ blocchi che vengono "spalmati" su tutti i dischi della catena RAID.
+ Invece di aspettare che il sistema scriva un blocco di 256kb su un disco,
+ il <acronym>RAID</acronym>0 può scrivere blocchi di 64k ciascuno
+ su quattro differenti dischi, offrendo performances I/O migliori. Queste
+ performances possono essere ulteriormente migliorate utilizzando
+ più controllers per dischi.</para>
+
+ <para>In ogni "stripe" <acronym>RAID</acronym>0 ogni disco deve essere
+ della stessa grandezza degli altri, dal momento che le chiamate I/O sono
+ inframezzate per leggere e scrivere su più dischi in
+ parallelo.</para>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="geom/striping" align="center"/>
+ </imageobject>
+
+ <textobject>
+ <phrase>Disk Striping Illustration</phrase>
+ </textobject>
+ </mediaobject>
+
+ <procedure>
+ <title>Creazione di uno stripe di dischi ATA non formattati</title>
+
+ <step>
+ <para>Caricare il modulo <filename>geom_stripe</filename>:</para>
+
+ <screen>&prompt.root; <userinput>kldload geom_stripe.ko</userinput></screen>
+ </step>
+
+ <step>
+ <para>Assicurati che esiste una appropriato mount point. Se il volume
+ in questione diventerà una partizione di root, allora usa
+ temporaneamente un mount point diverso,ad esempio <filename
+ role="directory">/mnt</filename>:</para>
+
+ <screen>&prompt.root; <userinput>mkdir /mnt</userinput></screen>
+ </step>
+
+ <step>
+ <para>Determina i nomi dei devices per i dischi che verranno configurati
+ in stripe e creali. Ad esempio per configurare in modalità
+ stripe 2 dischi <acronym>ATA</acronym>
+ <filename>/dev/ad2</filename> e <filename>/dev/ad3</filename>
+ non ancora partizionati potresti usare il seguente comando.</para>
+
+ <screen>&prompt.root; <userinput>gstripe label -v st0 /dev/ad2 /dev/ad3</userinput></screen>
+ </step>
+
+ <step>
+ <para>Se questo volume sarà utilizzato come dispositivo di root
+ da cui effettuare il boot, allora prima di creare il filesystem devi
+ utilizzare il seguente comando:</para>
+
+ <screen>&prompt.root; <userinput>fdisk -vBI /dev/stripe/st0</userinput></screen>
+ </step>
+
+ <step>
+ <para>Crea una tabella delle partizioni sul nuovo volume con in
+ seguente comando:</para>
+
+ <screen>&prompt.root; <userinput>bsdlabel -wB /dev/stripe/st0</userinput></screen>
+ </step>
+
+ <step>
+ <para>Questa procedura dovrebbe aver creato altri due device in
+ <filename role="directory">/dev/stripe</filename> in aggiunta a
+ <devicename>st0</devicename>. Nella fattispecie
+ <devicename>st0a</devicename> e <devicename>st0c</devicename>.
+ Ora bisogna creare un filesystem nel device
+ <devicename>st0a</devicename> utilizzando il comando
+ <command>newfs</command> come segue:</para>
+
+ <screen>&prompt.root; <userinput>newfs -U /dev/stripe/st0a</userinput></screen>
+
+ <para>Dopo che per qualche secondo vedrete parecchi numeri scorrere
+ sullo schermo, la procedura sarà completa. Il volume è
+ stato creato ed è pronto per essere montato.</para>
+ </step>
+ </procedure>
+
+ <para>Per montare manualmente il dispositivo stripe appena creato usa il
+ seguente comando:</para>
+
+ <screen>&prompt.root; <userinput>mount /dev/stripe/st0a /mnt</userinput></screen>
+
+ <para>Per montare il filesystem stripe automaticamente all'avvio del
+ sistema, inserisci le informazioni del volume nel file
+ <filename>/etc/fstab</filename>:</para>
+
+ <screen>&prompt.root; <userinput>echo "/dev/stripe/st0a /mnt ufs rw 2 2" \</userinput>
+ <userinput>&gt;&gt; /etc/fstab</userinput></screen>
+
+ <para>Il modulo <filename>geom</filename> deve essere caricato contestualmente
+ all'avvio del sistema; questo lo si ottiene semplicemente inserendo la
+ seguente linea nel file <filename>/boot/loader.conf</filename>:</para>
+
+ <screen>&prompt.root; <userinput>echo 'geom_stripe_load="YES"' &gt;&gt; /boot/loader.conf</userinput></screen>
+ </sect1>
+
+ <sect1 id="GEOM-mirror">
+ <title>RAID1 - Mirroring</title>
+
+ <indexterm>
+ <primary>GEOM</primary>
+ </indexterm>
+ <indexterm>
+ <primary>Disk Mirroring</primary>
+ </indexterm>
+
+ <para>Il mirroring è una tecnologia utilizzata da molte aziende e
+ utenti casalinghi per il salvataggio dei dati senza interruzioni.
+ La presenza di un "mirror" significa semplicemente che il disco B replica
+ il disco A;oppure che i dischi C e D replicano i dischi A e B.
+ Indipendentemente dalla configurazione del disco, l'aspetto importante
+ è che le informazioni presenti su un disco o una partizione sono
+ letteralmente "replicati". Successivamente queste informazioni possono
+ essere facilmente ripristinate,salvate senza che si verifichino
+ disservizi o interruzioni nel loro accesso e, addirittura, conservate
+ fisicamente in cassaforte.</para>
+
+ <para>Per cominciare assicurati che il sistema disponga di due dischi di
+ identica capacità. Questo esercizio si riferisce a dischi
+ <acronym>SCSI</acronym>ad accesso diretto (&man.da.4;),</para>
+
+ <para>Comincia installando &os; sul primo disco creando solamente due
+ partizioni. Una dovrebbe essere una partizione di swap, pari al doppio
+ della <acronym>RAM</acronym> presente nel sistema e il resto dello spazio
+ dedicato al filesystem di root (<filename role="directory">/</filename>).
+ È possibile creare partizioni separate per gli altri mount points,
+ aumentando parecchio la difficoltà di realizzazione del progetto;
+ questo è dovuto alla necessità di alterare manualmente i
+ settaggi di &man.bsdlabel.8; e &man.fdisk.8;.</para>
+
+ <para>Riavvia e aspetta che il sistema sia completamente attivo.
+ Non appena il boot è completato effettua il login come
+ <username>root</username>.</para>
+
+ <para>Crea il device <filename>/dev/mirror/gm</filename> e fai un link
+ dello stesso a <filename>/dev/da1</filename>:</para>
+
+ <screen>&prompt.root; <userinput>gmirror label -vnb round-robin gm0 /dev/da1</userinput></screen>
+
+ <para>Il sistema dovrebbe rispondere con:</para>
+
+ <screen>Metadata value stored on /dev/da1.
+Done.</screen>
+
+ <para>Avvia GEOM,questa procedura caricherà nel kernel il modulo
+ <filename>/boot/kernel/geom_mirror.ko</filename></para>
+
+ <screen>&prompt.root; <userinput>gmirror load</userinput></screen>
+
+ <note>
+ <para>Questo comando dovrebbe ora avere creato i nodi di
+ device<devicename>gm0</devicename>,<devicename>gm0s1</devicename>,
+ <devicename>gm0s1a</devicename> e <devicename>gm0s1c</devicename> nella
+ directory <filename role="directory">/dev/mirror</filename>.</para>
+ </note>
+
+ <para>Crea una label generica e un codice di boot nel device
+ <devicename>gm0</devicename> appena creato utilizzando il comando
+ <command>fdisk</command>:</para>
+
+ <screen>&prompt.root; <userinput>fdisk -vBI /dev/mirror/gm0</userinput></screen>
+
+ <para>Ora crea una label di informazioni generica con
+ <command>bsdlabel</command>:</para>
+
+ <screen>&prompt.root; <userinput>bsdlabel -wB /dev/mirror/gm0s1</userinput></screen>
+
+ <note>
+ <para>Se sono presenti più slices e partizioni, i flags dei due
+ comandi precedenti richiederanno delle modifiche. Queste modifiche
+ devono combaciare con la grandezza delle slices e delle partizioni
+ dell'altro disco.</para>
+ </note>
+
+ <para>Utilizza l'utility &man.newfs.8; per creare un filesystem di default
+ sul nodo di device<devicename>gm0s1a</devicename>:</para>
+
+ <screen>&prompt.root; <userinput>newfs -U /dev/mirror/gm0s1a</userinput></screen>
+
+ <para>Questo dovrebbe causare la visualizzazione di un bel pò di
+ numeri e informazioni varie da parte del sistema. È corretto.
+ Esamina bene lo schermo per vedere se ci sono messaggi di errore e monta
+ il device in <filename role="directory">/mnt</filename>:</para>
+
+ <screen>&prompt.root; <userinput>mount /dev/mirror/gm0s1a /mnt</userinput></screen>
+
+ <para>Ora sposta tutti i dati presenti sul tuo disco di boot nel nuovo
+ filesystem. Questo esempio usa i comandi &man.dump.8; e &man.restore.8;
+ comunque anche &man.dd.1; dovrebbe funzionare nel contesto che stiamo
+ trattando. Evita di utilizzare &man.tar.1; dal momento che non copia il
+ codice di boot. In caso contrario il fallimento è
+ garantito.</para>
+
+ <screen>&prompt.root; <userinput>dump -L -0 -f- / |(cd /mnt && restore -r -v -f-)</userinput></screen>
+
+ <para>Questo deve essere fatto per ciascun filesystem. Disponi
+ semplicemente il filesystem appropriato nella posizione corretta quando
+ digiti il suddetto comando.</para>
+
+ <para>Ora edita il file <filename>/mnt/etc/fstab</filename> "replicato" e
+ rimuovi,o commenta (#) la riga relativa al file di swap.
+ <footnote>
+ <para>È opportuno chiarire che commentando la riga relativa
+ allo swap nel file <filename>fstab</filename> ti sarà chiesto
+ di ristabilire in un' altra maniera l'utilizzo dello spazio di
+ swapping. Per maggiori informazioni a riguardo fai riferimento a
+ <xref linkend="adding-swap-space"/>, grazie.</para>
+ </footnote>
+ Per utilizzare il nuovo disco cambia le altre informazioni di filesystem.
+ Dai un' occhiata al seguente esempio:</para>
+
+ <programlisting># Device Mountpoint FStype Options Dump Pass#
+#/dev/da0s2b none swap sw 0 0
+/dev/mirror/gm0s1a / ufs rw 1 1
+ </programlisting>
+
+ <para>Ora crea un file <filename>boot.conf</filename> in entrambe le
+ partizioni di root; quella corrente e quella nuova. Questo file
+ aiuterà il <acronym>BIOS</acronym> di sistema ad effettuare il
+ boot dal drive corretto.</para>
+
+ <screen>&prompt.root; <userinput>echo "1:da(1,a)/boot/loader" &gt; /boot.config</userinput></screen>
+
+ <screen>&prompt.root; <userinput>echo "1:da(1,a)/boot/loader" &gt; /mnt/boot.config</userinput></screen>
+
+ <note>
+ <para>Lo abbiamo inserito in entrambe le partizioni di root per
+ assicurarci un boot corretto. Se per qualche ragione il sistema non
+ potesse leggere la nuova partizione di root, è disponibile una
+ procedura di recupero.</para>
+ </note>
+
+ <para>Adesso aggiungi la seguente linea al nuovo file
+ <filename>/boot/loader.conf</filename>:</para>
+
+ <screen>&prompt.root; <userinput>echo 'geom_mirror_load="YES"' &gt;&gt; /mnt/boot/loader.conf</userinput></screen>
+
+ <para>Questo indicherà a &man.loader.8; come caricare il modulo
+ <filename>geom_mirror.ko</filename> durante l'inizializzazione del
+ sistema.</para>
+
+ <para>Riavvia il sistema:</para>
+
+ <screen>&prompt.root; <userinput>shutdown -r now</userinput></screen>
+
+ <para>Se tutto è andato liscio il sistema dovrebbe aver effettuato
+ il boot di device<devicename>gm0s1a</devicename> e il prompt di
+ <command>login</command> dovrebbe essere in attesa. Se qualcosa è
+ andato storto fai riferimento alla sezione successiva "risoluzione dei
+ problemi". Ora aggiungi al disco<devicename>da0</devicename> al device
+ <devicename>gm0</devicename>:</para>
+
+ <screen>&prompt.root; <userinput>gmirror configure -a gm0</userinput>
+&prompt.root; <userinput>gmirror insert gm0 /dev/da0</userinput></screen>
+
+ <para>Il flag <option>-a</option> dice a &man.gmirror.8; di usare la
+ sincronizzazione automatica; ovvero mirrorare
+ automaticamente le scritture sul disco. La manpage descrive come
+ ricostruire o rimpiazzare i dischi, utilizzando
+ <devicename>data</devicename> al posto di
+ <devicename>gm0</devicename>.</para>
+
+ <sect2>
+ <title>Risoluzione dei problemi</title>
+
+ <sect3>
+ <title>Il sistema non effettua il boot</title>
+
+ <para>Se al boot il sistema mostra un prompt simile a questo:</para>
+
+ <programlisting>ffs_mountroot: can't find rootvp
+Root mount failed: 6 mountroot>
+</programlisting>
+
+ <para>Riavvia la macchina utilizzando il tasto di reset o il pulsante
+ di accensione. Arrivato al menu del boot, scegli l'opzione sei (6).
+ Questo forzerà il sistema al prompt di &man.loader.8;.
+ Carica manualmente il modulo del kernel:</para>
+
+ <screen>OK? <userinput>load geom_mirror.ko</userinput>
+OK? <userinput>boot</userinput></screen>
+
+ <para>Se funziona significa che per qualche ragione il modulo non era
+ stato caricato correttamente. Inserisci:</para>
+
+ <programlisting>options GEOM_MIRROR</programlisting>
+
+ <para>nel file di configurazione del kernek,ricompilalo e reinstallalo.
+ Questo dovrebbe risolvere il problema.</para>
+ </sect3>
+ </sect2>
+ </sect1>
+</chapter>