Update to r40946:

This patch addresses the following:

- fixes xref tags

- some tightening and removing of redundancy

- fixed some confusion in glabel section
This commit is contained in:
Bjoern Heidotting 2016-04-10 21:27:47 +00:00
parent 632173add4
commit cd407a4293
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=48560

View file

@ -5,7 +5,7 @@
$FreeBSD$
$FreeBSDde$
basiert auf: r39909
basiert auf: r40946
-->
<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="GEOM">
<info><title>GEOM: Modulares Framework zur
@ -38,12 +38,11 @@
Framework zur Konfiguration nutzen. Dieses Kapitel enthält
keine tiefschürfenden Betrachtungen, wie GEOM I/O nutzt
oder steuert, sein zugrundeliegendes Subsystem oder den
Quelltext von GEOM. Diese Information wird durch die
&man.geom.4;-Manualpage und seine zahlreichen <quote>SEE ALSO</quote>-Verweise
Quelltext von GEOM. Solche Informationen werden in &man.geom.4;
und seinen zahlreichen <quote>SEE ALSO</quote>-Verweisen
bereitgestellt. Dieses Kapitel ist auch kein ausführlicher
Führer für
<acronym>RAID</acronym>-Konfigurationen. Nur durch GEOM
unterstützte <acronym>RAID</acronym>-Klassen werden
Leitfaden für <acronym>RAID</acronym>-Konfigurationen. Nur
durch GEOM unterstützte <acronym>RAID</acronym>-Klassen werden
erörtert.</para>
<para>Nach Lesen dieses Kapitels werden Sie folgendes
@ -91,13 +90,14 @@
<sect1 xml:id="GEOM-intro">
<title>Einführung in GEOM</title>
<para>GEOM erlaubt den Zugriff und die Kontrolle von Klassen
&mdash; Master Boot Records, <acronym>BSD</acronym>-Label usw.
&mdash; durch die Nutzung von Datenträgern (Providern) oder
den besonderen Dateien in <filename>/dev</filename>. Verschiedene Software
<acronym>RAID</acronym>-Konfigurationen unterstützend, wird
GEOM Ihnen transparenten Zugriff auf das Betriebssystem und
System-Dienstprogramme gewähren.</para>
<para>GEOM erlaubt den Zugriff und die Kontrolle von Klassen, wie
beispielsweise Master Boot Records und
<acronym>BSD</acronym>-Label, durch die Nutzung von Datenträgern
(Providern) oder den besonderen Dateien in
<filename>/dev</filename>. Verschiedene Software
<acronym>RAID</acronym>-Konfigurationen unterstützend, gewährt
GEOM transparenten Zugriff auf das Betriebssystem und die
System-Dienstprogramme.</para>
</sect1>
<sect1 xml:id="GEOM-striping">
@ -108,7 +108,6 @@
</authorgroup>
</info>
<indexterm>
<primary>GEOM</primary>
@ -117,13 +116,11 @@
<primary>Striping</primary>
</indexterm>
<para>Striping (stripe = Streifen) ist eine Methode, um
verschiedene Laufwerke in einem einzigen Datenträger
zusammenzufassen. In vielen Fällen wird dies durch die
Nutzung von Hardware-Controllern bewerkstelligt. Das
GEOM-Subsystem unterstützt
Software-<acronym>RAID</acronym>0 (welches auch als Striping
bekannt ist).</para>
<para>Striping (stripe = Streifen) fasst verschiedene Laufwerke in
einem einzigen Datenträger zusammen. In vielen Fällen wird dies
durch die Nutzung von Hardware-Controllern bewerkstelligt. Das
GEOM-Subsystem unterstützt Software-<acronym>RAID</acronym>0,
welches auch als Striping bekannt ist.</para>
<para>In einem <acronym>RAID</acronym>0-System werden die Daten
in einzelne Blöcke aufgeteilt, welche über alle
@ -176,9 +173,8 @@
Stripe-Gerät. Das folgende Beispiel verwendet zwei
unbenutzte und unpartitionierte
<acronym>ATA</acronym>-Platten, die gestriped werden sollen.
Lauten die Gerätenamen <filename>/dev/ad2</filename>
und <filename>/dev/ad3</filename>, so verwenden Sie folgenden
Befehl:</para>
Die Gerätenamen lauten <filename>/dev/ad2</filename> und
<filename>/dev/ad3</filename>:</para>
<screen>&prompt.root; <userinput>gstripe label -v st0 /dev/ad2 /dev/ad3</userinput>
Metadata value stored on /dev/ad2.
@ -200,10 +196,9 @@ Done.</screen>
Verzeichnis <filename>/dev/stripe</filename> (zusätzlich zum
Gerät <filename>st0</filename>) erzeugt haben. Diese
schliessen <filename>st0a</filename> und
<filename>st0c</filename> ein. Nun kann ein Dateisystem
auf dem Gerät <filename>st0a</filename> mit dem
<command>newfs</command>-Dienstprogramm erzeugt
werden:</para>
<filename>st0c</filename> ein. Nun kann mit
<command>newfs</command> ein Dateisystem auf dem Gerät
<filename>st0a</filename> erzeugt werden:</para>
<screen>&prompt.root; <userinput>newfs -U /dev/stripe/st0a</userinput></screen>
@ -219,11 +214,10 @@ Done.</screen>
<screen>&prompt.root; <userinput>mount /dev/stripe/st0a /mnt</userinput></screen>
<para>Um das erzeugte Dateisystem automatisch während des
Startvorgangs zu mounten, müssen Sie die
Datenträgerinformation in die Datei
<filename>/etc/fstab</filename> schreiben. Dazu legen Sie einen
permanenten Mountpunkt namens
<filename>stripe</filename> an:</para>
Startvorgangs zu mounten, muss die Datenträgerinformation
in <filename>/etc/fstab</filename> eingetragen werden. In
diesem Beispiel wird ein permanenter Mountpunkt namens
<filename>stripe</filename> erstellt:</para>
<screen>&prompt.root; <userinput>mkdir /stripe</userinput>
&prompt.root; <userinput>echo "/dev/stripe/st0a /stripe ufs rw 2 2" \</userinput>
@ -748,9 +742,9 @@ mirror/gm0 COMPLETE ada1 (ACTIVE)
<para>Möglicherweise müssen die
<acronym>BIOS</acronym>-Einstellungen geändert werden, um
von dem neuen gespiegelten Laufwerk zu booten. Beide
Platten des Spiegels können zum Booten verwendet werden.
Als Komponenten des Spiegels enthalten sie identische
Daten.</para>
Platten des Spiegels können zum Booten verwendet werden, da
sie als Komponenten des Spiegels identische Daten
enthalten.</para>
</sect4>
<sect4>
@ -811,7 +805,7 @@ mountroot&gt;</screen>
und drücken Sie <keycap>Enter</keycap>. Machen Sie die
Änderungen an <filename>/etc/fstab</filename> rückgängig und
hängen Sie anstelle des Spiegels die originale Festplatte
(<filename>ada0</filename>) ein. Starten Sie dann das
<filename>ada0</filename> ein. Starten Sie dann das
System neu und versuchen Sie den Vorgang erneut.</para>
<screen>Enter full pathname of shell or RETURN for /bin/sh:
@ -825,7 +819,7 @@ mountroot&gt;</screen>
<title>Wiederherstellung des Systems nach einem
Plattenausfall</title>
<para>Das Schöne an der Plattenspiegelung ist, dass eine Platte
<para>Der Vorteil der Plattenspiegelung ist, dass eine Platte
ausfallen kann, ohne dass Sie dabei Daten verlieren. Falls
<filename>ada0</filename> aus dem obigen Beispiel ausfällt,
steht der Spiegel weiterhin zur Verfügung und bietet die Daten
@ -1065,7 +1059,7 @@ Done.</screen>
<title>GEOM Gate Netzwerkgeräte</title>
<para>GEOM unterstützt die Verwendung entfernter Geräte
wie Festplatten, CD-ROMs, Dateien usw. mittels Nutzung
wie Festplatten, CD-ROMs und Dateien mittels Nutzung
der Gate-Dienstprogramme. Dies ist vergleichbar mit
<acronym>NFS</acronym>.</para>
@ -1097,9 +1091,8 @@ Done.</screen>
ggate0
&prompt.root; <userinput>mount /dev/ggate0 /mnt</userinput></screen>
<para>Von nun an kann auf das Gerät über den Mount-Punkt
<filename>/mnt</filename> zugegriffen
werden.</para>
<para>Auf das Gerät kann jetzt über den Mount-Punkt
<filename>/mnt</filename> zugegriffen werden.</para>
<note>
<para>Es sollte darauf hingewiesen werden, dass dies
@ -1108,10 +1101,8 @@ ggate0
gemountet ist.</para>
</note>
<para>Wenn das Gerät nicht länger gebraucht wird,
dann kann es mit dem Befehl &man.umount.8;
ausgehängt werden (genauso wie jedes andere Laufwerk
auch).</para>
<para>Wenn das Gerät nicht länger gebraucht wird, kann es mit
&man.umount.8; ausgehängt werden.</para>
</sect1>
<sect1 xml:id="geom-glabel">
@ -1136,9 +1127,8 @@ ggate0
gleichzeitig das bisherige <filename>da0</filename>
zu <filename>da1</filename> wird. Dies verursacht
Probleme beim Einhängen von Dateisystemen, wenn diese
in der <filename>/etc/fstab</filename> aufgeführt
sind und schlussendlich mag das auch dazu führen,
dass das System nicht mehr startet.</para>
in <filename>/etc/fstab</filename> aufgeführt sind und kann dazu
führen, dass das System nicht mehr startet.</para>
<para>Eine Lösung für dieses Problem ist das
Aneinanderketten der <acronym>SCSI</acronym>-Geräte,
@ -1157,10 +1147,9 @@ ggate0
nutzen und die <acronym>SCSI</acronym>-Geräte niemals
in der <filename>/etc/fstab</filename> aufzuführen.</para>
<para>Es gibt allerdings eine bessere Lösung. Durch
Verwendung des <command>glabel</command>-Dienstprogramms
kann ein Administrator oder Benutzer seine Laufwerke mit
Labeln versehen und diese in der <filename>/etc/fstab</filename>
<para>Eine bessere Lösung ist die Verwendung von
<command>glabel</command>, um die Laufwerke zu mit Labeln zu
versehen und diese in <filename>/etc/fstab</filename> zu
nutzen. Da <command>glabel</command> seine Label im letzten
Sektor jedes vorhandenen Datenträgers speichert, wird
das Label persistent bleiben (auch über Neustarts hinweg).
@ -1170,39 +1159,34 @@ ggate0
wird.</para>
<note>
<para>Der Label muss permanent (dauerhaft) sein.
Man kann das Dienstprogramm <command>glabel</command>
nutzen, um sowohl transiniente als auch permanente Label
zu erzeugen. Aber nur permanente (persistente) Label
bleiben konsistent über Neustarts hinweg. Lesen
Sie die &man.glabel.8;-Manualpage für weitere
Unterschiede zwischen den Label-Typen.</para>
<para><command>glabel</command> kann permanente (dauerhaft) und
vorübergehende Label erstellen. Aber nur dauerhafte
Label bleiben konsistent über Neustarts hinweg. Lesen
Sie die &man.glabel.8; für weitere Unterschiede zwischen den
Label-Typen.</para>
</note>
<sect2>
<title>Label-Typen und Beispiele</title>
<para>Es gibt zwei Arten von Labeln: generische Label und
Dateisystem-Label. Label können dauerhaft (permanent)
oder temporär sein. Permanente Label können mit
&man.tunefs.8; oder &man.newfs.8; in einem speziellen
spezielles Verzeichnis in <filename>/dev</filename> erzeugt werden, welches
entsprechend der Dateisystem-Art benannt wird.
<acronym>UFS</acronym>2-Dateisystem-Label werden zum
Beispiel im Verzeichnis
<filename>/dev/ufs</filename>
angelegt. Permanente Label können außerdem durch
<para>Permanente Label können generische Label oder
Dateisystem-Label sein. Permanente Dateisystem-Label können
mit &man.tunefs.8; oder &man.newfs.8; erzeugt werden. Dieser
Typ von Label wird in einem Unterverzeichnis von
<filename>/dev</filename> angelegt und wird dem Dateisystem
entsprechend benannt.
<acronym>UFS</acronym>2-Dateisystem-Label werden zum Beispiel
in <filename>/dev/ufs</filename> angelegt. Permanente Label können außerdem durch
den Befehl <command>glabel label</command> erzeugt werden.
Diese Label sind dann allerdings nicht dateisystemspezisch
und werden im Unterverzeichnis <filename>/dev/label</filename> erzeugt.</para>
Diese Label sind nicht dateisystemspezisch und werden im
Unterverzeichnis <filename>/dev/label</filename>
erzeugt.</para>
<para>Ein temporäres Label verschwindet mit dem
nächsten Systemstart. Diese Label werden im
Verzeichnis <filename>/dev/label</filename>
erzeugt und sind ideal für Testzwecke. Ein temporäres
Label kann durch den Befehl <command>glabel create</command>
erzeugt werden. Weitere Informationen finden sich in der
Manualpage &man.glabel.8;.</para>
<para>Temporäre Label werden beim nächsten Systemstart zerstört.
Diese Label werden im Verzeichnis
<filename>/dev/label</filename> erzeugt und sind ideal für
Testzwecke. Ein temporäres Label kann mit
<command>glabel create</command> erzeugt werden.</para>
<!-- XXXTR: How do you create a file system label without running newfs
or when there is no newfs (e.g.: cd9660)? -->
@ -1216,16 +1200,12 @@ ggate0
<warning>
<para>Wenn das Dateisystem voll ist, kann dies zu
Datenkorruption führen; aber egal wie, falls das
Dateisystem voll ist, sollte das Hauptziel die
Entfernung ungenützter Dateien und nicht das
Hinzufügen von Labeln sein.</para>
Datenkorruption führen.</para>
</warning>
<para>Ein Label sollte nun in
<filename>/dev/ufs</filename> vorhanden
sein, der zu <filename>/etc/fstab</filename>
hinzugefügt wird:</para>
<para>In <filename>/dev/ufs</filename> sollte nun ein Label
vorhanden sein, welches zu <filename>/etc/fstab</filename>
hinzugefügt werden kann:</para>
<programlisting>/dev/ufs/home /home ufs rw 2 2</programlisting>
@ -1234,8 +1214,7 @@ ggate0
Versuch, <command>tunefs</command> auszuführen.</para>
</note>
<para>Nun kann das Dateisystem wie üblich gemountet
werden:</para>
<para>Nun kann das Dateisystem eingehängt werden:</para>
<screen>&prompt.root; <userinput>mount /home</userinput></screen>
@ -1248,8 +1227,8 @@ ggate0
<para>Dateisysteme können auch mit einem Standard-Label
erzeugt werden (mittels des Flags <option>-L</option> in
<command>newfs</command>). Lesen Sie bitte die Manualpage
von &man.newfs.8; für weitere Informationen.</para>
<command>newfs</command>). Lesen Sie &man.newfs.8; für weitere
Informationen.</para>
<para>Der folgende Befehl kann genutzt werden, um das Label
zu beseitigen:</para>
@ -1296,11 +1275,11 @@ GEOM_LABEL: Label for provider /dev/ad0s1b is label/swap
&prompt.root; <userinput>exit</userinput></screen>
<para>Das System startet daraufhin in den Multi-User-Modus.
Nachdem der Startvorgang abgeschlossen ist, editieren Sie die
Datei <filename>/etc/fstab</filename> und ersetzen die
Nachdem der Startvorgang abgeschlossen ist, editieren Sie
<filename>/etc/fstab</filename> und ersetzen die
konventionellen Gerätedateien durch die entsprechenden
Label. Ihre modifizierte <filename>/etc/fstab</filename>
sollte nun ähnlich der folgenden Ausgabe aussehen:</para>
Label. Die modifizierte <filename>/etc/fstab</filename>
sollte wie folgt aussehen:</para>
<programlisting># Device Mountpoint FStype Options Dump Pass#
/dev/label/swap none swap sw 0 0
@ -1326,13 +1305,13 @@ devfs on /dev (devfs, local)
&man.glabel.8; einen neuen Labeltyp für
<acronym>UFS</acronym>-Dateisysteme. Dieser basiert auf der
eindeutigen Dateisystem-ID <literal>ufsid</literal>.
Derartige Label finden sich im Verzeichnis
Derartige Label finden sich in
<filename>/dev/ufsid</filename> und werden
während des Systemstarts automatisch erzeugt. Es ist
möglich, diese <literal>ufsid</literal>-Label zum
automatischen Einhängen von Partitionen in der Datei
automatischen Einhängen von Partitionen in
<filename>/etc/fstab</filename> einzusetzen. Verwenden Sie
den Befehl <command>glabel status</command>, um eine Liste
<command>glabel status</command>, um eine Liste
aller Dateisysteme und ihrer <literal>ufsid</literal>-Label
zu erhalten:</para>
@ -1356,10 +1335,10 @@ ufsid/486b6fc16926168e N/A ad4s1f</screen>
/dev/ufsid/486b6fc16926168e /usr ufs rw 2 2</programlisting>
<para>Jede Partition, die ein <literal>ufsid</literal>-Label
aufweist, kann auf diese Art gemountet werden. Dies hat
den Vorteil, dass Sie keine permanenten Label mehr anlegen
aufweist, kann auf diese Art gemountet werden. Dies hat den
Vorteil, dass Sie die permanenten Label nicht manuell anlegen
müssen, wobei sich die Platten nach wie vor über
geräteunabhängige Namen ansprechen und mounten
geräteunabhängige Namen ansprechen und einhängen
lassen.</para>
</sect2>
</sect1>
@ -1374,21 +1353,19 @@ ufsid/486b6fc16926168e N/A ad4s1f</screen>
<primary>Journaling</primary>
</indexterm>
<para>Mit &os;&nbsp;7.0 wurde eine lang erwartete Funktion,
das Journaling, implementiert. Diese Funktion wird über
<para>&os; unterstützt Journaling für
<acronym>UFS</acronym>-Dateisysteme. Diese Funktion wird über
das <acronym>GEOM</acronym>-Subsystem realisiert und kann
über das Werkzeug &man.gjournal.8; eingerichtet
werden.</para>
über das Werkzeug &man.gjournal.8; eingerichtet werden.</para>
<para>Was ist Journaling? Bei Journaling wird ein Protokoll
über alle Dateisystemtransaktionen angelegt, inklusive
aller Veränderungen, aus denen ein kompletter
Schreibvorgang besteht, bevor diese Änderungen (Metadaten
sowie tatsächliche Schreibvorgänge) physisch auf
der Festplatte ausgeführt werden. Dieses Protokoll kann
später erneut aufgerufen werden, um diese Vorgänge
zu wiederholen (beispielsweise um Systeminkonsistenzen zu
vermeiden).</para>
<para>Bei Journaling wird ein Protokoll über alle
Dateisystemtransaktionen angelegt, inklusive aller
Veränderungen, aus denen ein kompletter Schreibvorgang besteht,
bevor diese Änderungen (Metadaten sowie tatsächliche
Schreibvorgänge) physisch auf der Festplatte ausgeführt werden.
Dieses Protokoll kann später erneut aufgerufen werden, um diese
Vorgänge zu wiederholen, damit Systeminkonsistenzen vermieden
werden.</para>
<para>Diese Technik bietet eine weitere Möglichkeit,
sich vor Datenverlust und Dateisystem-Inkonsistenzen zu
@ -1406,9 +1383,8 @@ ufsid/486b6fc16926168e N/A ad4s1f</screen>
<acronym>GEOM</acronym>-Erweiterung.</para>
<para>Um die <command>gjournal</command>-Unterstützung zu
aktivieren, muss der &os;-Kernel die folgende Option enthalten
(was seit &os;&nbsp;7.0 bereits in der Voreinstellung der Fall
ist):</para>
aktivieren, muss der &os;-Kernel die folgende Option
enthalten:</para>
<programlisting>options UFS_GJOURNAL</programlisting>
@ -1422,7 +1398,7 @@ ufsid/486b6fc16926168e N/A ad4s1f</screen>
<para>Alternativ können Sie auch einen angepassten Kernel
bauen, der diese Funktionalität enthält, indem Sie die
folgende Zeile in Ihrer Kernelkonfigurationsdatei
folgende Zeile in die Kernelkonfigurationsdatei
aufnehmen:</para>
<programlisting>options GEOM_JOURNAL</programlisting>
@ -1448,7 +1424,7 @@ ufsid/486b6fc16926168e N/A ad4s1f</screen>
Journaling aktiviert wurde.</para>
<para>Danach hängen Sie das neue Dateisystem mit
<command>mount</command> in Ihren Verzeichnisbaum ein:</para>
<command>mount</command> in den Verzeichnisbaum ein:</para>
<screen>&prompt.root; <userinput>mount /dev/da4.journal /mnt</userinput></screen>
@ -1468,17 +1444,17 @@ ufsid/486b6fc16926168e N/A ad4s1f</screen>
Theoretisch ist es auch möglich, Journaling auf bereits
existierenden Dateisystemen durch das Werkzeug
<command>tunefs</command> zu aktivieren. Machen Sie aber
in jedem Fall ein Backup Ihrer Daten, bevor Sie versuchen,
ein existierendes Dateisystem zu ändern.
<emphasis>immer</emphasis> eine Sicherung der Daten, bevor Sie
versuchen, ein existierendes Dateisystem zu ändern.
<command>gjournal</command> wird zwar den Vorgang abbrechen,
wenn es das Journal nicht erzeugen kann, allerdings schützt
Sie dies nicht vor Datenverlust durch einen fehlerhaften Einsatz
dies nicht vor Datenverlust durch einen fehlerhaften Einsatz
von <command>tunefs</command>.</para>
<para>Es ist möglich, Journale auch für die Bootplatte
eines &os;-System zu verwenden. Lesen Sie bitte den Artikel
<link xlink:href="&url.articles.gjournal-desktop.en;/article.html">
Implementing UFS Journaling on a Desktop PC</link>, wenn Sie
an einer derartigen Konfiguration interessiert sind.</para>
<para>Es ist möglich, Journale auch für die Bootplatte eines
&os;-Systems zu verwenden. Der Artikel <link
xlink:href="&url.articles.gjournal-desktop.en;/article.html">
Implementing UFS Journaling on a Desktop PC</link> enthält
eine ausführliche Anleitung zu diesem Thema.</para>
</sect1>
</chapter>