aboutsummaryrefslogtreecommitdiff
path: root/de_DE.ISO8859-1
diff options
context:
space:
mode:
authorJohann Kois <jkois@FreeBSD.org>2007-01-06 10:39:59 +0000
committerJohann Kois <jkois@FreeBSD.org>2007-01-06 10:39:59 +0000
commit906c1f21be9cd64e644f25a7da05afba1248261d (patch)
tree6998fdbc124c2a1eec29b3813f81ab6fffc3f431 /de_DE.ISO8859-1
parent93bddf561b8a2f0926cddbc72d08b906826bcfe7 (diff)
downloaddoc-906c1f21be9cd64e644f25a7da05afba1248261d.tar.gz
doc-906c1f21be9cd64e644f25a7da05afba1248261d.zip
MFbed: Update the German documentation set.
doc/de_DE.ISO8859-1/books/handbook/book.sgml 1.168 -> 1.169 doc/de_DE.ISO8859-1/books/handbook/disks/chapter.sgml 1.268 -> 1.269 doc/de_DE.ISO8859-1/books/handbook/install/chapter.sgml 1.339 -> 1.344 doc/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml 1.421 -> 1.422 doc/de_DE.ISO8859-1/books/handbook/security/chapter.sgml 1.308 -> 1.311 doc/de_DE.ISO8859-1/books/handbook/vinum/chapter.sgml new translation [X] doc/de_DE.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml 1.24 -> 1.25 Obtained from: The FreeBSD German Documentation Project. [X] Contributed by Kay Abendroth (kay.abendroth at raxion dot net)
Notes
Notes: svn path=/head/; revision=29331
Diffstat (limited to 'de_DE.ISO8859-1')
-rw-r--r--de_DE.ISO8859-1/books/handbook/book.sgml5
-rw-r--r--de_DE.ISO8859-1/books/handbook/disks/chapter.sgml6
-rw-r--r--de_DE.ISO8859-1/books/handbook/install/chapter.sgml356
-rw-r--r--de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml6
-rw-r--r--de_DE.ISO8859-1/books/handbook/security/chapter.sgml4
-rw-r--r--de_DE.ISO8859-1/books/handbook/vinum/chapter.sgml1650
-rw-r--r--de_DE.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml8
7 files changed, 1756 insertions, 279 deletions
diff --git a/de_DE.ISO8859-1/books/handbook/book.sgml b/de_DE.ISO8859-1/books/handbook/book.sgml
index 3193a4c63b..c40a0f230b 100644
--- a/de_DE.ISO8859-1/books/handbook/book.sgml
+++ b/de_DE.ISO8859-1/books/handbook/book.sgml
@@ -3,8 +3,8 @@
The FreeBSD German Documentation Project
$FreeBSD$
- $FreeBSDde: de-docproj/books/handbook/book.sgml,v 1.78 2006/10/21 14:07:02 jkois Exp $
- basiert auf: 1.168
+ $FreeBSDde: de-docproj/books/handbook/book.sgml,v 1.79 2007/01/05 19:43:44 jkois Exp $
+ basiert auf: 1.169
-->
<!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
@@ -82,6 +82,7 @@
<year>2004</year>
<year>2005</year>
<year>2006</year>
+ <year>2007</year>
<holder>The FreeBSD German Documentation Project</holder>
</copyright>
diff --git a/de_DE.ISO8859-1/books/handbook/disks/chapter.sgml b/de_DE.ISO8859-1/books/handbook/disks/chapter.sgml
index 5fd98748d5..89b8a452aa 100644
--- a/de_DE.ISO8859-1/books/handbook/disks/chapter.sgml
+++ b/de_DE.ISO8859-1/books/handbook/disks/chapter.sgml
@@ -3,8 +3,8 @@
The FreeBSD German Documentation Project
$FreeBSD$
- $FreeBSDde: de-docproj/books/handbook/disks/chapter.sgml,v 1.148 2006/12/07 20:34:46 jkois Exp $
- basiert auf: 1.268
+ $FreeBSDde: de-docproj/books/handbook/disks/chapter.sgml,v 1.149 2007/01/04 16:16:05 jkois Exp $
+ basiert auf: 1.269
-->
<chapter id="disks">
@@ -942,7 +942,7 @@ da0: 126MB (258048 512 byte sectors: 64H 32S/T 126C)</screen>
in die Konfigurationsdatei
<filename>/etc/sysctl.conf</filename> ein:</para>
- <programlisting>vfs.usermount="1"</programlisting>
+ <programlisting>vfs.usermount=1</programlisting>
<para>Damit diese Einstellung wirksam wird, m&uuml;ssen Sie Ihr
System neu starten. Alternativ k&ouml;nnen Sie diese Variable
diff --git a/de_DE.ISO8859-1/books/handbook/install/chapter.sgml b/de_DE.ISO8859-1/books/handbook/install/chapter.sgml
index b3d684b065..8a3aa249d1 100644
--- a/de_DE.ISO8859-1/books/handbook/install/chapter.sgml
+++ b/de_DE.ISO8859-1/books/handbook/install/chapter.sgml
@@ -2,8 +2,8 @@
The FreeBSD Documentation Project
$FreeBSD$
- $FreeBSDde: de-docproj/books/handbook/install/chapter.sgml,v 1.42 2006/12/12 19:25:38 jkois Exp $
- basiert auf: 1.339
+ $FreeBSDde: de-docproj/books/handbook/install/chapter.sgml,v 1.46 2007/01/06 09:37:56 jkois Exp $
+ basiert auf: 1.344
-->
<chapter id="install">
@@ -25,7 +25,6 @@
Bildschirmabz&uuml;ge von </contrib>
</author>
</authorgroup>
- <!-- January 2000 -->
<authorgroup>
<author>
@@ -97,6 +96,116 @@
</note>
</sect1>
+ <sect1 id="install-hardware">
+ <title>Hardware-Anforderungen</title>
+
+ <sect2 id="install-hardware-minimal">
+ <title>Minimalkonfiguration</title>
+
+ <para>Die zur Installation von &os; erforderliche
+ Minimalkonfiguration h&auml;ngt von der zu installierenden
+ &os;-Version sowie von der Hardware-Architektur ab.</para>
+
+ <para>Informationen zur jeweiligen Minimalkonfiguration finden
+ Sie in Installation Notes auf der Unterseite <ulink
+ url="&url.base;/de/releases/index.html">Release
+ Information</ulink> der &os;-Internetseiten. Die folgenden
+ Abschnitte fassen diese Informationen zusammen. Je nachdem,
+ wie Sie &os; installieren, ben&ouml;tigen Sie eventuell auch
+ ein Diskettenlaufwerk, ein unterst&uuml;tztes CD-ROM-Laufwerk,
+ oder auch eine Netzwerkkarte. <xref
+ linkend="install-floppies"> des Handbuchs enth&auml;lt
+ weitere Informationen zu den verschiedenen
+ Installationsarten.</para>
+
+ <sect3>
+ <title>Die i386- und pc98-Architektur</title>
+
+ <para>Sowohl &os;/i386 als auch &os;/pc98 ben&ouml;tigen
+ jeweils mindestens einen 486-Prozessor sowie mindestens
+ 24&nbsp;MB RAM. Au&szlig;erdem ben&ouml;tigen Sie f&uuml;r
+ eine Minimalinstallation mindestens 150&nbsp;MB freien
+ Platz auf Ihrer Festplatte.</para>
+
+ <note>
+ <para>In den meisten derartigen Konfigurationen ist es
+ besser, f&uuml;r mehr RAM und mehr Plattenplatz zu sorgen,
+ statt einen schnelleren Prozessor einzubauen.</para>
+ </note>
+ </sect3>
+
+ <sect3>
+ <title>Die Alpha-Architektur</title>
+
+ <para>Um &os;/alpha zu installieren, ben&ouml;tigen Sie
+ eine unterst&uuml;tzte Plattorm (lesen Sie dazu auch
+ <xref linkend="install-hardware-supported"> des
+ Handbuchs) sowie eine
+ seperate Festplatte f&uuml;r die &os;-Installation.
+ Es ist nicht derzeit m&ouml;glich, die Platte mit einem
+ weiteren Betriebssystem zu teilen. Diese seperate Platte
+ muss an einen SCSI-Controller angeschlossen sein, der von
+ der SRM-Firmware unterst&uuml;tzt wird. Alternativ
+ k&ouml;nnen Sie auch eine IDE-Platte verwenden, wenn Ihr
+ SRM das Starten von IDE-Platten unterst&uuml;tzt.</para>
+
+ <para>F&uuml;r die &os;-Installation ben&ouml;tigen Sie die
+ SRM-Konsolen-Firmware f&uuml;r Ihre Plattform. Manchmal
+ ist es m&ouml;glich, zwischen der AlphaBIOS-Firmware
+ (auch ARC genannt) und SRM zu wechseln. Ist dies bei
+ Ihnen nicht m&ouml;glich, m&uuml;ssen Sie sich die neue
+ Firmware von der Internetseite Ihres Herstellers
+ herunterladen.</para>
+ </sect3>
+
+ <sect3>
+ <title>Die amd64-Architektur</title>
+
+ <para>&os;/amd64 ben&ouml;tigt f&uuml;r den Betrieb
+ mindestens einen AMD&nbsp;Athlon&nbsp;64-,
+ AMD&nbsp;Athlon&nbsp;64-FX-, oder einen
+ AMD&nbsp;Opteron-Prozessor.</para>
+
+ <para>Wenn Sie einen auf dem Chipsatz nVidia nForce3 Pro-150
+ basierenden Rechner haben, <emphasis>m&uuml;ssen</emphasis>
+ Sie im BIOS das IO-APIC deaktivieren. Erlaubt ihr BIOS
+ dies nicht, m&uuml;ssen Sie stattdessen ACPI deaktivieren.
+ Der Grund daf&uuml;r sind Fehler im Pro-150-Chipsatz, die
+ bis jetzt nicht behoben werden konnten.</para>
+ </sect3>
+
+ <sect3>
+ <title>Die &sparc64;-Architektur</title>
+
+ <para>Um &os;/&sparc64; zu installieren, ben&ouml;tigen Sie
+ eine unterst&uuml;tzte Plattform (lesen Sie dazu auch
+ <xref linkend="install-hardware-supported"> des
+ Handbuchs).</para>
+
+ <para>Sie ben&ouml;tigen au&szlig;erdem eine seperate
+ Festplatte, wenn Sie &os;/&sparc64; installieren wollen,
+ da es derzeit leider noch nicht m&ouml;glich ist, die
+ Platte mit einem weiteren Betriebssystem zu teilen.</para>
+ </sect3>
+ </sect2>
+
+ <sect2 id="install-hardware-supported">
+ <title>Unterst&uuml;tzte Hardware</title>
+
+ <para>Die Hardware-Notes, die mit jedem &os;-Release
+ ausgeliefert werden, enthalten eine Liste lauff&auml;higer
+ Hardware. Die Hardware-Notes befinden sich &uuml;blicherweise
+ in der Datei <filename>HARDWARE.TXT</filename> im
+ Wurzelverzeichnis der Distribution (CD-ROM oder FTP).
+ Sie k&ouml;nnen die Hardware-Notes au&szlig;erdem im
+ Dokumentationsmen&uuml; von
+ <application>sysinstall</application> oder auf der Webseite
+ <ulink
+ url="&url.base;/de/releases/index.html">Release Information</ulink>
+ lesen.</para>
+ </sect2>
+ </sect1>
+
<sect1 id="install-pre">
<title>Vor der Installation</title>
@@ -215,6 +324,11 @@
</tbody>
</tgroup>
</table>
+
+ <para>Nachdem Sie wissen, &uuml;ber welche Hardware Ihr Rechner
+ verf&uuml;gt, m&uuml;ssen Sie diese Informationen mit den
+ Hardwareanforderungen der zu installierenden &os;-Version
+ abgleichen.</para>
</sect2>
<sect2>
@@ -2944,193 +3058,6 @@ Press [Enter] now to invoke an editor on /etc/exports
</sect3>
</sect2>
- <sect2 id="securityprofile">
- <title>Sicherheitsprofil</title>
-
- <para>Ein Sicherheitsprofil
- (<foreignphrase>security profile</foreignphrase>) ist eine
- Sammlung von Einstellungen, die versucht, ein vorgegebenes
- Verh&auml;ltnis von Sicherheit und Bedienbarkeit einzustellen.
- Dazu werden bestimmte Programme und Optionen aktiviert oder
- deaktiviert. Je sch&auml;rfer das Sicherheitsprofil ist,
- desto weniger Programme werden in der Voreinstellung
- aktiviert. Dies ist einer der Sicherheitsgrunds&auml;tze:
- Lassen Sie nur die Programme laufen, die Sie auch
- wirklich ben&ouml;tigen.</para>
-
- <para>Beachten Sie, dass ein Sicherheitsprofil nur eine
- Vorgabe ist. Nachdem Sie &os; installiert haben, k&ouml;nnen
- Sie alle Programme in der Datei <filename>/etc/rc.conf</filename>
- aktivieren oder deaktivieren. Weiteres erfahren Sie in
- der Hilfeseite &man.rc.conf.5;.</para>
-
- <para>Die Sicherheitsprofile sind in der nachstehenden Tabelle
- zusammengefasst. In den Spalten stehen die m&ouml;glichen
- Sicherheitsprofile, in den Reihen sind die Programme oder
- Funktionen aufgef&uuml;hrt, die ein Profil aktiviert oder
- deaktiviert.</para>
-
- <table>
- <title>M&ouml;gliche Sicherheitsprofile</title>
-
- <tgroup cols=3>
- <thead>
- <row>
- <entry></entry>
-
- <entry>Extreme</entry>
-
- <entry>Moderate</entry>
- </row>
- </thead>
-
- <tbody>
-
- <row>
- <entry>&man.sendmail.8;</entry>
-
- <entry>nein</entry>
-
- <entry>ja</entry>
- </row>
-
- <row>
- <entry>&man.sshd.8;</entry>
-
- <entry>nein</entry>
-
- <entry>ja</entry>
- </row>
-
- <row>
- <entry>&man.portmap.8;</entry>
-
- <entry>nein</entry>
-
- <entry>unter Umst&auml;nden
- <footnote>
- <para>Der Portmapper ist aktiviert, wenn der
- Rechner vorher als <acronym>NFS</acronym>-Client
- oder <acronym>NFS</acronym>-Server konfiguriert
- wurde.</para>
- </footnote>
- </entry>
- </row>
-
- <row>
- <entry>NFS-Server</entry>
-
- <entry>nein</entry>
-
- <entry>ja</entry>
- </row>
-
- <row>
- <entry>&man.securelevel.8;</entry>
-
- <entry>ja
- <footnote>
- <para>Beachten Sie die Auswirkungen, wenn Sie
- ein Sicherheitsprofil ausw&auml;hlen, dass
- den Securelevel auf <quote>Extreme</quote>
- oder <quote>High</quote> setzt. Damit Sie
- sp&auml;ter nicht in erhebliche Schwierigkeiten
- geraten, lesen Sie bitte die Hilfeseite
- &man.init.8; und achten Sie besonders auf die
- Auswirkungen des Securelevels.</para>
- </footnote>
- </entry>
-
- <entry>nein</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
-
- <screen> User Confirmation Requested
- Do you want to select a default security profile for this host (select
- No for "medium" security)?
-
- [ Yes ] No</screen>
-
- <para>Wenn Sie &gui.no; und
- <keycap>Enter</keycap> dr&uuml;cken, wird das
- Sicherheitsprofile auf <literal>medium</literal> gesetzt.</para>
-
- <para>Ein anderes Sicherheitsprofil stellen Sie ein, indem
- Sie &gui.yes; ausw&auml;hlen und
- <keycap>Enter</keycap> dr&uuml;cken.</para>
-
- <figure id="security-profile">
- <title>Ein Sicherheitsprofil ausw&auml;hlen</title>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="install/security" format="PNG">
- </imageobject>
- </mediaobject>
- </figure>
-
- <para>Mit <keycap>F1</keycap> k&ouml;nnen Sie einen
- Hilfebildschirm aufrufen. Um den Hilfebildschirm
- zu verlassen, dr&uuml;cken Sie die Taste
- <keycap>Enter</keycap>.</para>
-
- <para>W&auml;hlen Sie mit den Pfeiltasten
- <guimenuitem>Medium</guimenuitem> aus, wenn Sie nicht absolut
- sicher sind, dass Sie ein anderes Sicherheitsprofil
- ben&ouml;tigen. Schlie&szlig;en Sie die Auswahl mit
- &gui.ok; und der Taste <keycap>Enter</keycap> ab.</para>
-
- <para>Es erscheint eine Best&auml;tigung, die vom
- ausgew&auml;hlten Sicherheitsprofil abh&auml;ngt.</para>
-
- <screen> Message
-
-Moderate security settings have been selected.
-
-Sendmail and SSHd have been enabled, securelevels are
-disabled, and NFS server setting have been left intact.
-PLEASE NOTE that this still does not save you from having
-to properly secure your system in other ways or exercise
-due diligence in your administration, this simply picks
-a standard set of out-of-box defaults to start with.
-
-To change any of these settings later, edit /etc/rc.conf
-
- [OK]</screen>
-
- <screen> Message
-
-Extreme security settings have been selected.
-
-Sendmail, SSHd, and NFS services have been disabled, and
-securelevels have been enabled.
-PLEASE NOTE that this still does not save you from having
-to properly secure your system in other ways or exercise
-due diligence in your administration, this simply picks
-a more secure set of out-of-box defaults to start with.
-
-To change any of these settings later, edit /etc/rc.conf
-
- [OK]</screen>
-
- <para>Dr&uuml;cken Sie <keycap>Enter</keycap>, um mit
- den Nacharbeiten fortzufahren.</para>
-
- <warning>
- <para>Ein Sicherheitsprofil ist kein Allheilmittel!
- Auch wenn Sie ein scharfes Sicherheitsprofil verwenden,
- m&uuml;ssen Sie &uuml;ber aktuelle Sicherheitsprobleme
- informiert sein. Lesen Sie eine angemessene Mailingliste
- (<xref linkend="eresources-mail">),
- benutzen Sie gute Passw&ouml;rter und Passphrases
- und halten Sie sich an bekannte Verfahren.
- Ein Sicherheitsprofil stellt nur das gew&uuml;nschte
- Verh&auml;ltnis von Sicherheit und Bedienbarkeit ein.</para>
- </warning>
- </sect2>
-
<sect2 id="console">
<title>Die Systemkonsole einrichten</title>
@@ -4953,34 +4880,6 @@ Please press any key to reboot.</screen>
</sect2>
</sect1>
- <sect1 id="install-supported-hardware">
- <title>Unterst&uuml;tzte Hardware</title>
-
- <indexterm>
- <primary>Hardware</primary>
- </indexterm>
-
- <para>&os; l&auml;uft auf einer Vielzahl von ISA-, VLB-, EISA-
- und PCI-Bussystemen mit Intel-, AMD-, Cyrix- oder
- NexGen-Prozessoren (x86-Prozessoren). &os; l&auml;uft
- auch auf einigen Compaq-Maschinen mit Alpha-Prozessoren.
- &os; unterst&uuml;tzt IDE- oder ESDI-Laufwerke, verschiedene
- SCSI-Controller, PCMCIA-Karten, USB-Ger&auml;te, Netzwerkkarten
- und serielle Karten. Der Microchannel-Bus (MCA) von IBM wird
- ebenfalls unterst&uuml;tzt.</para>
-
- <para>Die Hardware-Notes, die mit jedem &os;-Release
- ausgeliefert werden, enthalten eine Liste lauff&auml;higer
- Hardware. Die Hardware-Notes befinden sich &uuml;blicherweise
- in der Datei <filename>HARDWARE.TXT</filename> im
- Wurzelverzeichnis der Distribution (CD-ROM oder FTP).
- Sie k&ouml;nnen die Hardware-Notes ebenfalls im
- Dokumentationsmen&uuml; von <application>sysinstall</application>
- oder auf der Webseite
- <ulink url="&url.base;/de/releases/index.html">Release Information</ulink>
- lesen.</para>
- </sect1>
-
<sect1 id="install-trouble">
<title>Fehlersuche</title>
@@ -5225,7 +5124,6 @@ Please press any key to reboot.</screen>
<surname>Vaschetto</surname>
<contrib>Beigetragen von </contrib>
</author>
- <!-- May 2001 -->
</authorgroup>
</sect1info>
@@ -5477,7 +5375,8 @@ Please press any key to reboot.</screen>
</table>
<table frame="none">
- <title>FreeBSD 5.<replaceable>X</replaceable>-ISO-Abbilder</title>
+ <title>FreeBSD 5.<replaceable>X</replaceable> sowie
+ 6.<replaceable>X</replaceable>-ISO-Abbilder</title>
<tgroup cols="2">
<thead>
@@ -5501,13 +5400,6 @@ Please press any key to reboot.</screen>
</row>
<row>
- <entry><filename><replaceable>Version</replaceable>-RELEASE-<replaceable>Architektur</replaceable>-miniinst.iso</filename></entry>
-
- <entry>Alles, was Sie f&uuml;r die Installation von
- von FreeBSD ben&ouml;tigen.</entry>
- </row>
-
- <row>
<entry><filename><replaceable>version</replaceable>-RELEASE-<replaceable>Architektur</replaceable>-disc1.iso</filename></entry>
<entry>Alles, was Sie f&uuml;r die Installation von
@@ -5529,18 +5421,14 @@ Please press any key to reboot.</screen>
</tgroup>
</table>
- <para>Sie ben&ouml;tigen nur ein Abbild der Abbilder
- <filename>mini.iso</filename> und
+ <para>Sie ben&ouml;tigen nur eines der beiden Abbilder
+ <filename>mini.iso</filename> (falls es f&uuml;r Ihre
+ &os;-Version verf&uuml;gbar ist) oder
<filename>disc1.iso</filename>. Laden Sie bitte nicht
beide Abbilder herunter, das <filename>disc1.iso</filename>-Abbild
enth&auml;lt alles, was das <filename>mini.iso</filename>-Abbild
enth&auml;lt.</para>
- <note>
- <para>Das miniinst-ISO-Abbild ist nur f&uuml;r &os;-Versionen
- vor 5.4-RELEASE verf&uuml;gbar.</para>
- </note>
-
<para>Benutzen Sie das <filename>miniinst.iso</filename>-Abbild,
wenn Sie eine preiswerte Internet-Anbindung besitzen.
Mit diesem Abbild k&ouml;nnen Sie &os; installieren.
diff --git a/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml b/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml
index 8979e5ba8e..c8c7cd10fd 100644
--- a/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml
+++ b/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml
@@ -3,8 +3,8 @@
The FreeBSD German Documentation Project
$FreeBSD$
- $FreeBSDde: de-docproj/books/handbook/mirrors/chapter.sgml,v 1.118 2006/12/05 10:35:07 jkois Exp $
- basiert auf: 1.421
+ $FreeBSDde: de-docproj/books/handbook/mirrors/chapter.sgml,v 1.119 2007/01/04 16:32:50 jkois Exp $
+ basiert auf: 1.422
-->
<appendix id="mirrors">
@@ -80,7 +80,7 @@
<listitem>
<address>
- <otheraddr>Hinner EDV</otheraddr>
+ <otheraddr>Dr. Hinner EDV</otheraddr>
<street>St. Augustinus-Str. 10</street>
<postcode>D-81825</postcode> <city>M&uuml;nchen</city>
<country>Germany</country>
diff --git a/de_DE.ISO8859-1/books/handbook/security/chapter.sgml b/de_DE.ISO8859-1/books/handbook/security/chapter.sgml
index f17c18e114..6d0ab3ccd2 100644
--- a/de_DE.ISO8859-1/books/handbook/security/chapter.sgml
+++ b/de_DE.ISO8859-1/books/handbook/security/chapter.sgml
@@ -3,8 +3,8 @@
The FreeBSD German Documentation Project
$FreeBSD$
- $FreeBSDde: de-docproj/books/handbook/security/chapter.sgml,v 1.149 2006/12/12 19:23:25 jkois Exp $
- basiert auf: 1.308
+ $FreeBSDde: de-docproj/books/handbook/security/chapter.sgml,v 1.152 2007/01/06 09:37:57 jkois Exp $
+ basiert auf: 1.311
-->
<chapter id="security">
diff --git a/de_DE.ISO8859-1/books/handbook/vinum/chapter.sgml b/de_DE.ISO8859-1/books/handbook/vinum/chapter.sgml
index a5ba3cc659..4de1a17434 100644
--- a/de_DE.ISO8859-1/books/handbook/vinum/chapter.sgml
+++ b/de_DE.ISO8859-1/books/handbook/vinum/chapter.sgml
@@ -1,31 +1,1619 @@
-<!--
- The FreeBSD Documentation Project
- The FreeBSD German Documentation Project
-
- $FreeBSD$
- $FreeBSDde: de-docproj/books/handbook/vinum/chapter.sgml,v 1.5 2004/08/22 17:13:30 mheinen Exp $
- basiert auf:
--->
-
-<chapter id="vinum-vinum">
-
- <title>Vinum (noch nicht &uuml;bersetzt)</title>
-
- <para>Dieses Kapitel ist noch nicht &uuml;bersetzt.
- Lesen Sie bitte <ulink
- url="&url.books.handbook.en;/vinum-vinum.html">
- das Original in englischer Sprache</ulink>. Wenn Sie helfen
- wollen, dieses Kapitel zu &uuml;bersetzen, senden Sie bitte
- eine E-Mail an die Mailingliste &a.de.translators;.</para>
-</chapter>
-
-<!--
- Local Variables:
- mode: sgml
- sgml-declaration: "../chapter.decl"
- sgml-indent-data: t
- sgml-omittag: nil
- sgml-always-quote-attributes: t
- sgml-parent-document: ("../book.sgml" "part" "chapter")
- End:
--->
+<!--
+ The Vinum Volume Manager
+ By Greg Lehey (grog at lemis dot com)
+
+ Added to the Handbook by Hiten Pandya <hmp@FreeBSD.org>
+ and Tom Rhodes <trhodes@FreeBSD.org>
+
+ The FreeBSD Documentation Project
+ The FreeBSD German Documentation Project
+
+ $FreeBSD$
+ $FreeBSDde: de-docproj/books/handbook/vinum/chapter.sgml,v 1.12 2007/01/06 10:14:54 jkois Exp $
+ basiert auf: 1.41
+-->
+
+<chapter id="vinum-vinum">
+ <chapterinfo>
+ <authorgroup>
+ <author>
+ <firstname>Greg</firstname>
+ <surname>Lehey</surname>
+ <contrib>Urspr&uuml;nglich geschrieben von </contrib>
+ </author>
+ </authorgroup>
+ <authorgroup>
+ <author>
+ <firstname>Johann</firstname>
+ <surname>Kois</surname>
+ <contrib>&Uuml;bersetzt von </contrib>
+ </author>
+ <author>
+ <firstname>Kay</firstname>
+ <surname>Abendroth</surname>
+ </author>
+ </authorgroup>
+ </chapterinfo>
+
+ <title>Der Vinum Volume Manager</title>
+
+ <sect1 id="vinum-synopsis">
+ <title>&Uuml;bersicht</title>
+
+
+ <para>Egal, &uuml;ber welche und wieviele Festplatten Ihr System
+ auch verf&uuml;gt, immer wieder werden Sie mit den folgenden
+ Problemen konfrontiert:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Ihre Platten sind zu klein.</para>
+ </listitem>
+
+ <listitem>
+ <para>Sie sind zu langsam.</para>
+ </listitem>
+
+ <listitem>
+ <para>Ihre Platten sind unzuverl&auml;ssig.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Eine M&ouml;glichkeit, derartige Probleme zu
+ l&ouml;sen, ist der Einsatz von mehreren, manchmal auch
+ redundant ausgelegten Platten.</para>
+
+ <para>Parallel zur Unterst&uuml;tzung verschiedener
+ Erweiterungskarten und Controller f&uuml;r Hardware-RAID-Systeme
+ enth&auml;lt das FreeBSD-Basissystem auch den Vinum
+ Volume Manager, einen Blockger&auml;tetreiber, der die
+ Einrichtung virtueller Platten unterst&uuml;tzt.</para>
+
+ <para>Vinum bietet Ihnen gr&ouml;&szlig;ere Flexibilit&auml;t,
+ Leistung und Zuverl&auml;ssigkeit als die klassische
+ Datenspeicherung auf einzelne Festplatten. Dazu unterst&uuml;tzt
+ Vinum RAID-0, RAID-1 und RAID-5 (sowohl einzeln als auch in
+ Kombination).</para>
+
+ <para>Dieses Kapitel bietet Ihnen einen &Uuml;berblick &uuml;ber
+ potentielle Probleme der klassischen Datenspeicherung auf
+ Festplatten sowie eine Einf&uuml;hrung in den Vinum
+ Volume Manager.</para>
+
+ <note>
+ <para>F&uuml;r FreeBSD&nbsp;5.X wurde Vinum &uuml;berarbeitet und
+ an die GEOM-Architektur (<xref linkend="GEOM">) angepasst,
+ wobei die urspr&uuml;nglichen Ideeen und Begriffe sowie die
+ auf der Platte ben&ouml;tigten Metadaten beibehalten wurden.
+ Die &uuml;berarbeitete Version wird als
+ <emphasis>gvinum</emphasis> (f&uuml;r
+ <emphasis>GEOM-Vinum</emphasis>) bezeichnet. Die folgenden
+ Ausf&uuml;hrungen verwenden den Begriff
+ <emphasis>Vinum</emphasis> als abstrakten Namen, unabh&auml;ngig
+ davon, welche Variante implementiert wurde. S&auml;mtliche
+ Befehlsaufrufe erfolgen &uuml;ber <command>gvinum</command>,
+ welches nun das Kernelmodul <filename>geom_vinum.ko</filename>
+ (statt <filename>vinum.ko</filename>) ben&ouml;tigt. Analog
+ finden sich alle Ger&auml;tedateien nun unter
+ <filename>/dev/gvinum</filename> statt unter
+ <filename>/dev/vinum</filename>. Seit FreeBSD 6.x ist die
+ alte Vinum-Implementierung nicht mehr im Basissystem
+ enthalten.</para>
+ </note>
+ </sect1>
+
+ <sect1 id="vinum-intro">
+ <title>Ihre Platten sind zu klein.</title>
+
+ <indexterm><primary>Vinum</primary></indexterm>
+ <indexterm>
+ <primary>RAID</primary>
+ <secondary>Software</secondary>
+ </indexterm>
+
+ <para>Bei <emphasis>Vinum</emphasis> handelt es sich um einen
+ sogenannten <emphasis>Volume Manager</emphasis>, einen
+ virtuellen Plattentreiber, der zur L&ouml;sung der im
+ letzten Abschnitt genannten Probleme entwickelt wurde.
+ Um diese Probleme zu l&ouml;sen, wurden verschiedene
+ Techniken vorgeschlagen und auch implementiert.</para>
+
+ <para>Festplatten werden zwar immer gr&ouml;&szlig;er, parallel
+ dazu steigt aber auch die Gr&ouml;&szlig;e der zu speichernden
+ Daten an. Es kann also nach wie vor vorkommen, dass Sie ein
+ Dateisystem ben&ouml;tigen, welches die Gr&ouml;&szlig;e Ihrer
+ Platten &uuml;bersteigt. Zwar ist dieses Problem nicht mehr
+ so akut wie noch vor einigen Jahren, aber es existiert nach
+ wie vor. Einige Systeme l&ouml;sen dieses Problem durch die
+ Erzeugung eines abstrakten Ger&auml;tes, das seine Daten auf
+ mehreren Platten speichert.</para>
+ </sect1>
+
+ <sect1 id="vinum-access-bottlenecks">
+ <title>M&ouml;gliche Engp&auml;sse</title>
+
+ <para>Moderne Systeme m&uuml;ssen h&auml;ufig parallel auf
+ Daten zugreifen. Gro&szlig;e FTP- und HTTP-Server
+ k&ouml;nnen beispielsweise Tausende von parallelen Sitzungen
+ verwalten und haben mehrere 100&nbsp;MBit/s-Verbindungen
+ zur Au&szlig;enwelt. Diese Bandbreite &uuml;berschreitet
+ die durchschnittliche Transferrate der meisten Platten
+ bei weitem.</para>
+
+ <para>Aktuelle Plattenlaufwerke k&ouml;nnen Daten mit bis zu
+ 70&nbsp;MB/s sequentiell &uuml;bertragen, wobei dieser Wert
+ in einer Umgebung, in der viele unabh&auml;ngige Prozesse auf
+ eine gemeinsame Platte zugreifen, die jeweils nur einen
+ Bruchteil dieses Wertes erreichen, von geringer Aussagekraft
+ ist. In solchen F&auml;llen ist es interessanter, das Problem
+ vom Blickwinkel des Platten-Subsystems aus zu betrachten.
+ Der wichtigste Parameter ist dabei die Last, die eine
+ &Uuml;bertragung auf dem Subsystem verursacht. Unter Last
+ versteht man dabei die Zeit, in der die Platte mit der
+ &Uuml;bertragung der Daten besch&auml;ftigt ist.</para>
+
+ <para>Bei jedem Plattenzugriff muss das Laufwerk zuerst die
+ K&ouml;pfe positionieren und auf den ersten Sektor warten, bis
+ er den Lesekopf passiert. Dann wird die &Uuml;bertragung
+ gestartet. Diese Aktionen k&ouml;nnen als atomar betrachtet
+ werden, da es keinen Sinn macht, diese zu unterbrechen.</para>
+
+ <para><anchor id="vinum-latency">Nehmen wir beispielsweise an,
+ dass wir 10&nbsp;kB transferieren wollen. Aktuelle
+ hochperformante Platten k&ouml;nnen die K&ouml;pfe im Durchschnitt
+ in 3,5&nbsp;ms positionieren und drehen sich mit maximal
+ 15.000&nbsp;U/min. Daher betr&auml;gt die durchschnittliche
+ Rotationslatenz (eine halbe Umdrehung) 2&nbsp;ms.
+ Bei einer Transferrate von 70&nbsp;MB/s dauert die eigentliche
+ &Uuml;bertragung von 10&nbsp;kB etwa 150&nbsp;&mu;s, fast
+ nichts im Vergleich zur Positionierungszeit. In einem solchen
+ Fall betr&auml;gt die effektive Transferrate nur etwas mehr
+ als 1&nbsp;MB/s. Die Tranferrate ist also stark von der
+ Gr&ouml;&szlig;e der zu tranferierenden Daten
+ abh&auml;ngig.</para>
+
+ <para>Die traditionelle und offensichtliche L&ouml;sung zur
+ Beseitigung dieses Flaschenhalses sind <quote>mehr
+ Spindeln</quote>. Statt einer einzigen gro&szlig;en Platte werden
+ mehrere kleinere Platten mit demselben Gesamtspeicherplatz
+ benutzt. Jede Platte ist in der Lage, unabh&auml;ngig zu
+ positionieren und zu transferieren, weshalb der effektive
+ Durchsatz um einen Faktor nahe der Zahl der eingesetzten Platten
+ steigt.</para>
+
+ <para>Obwohl die Platten Daten parallel transferieren k&ouml;nnen,
+ ist es nicht m&ouml;glich, Anfragen gleichm&auml;&szlig;ig auf
+ die einzelnen Platten zu verteilen. Daher wird die Last auf
+ bestimmten Laufwerken immer h&ouml;her sein als auf anderen
+ Laufwerken. Daraus ergibt sich auch, dass die exakte Verbesserung
+ des Datendurchsatzes immer kleiner ist als die Anzahl der
+ involvierten Platten.</para>
+
+ <indexterm>
+ <primary>Plattenkonkatenation</primary>
+ </indexterm>
+ <indexterm>
+ <primary>Vinum</primary>
+ <secondary>Konkatenation</secondary>
+ </indexterm>
+
+ <para>Die gleichm&auml;&szlig;ige Verteilung der Last auf die einzelnen
+ Platten ist stark abh&auml;ngig von der Art, wie die Daten auf die
+ Laufwerke aufgeteilt werden. In den folgenden Ausf&uuml;hrungen
+ wird eine Platte als eine gro&szlig;e Anzahl von Datensektoren
+ dargestellt, die durch Zahlen adressierbar sind (&auml;hnlich
+ den Seiten eines Buches). Die naheliegendste Methode ist es,
+ die virtuelle Platte (wieder analog den Seiten eines Buches)
+ in Gruppen aufeinanderfolgender Sektoren zu unterteilen, die
+ jeweils der Gr&ouml;&szlig;e der einzelnen physischen Platten
+ entsprechen. Diese Vorgehensweise wird als
+ <emphasis>Konkatenation</emphasis> bezeichnet und hat den
+ Vorteil, dass die Platten keine spezielle
+ Gr&ouml;&szlig;enbeziehung haben m&uuml;ssen. Sie funktioniert
+ gut, solange der Zugriff gleichm&auml;&szlig;ig auf den
+ Adressraum der virtuellen Platte verteilt wird. Wenn sich der
+ Zugriff allerdings auf einen kleinen Bereich konzentriert, ist die
+ Verbesserung vernachl&auml;ssigbar klein.
+ <xref linkend="vinum-concat"> verdeutlicht die Verteilung der
+ Speichereinheiten in einer konkatenierten Anordnung.</para>
+
+ <para>
+ <figure id="vinum-concat">
+ <title>Konkatenierte Anordnung</title>
+ <graphic fileref="vinum/vinum-concat">
+ </figure>
+ </para>
+
+ <indexterm>
+ <primary>Striping von Platten</primary>
+ </indexterm>
+ <indexterm>
+ <primary>Vinum</primary>
+ <secondary>Striping</secondary>
+ </indexterm>
+ <indexterm>
+ <primary>RAID</primary>
+ </indexterm>
+
+ <para>Ein alternatives Mapping unterteilt den Adressraum in
+ kleinere, gleich gro&szlig;e Komponenten und speichert diese
+ sequentiell auf verschiedenen Ger&auml;ten. Zum Beispiel werden
+ die ersten 256 Sektoren auf der ersten Platte, die n&auml;chsten
+ 256 Sektoren auf der zweiten Platte gespeichert und so
+ weiter. Nachdem die letzte Platte beschrieben wurde, wird dieser
+ Vorgang solange wiederholt, bis die Platten voll sind. Dieses
+ Mapping nennt man <emphasis>Striping</emphasis> oder
+ <acronym>RAID-0</acronym>.
+
+ <footnote>
+ <para><acronym>RAID</acronym> steht f&uuml;r <emphasis>Redundant
+ Array of Inexpensive Disks</emphasis> und bietet verschiedene
+ Formen der Fehlertorleranz, obwohl der letzte Begriff etwas
+ irref&uuml;hrend ist, da RAID keine Redundanz bietet.</para>
+ </footnote>
+
+ <para>Striping erfordert einen etwas gr&ouml;&szlig;eren Aufwand,
+ um die Daten zu
+ lokalisieren, und kann zus&auml;tzliche E/A-Last verursachen,
+ wenn eine &Uuml;bertragung &uuml;ber mehrere Platten verteilt
+ ist. Auf der anderen Seite erlaubt es aber eine
+ gleichm&auml;&szlig;igere Verteilung der Last auf die einzelnen
+ Platten. <xref linkend="vinum-striped"> veranschaulicht
+ die Abfolge, in der Speichereinheiten in einer striped-Anordnung
+ alloziert werden.</para>
+
+ <para>
+ <figure id="vinum-striped">
+ <title>Striped-Anordnung</title>
+ <graphic fileref="vinum/vinum-striped">
+ </figure>
+ </para>
+ </sect1>
+
+ <sect1 id="vinum-data-integrity">
+ <title>Datenintegrit&auml;t</title>
+
+ <para>Das dritte Problem, welches aktuelle Platten haben, ist ihre
+ Unzuverl&auml;ssigkeit. Obwohl sich die Zuverl&auml;ssigkeit
+ von Festplatten in den letzten Jahren stark verbessert hat,
+ handelt es sich bei ihnen nach wie vor um die Komponente eines
+ Servers, die am ehesten ausf&auml;llt. F&auml;llt eine
+ Festplatte aus, k&ouml;nnen die Folgen katastrophal sein: Es
+ kann Tage dauern, bis eine Platte ersetzt und alle Daten
+ wiederhergestellt sind.</para>
+
+ <indexterm>
+ <primary>disk mirroring</primary>
+ </indexterm>
+ <indexterm>
+ <primary>Vinum</primary>
+ <secondary>Spiegelung</secondary>
+ </indexterm>
+ <indexterm>
+ <primary>RAID-1</primary>
+ </indexterm>
+
+ <para>Die traditionelle Art, dieses Problem anzugehen, war es,
+ Daten zu <emphasis>spiegeln</emphasis>, also zwei Kopien der
+ Daten auf getrennten Platten zu verwahren. Diese Technik wird
+ auch als <acronym>RAID Level 1</acronym> oder
+ <acronym>RAID-1</acronym> bezeichnet. Jeder Schreibzugriff
+ findet auf beiden Datentr&auml;gern statt. Ein Lesezugriff
+ kann daher von beiden Laufwerken erfolgen, sodass beim Ausfall
+ eines Laufwerks die Daten immer noch auf dem anderen
+ Laufwerk verf&uuml;gbar sind.</para>
+
+ <para>Spiegeln verursacht allerdings zwei Probleme:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Es verursacht h&ouml;here Kosten, da doppelt so viel
+ Plattenspeicher wie bei einer nicht-redundanten
+ L&ouml;sung ben&ouml;tigt wird.</para>
+ </listitem>
+
+ <listitem>
+ <para>Die Gesamtleistung des Systems sinkt, da
+ Schreibzugriffe auf beiden Laufwerken ausgef&uuml;hrt
+ werden m&uuml;ssen, daher wird im Vergleich zu einem
+ nicht gespiegelten Datentr&auml;ger die doppelte
+ Bandbreite ben&ouml;tigt. Lesezugriffe hingegen sind
+ davon nicht betroffen, es sieht sogar so aus, als
+ w&uuml;rden diese schneller ausgef&uuml;hrt.</para>
+ </listitem>
+ </itemizedlist>
+
+ <indexterm><primary>RAID-5</primary></indexterm>
+
+ <para>Eine alternative L&ouml;sung ist
+ <emphasis>Parity</emphasis>, das in den
+ <acronym>RAID</acronym>-Leveln 2, 3, 4 und 5
+ implementiert ist. Von diesen ist <acronym>RAID-5</acronym>
+ der interessanteste. So wie in VINUM implementiert, ist es
+ eine Variante einer gestripten Anordung, welche einen Block
+ jedes Stripes als Parit&auml;tsblock f&uuml;r die anderen
+ Bl&ouml;cke verwendet. Wie in <acronym>RAID-5</acronym>
+ vorgeschrieben, ist die Position dieses Parit&auml;tsblockes
+ auf jedem Stripe unterschiedlich. Die Nummern in den
+ Datenbl&ouml;cken geben die relativen Blocknummern an.</para>
+
+ <para>
+ <figure id="vinum-raid5-org">
+ <title>RAID-5 Aufbau</title>
+ <graphic fileref="vinum/vinum-raid5-org">
+ </figure>
+ </para>
+
+ <para>Im Vergleich zur Spiegelung hat RAID-5 den Vorteil, dass
+ es signifikant weniger Speicherplatz ben&ouml;tigt.
+ Lesezugriffe sind vergleichbar schnell mit jenen bei einem
+ Striped-Aufbau, aber Schreibzugriffe sind deutlich langsamer
+ (etwa 25% der Lesegeschwindigkeit). Wenn eine Platte
+ ausf&auml;llt, kann das Array in einem "schwachen" Modus
+ weiterarbeiten: Ein Lesezugriff auf eine der &uuml;brigen
+ erreichbaren Platten wird normal ausgef&uuml;hrt, ein
+ Lesezugriff auf die ausgefallene Platte muss aber
+ zun&auml;chst mit dem zugeh&ouml;rigen Block aller
+ verbleibender Platten r&uuml;ckberechnet werden.</para>
+ </sect1>
+
+ <sect1 id="vinum-objects">
+ <title>Vinum-Objekte</title>
+ <para>Um die in den vorigen Abschnitte besprochenen Probleme zu
+ l&ouml;sen, verwendet Vinum eine vierstufige
+ Objekthierarchie:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Das auff&auml;lligste Objekt ist die virtuelle Platte,
+ die <emphasis>Volume</emphasis> genannt wird. Volumes
+ haben im Wesentlichen die gleichen Eigenschaften wie ein
+ &unix;-Laufwerk, obwohl es ein paar kleine Unterschiede
+ gibt. So existieren f&uuml;r Volumes beispielsweise keine
+ Gr&ouml;&szlig;enbeschr&auml;nkungen.</para>
+ </listitem>
+
+ <listitem>
+ <para>Volumes bestehen aus einem oder mehreren
+ <emphasis>Plexus</emphasis>,
+ von denen jeder den gesamten Adressraum eines
+ Datentr&auml;gers repr&auml;sentiert. Diese Hierarchieebene
+ ist f&uuml;r die ben&ouml;tigte Redundanz der Daten
+ erforderlich. Stellen Sie sich die Plexus als
+ eigenst&auml;ndige Platten in einem gespiegelten
+ Array vor, von denen jede die gleichen Daten
+ enth&auml;lt.</para>
+ </listitem>
+
+ <listitem>
+ <para>Da Vinum im &unix;-Plattenspeicher-Framework arbeitet,
+ w&auml;re es m&ouml;glich, als Grundbaustein f&uuml;r
+ Multiplatten-Plexus &unix;-Partitionen zu verwenden. In
+ der Praxis ist dieser Ansatz aber zu unflexibel, da
+ &unix;-Platten nur eine begrenzte Anzahl von Partitionen
+ haben k&ouml;nnen. Daher unterteilt Vinum stattdessen
+ eine einzige &unix;-Partition (die
+ <emphasis>Platte</emphasis>) in zusammenh&auml;ngende
+ Bereiche, die als <emphasis>Subdisks</emphasis> bezeichnet
+ werden und als Grundbausteine f&uuml;r einen Plexus
+ benutzt werden.</para>
+ </listitem>
+
+ <listitem>
+ <para>Subdisks befinden sich auf
+ Vinum-<emphasis>Platten</emphasis>, eigentlich
+ &unix;-Partitionen. Vinum-Platten k&ouml;nnen eine
+ beliebige Anzahl von Subdisks haben und den gesamten
+ Speicher der Platte mit Ausnahme eines kleinen Bereiches
+ am Anfang der Platte (welcher zur Speicherung von
+ Konfigurations- und Statusinformationen verwenden wird)
+ verwenden.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Der folgende Abschnitt beschreibt, wie diese Objekte
+ die von Vinum ben&ouml;tigten Funktionen zur
+ Verf&uuml;gung stellen.</para>
+
+ <sect2>
+ <title>&Uuml;berlegungungen zur Gr&ouml;&szlig;e eines Volumes</title>
+
+ <para>Plexus k&ouml;nnen mehrere Subdisks beinhalten, die
+ &uuml;ber alle Platten der Vinum-Konfiguration verteilt sind.
+ Daraus folgt, dass die Gr&ouml;&szlig;e einer Platte nicht die
+ Gr&ouml;&szlig;e eines Plexus (und damit eines Volumes)
+ limitiert.</para>
+ </sect2>
+
+ <sect2>
+ <title>Redundante Datenspeicherung</title>
+
+ <para>Vinum implementiert die Datenspiegelung, indem es ein
+ Volume auf mehrere Plexus verteilt. Jeder Plexus ist
+ dabei die Repr&auml;sentation der Daten eines Volumes.
+ Ein Volume kann aus bis zu acht Plexus bestehen.</para>
+
+ <para>Obwohl ein Plexus die gesamten Daten eines Volumes
+ repr&auml;sentiert, ist es m&ouml;glich, dass Teile der
+ Repr&auml;sentation physisch fehlen, entweder aufgrund des
+ Designs (etwa durch nicht definierte Subdisks f&uuml;r Teile
+ des Plexus) oder durch Zufall (als ein Ergebnis eines
+ Plattenfehlers). Solange wenigstens ein Plexus die gesamten
+ Daten f&uuml;r den kompletten Adressbereich des Volumes zur
+ Verf&uuml;gung stellen kann, ist das Volume voll
+ funktionsf&auml;hig.</para>
+ </sect2>
+
+ <sect2>
+ <title>&Uuml;berlegungen zur Leistung</title>
+
+ <para>Sowohl Konkatenation als auch Striping werden von Vinum
+ auf der Plexus-Ebene realisiert:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Ein <emphasis>konkatenierter Plexus</emphasis> benutzt
+ abwechselnd den Adressraum jeder Subdisk.</para>
+ </listitem>
+
+ <listitem>
+ <para>Ein <emphasis>gestripter Plexus</emphasis> striped die
+ Daten &uuml;ber jede Subdisk. Die Subdisks m&uuml;ssen alle
+ die gleiche Gr&ouml;&szlig;e haben, und es muss mindestens
+ zwei Subdisks in Reihenfolge geben, um ihn von einem
+ konkatenierten Plexus unterscheiden zu k&ouml;nnen.</para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2>
+ <title>Wie ist ein Plexus aufgebaut?</title>
+
+ <para>Die Version von Vinum, welche von FreeBSD-&rel.current;
+ bereitgestellt wird, implementiert zwei Arten von Plexus:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Konkatenierte Plexus sind die flexibelsten: Sie
+ k&ouml;nnen aus einer beliebigen Anzahl von Subdisks
+ unterschiedlicher Gr&ouml;&szlig;e bestehen. Der Plexus
+ kann erweitert werden, indem man zus&auml;tzliche Subdisks
+ hinzuf&uuml;gt. Sie brauchen weniger
+ <acronym>CPU</acronym>-Zeit als gestripte Plexus, obwohl
+ der Unterschied des <acronym>CPU</acronym>-Overheads nicht
+ messbar ist. Auf der anderen Seite sind sie aber sehr
+ anf&auml;llig f&uuml;r das Entstehen von "hot spots", wobei
+ eine Platte sehr aktiv ist, andere hingegen nahezu ungenutzt
+ sind.</para>
+ </listitem>
+
+ <listitem>
+ <para>Der gr&ouml;&szlig;te Vorteil eines gestripten
+ Plexus (<acronym>RAID-0</acronym>) ist die Verringerung von
+ "hot spots". Dies wird durch die Auswahl eines Stripes
+ optimaler Gr&ouml;&szlig;e (etwa 256&nbsp;kB) erreicht,
+ wodurch die Last gleichm&auml;&szlig;ig auf die Platten
+ verteilt werden kann. Nachteile dieser Vorgehensweise sind
+ ein (geringf&uuml;gig) komplexerer Code sowie einige
+ Restriktionen f&uuml;r die Subdisks: Diese m&uuml;ssen alle
+ die gleiche Gr&ouml;&szlig;e haben, und das Erweitern eines
+ Plexus durch das Hinzuf&uuml;gen neuer Subdisks ist so
+ kompliziert, dass es von Vinum derzeit nicht
+ unterst&uuml;tzt wird. Vinum fordert noch eine weitere
+ triviale Beschr&auml;nkung: Ein gestripter Plexus muss
+ aus mindestens zwei Subdisks bestehen, da er ansonsten nicht
+ von einem konkatenierten Plexus unterscheidbar ist.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para><xref linkend="vinum-comparison"> fasst die Vor- und
+ Nachteile jedes Plexus-Aufbaus zusammen.</para>
+
+ <table id="vinum-comparison" frame="none">
+ <title>Vinum-Plexus - Aufbau</title>
+
+ <tgroup cols="5">
+ <thead>
+ <row>
+ <entry>Plexus-Typ</entry>
+ <entry>Minimum an Subdisks?</entry>
+ <entry>Kann Subdisks hinzuf&uuml;gen?</entry>
+ <entry>M&uuml;ssen die gleiche Gr&ouml;&szlig;e
+ haben</entry>
+ <entry>Applikation</entry>
+ </row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>konkateniert</entry>
+ <entry>1</entry>
+ <entry>ja</entry>
+ <entry>nein</entry>
+ <entry>Gro&szlig;er Datenspeicher mit maximaler
+ Platzierungsflexibilit&auml;t und moderater
+ Leistung</entry>
+ </row>
+
+ <row>
+ <entry>gestriped</entry>
+ <entry>2</entry>
+ <entry>nein</entry>
+ <entry>ja</entry>
+ <entry>Hohe Leistung in Kombination mit
+ gleichzeitigem Zugriff</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </sect2>
+ </sect1>
+
+ <sect1 id="vinum-examples">
+ <title>Einige Beispiele</title>
+
+ <para>Vinum verwaltet eine
+ <emphasis>Konfigurationsdatenbank</emphasis> f&uuml;r alle
+ einem individuellen System bekannten Objekte. Zu Beginn
+ erzeugt ein Benutzer mit &man.gvinum.8;
+ eine Konfigurationsdatenbank aus einer oder mehreren
+ Konfigurationsdateien. Vinum speichert danach eine Kopie der
+ Konfigurationsdatenbank in jedem von ihm kontrollierten
+ Slice (von Vinum als <emphasis>Device</emphasis>
+ bezeichnet). Da die Datenbank bei jedem Statuswechsel
+ aktualisiert wird, kann nach einem Neustart der Status
+ jedes Vinum-Objekts exakt wiederhergestellt werden.</para>
+
+ <sect2>
+ <title>Die Konfigurationsdatei</title>
+
+ <para>Die Konfigurationsdatei beschreibt individuelle
+ Vinum-Objekte. Die Beschreibung eines einfachen Volumes
+ k&ouml;nnte beispielsweise so aussehen:</para>
+
+ <programlisting>
+ drive a device /dev/da3h
+ volume myvol
+ plex org concat
+ sd length 512m drive a</programlisting>
+
+ <para>Diese Datei beschreibt vier Vinum-Objekte:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Die <emphasis>drive</emphasis>-Zeile beschreibt eine
+ Plattenpartition (<emphasis>drive</emphasis>) sowie ihre
+ Position in Bezug auf die darunter liegende Hardware.
+ Die Partition hat dabei den symbolischen Namen
+ <emphasis>a</emphasis>. Diese Trennung von symbolischen
+ Namen und Ger&auml;tenamen erlaubt es, die Position von
+ Platten zu &auml;ndern, ohne dass es zu Problemen
+ kommt.</para>
+ </listitem>
+
+ <listitem>
+ <para>Die <emphasis>volume</emphasis>-Zeile beschreibt ein
+ Volume. Daf&uuml;r wird nur ein einziges Attribut, der
+ Name des Volumes, ben&ouml;tigt. In unserem Fall hat das
+ Volume den Namen <emphasis>myvol</emphasis>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Die <emphasis>plex</emphasis>-Zeile definiert einen
+ Plexus. Auch hier wird nur ein Parameter, und zwar die
+ Art des Aufbau, ben&ouml;tigt (in unserem Fall
+ <emphasis>concat</emphasis>). Es wird kein Name
+ ben&ouml;tigt, das System generiert automatisch einen
+ Namen aus dem Volume-Namen und dem Suffix
+ <emphasis>.p</emphasis><emphasis>x</emphasis> wobei
+ <emphasis>x</emphasis> die Nummer des Plexus innerhalb
+ des Volumes angibt. So wird dieser Plexus den Namen
+ <emphasis>myvol.p0</emphasis> erhalten.</para>
+ </listitem>
+
+ <listitem>
+ <para>Die <emphasis>sd</emphasis>-Zeile beschreibt eine
+ Subdisk. Um eine Subdisk einzurichten, m&uuml;ssen Sie
+ zumindest den Namen der Platte, auf der Sie die
+ Subdisk anlegen wollen, sowie die Gr&ouml;&szlig;e der
+ Subdisk angeben. Analog zur Definition eines Plexus wird
+ auch hier kein Name ben&ouml;tigt: Das System weist
+ automatisch Namen zu, die aus dem Namen des Plexus und
+ dem Suffix <emphasis>.s</emphasis><emphasis>x</emphasis>
+ gebildet werden, wobei <emphasis>x</emphasis> die Nummer
+ der Subdisk innerhalb des Plexus ist. Folglich gibt
+ Vinum dieser Subdisk den Namen
+ <emphasis>myvol.p0.s0</emphasis>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Nach dem Verarbeiten dieser Datei erzeugt &man.gvinum.8;
+ die folgende Ausgabe:</para>
+
+ <programlisting width="97">
+ &prompt.root; gvinum -&gt; <userinput>create config1</userinput>
+ Configuration summary
+ Drives: 1 (4 configured)
+ Volumes: 1 (4 configured)
+ Plexes: 1 (8 configured)
+ Subdisks: 1 (16 configured)
+
+ D a State: up Device /dev/da3h Avail: 2061/2573 MB (80%)
+
+ V myvol State: up Plexes: 1 Size: 512 MB
+
+ P myvol.p0 C State: up Subdisks: 1 Size: 512 MB
+
+ S myvol.p0.s0 State: up PO: 0 B Size: 512 MB</programlisting>
+
+ <para>Diese Ausgabe entspricht dem verk&uuml;rzten
+ Ausgabeformat von &man.gvinum.8; und wird in
+ <xref linkend="vinum-simple-vol"> grafisch dargestellt.</para>
+
+ <para>
+ <figure id="vinum-simple-vol">
+ <title>Ein einfaches Vinum-Volume</title>
+ <graphic fileref="vinum/vinum-simple-vol">
+ </figure>
+ </para>
+
+ <para>Dieses und die folgenden Beispiele zeigen jeweils ein
+ Volume, welches die Plexus enth&auml;lt, die wiederum die
+ Subdisk enthalten. In diesem trivialen Beispiel enth&auml;lt
+ das Volume nur einen Plexus, der wiederum nur aus einer
+ Subdisk besteht.</para>
+
+ <para>Eine solche Konfiguration h&auml;tte allerdings keinen
+ Vorteil gegen&uuml;ber einer konventionellen Plattenpartion.
+ Das Volume enth&auml;lt nur einen einzigen Plexus, daher
+ gibt es keine redundante Datenspeicherung. Da der Plexus
+ au&szlig;erdem nur eine einzige Subdisk enth&auml;lt,
+ unterscheidet sich auch die Speicherzuweisung nicht von der
+ einer konventionellen Plattenpartition. Die folgenden
+ Abschnitte beschreiben daher verschiedene interessantere
+ Konfigurationen.</para>
+ </sect2>
+
+ <sect2>
+ <title>Verbesserte Ausfallsicherheit durch Spiegelung</title>
+
+ <para>Die Ausfallsicherheit eines Volumes kann durch
+ Spiegelung der Daten erh&ouml;ht werden. Beim Anlegen eines
+ gespiegelten Volumes ist es wichtig, die Subdisks jedes
+ Plexus auf verschiedene Platten zu verteilen, damit ein
+ Plattenausfall nicht beide Plexus unbrauchbar macht. Die
+ folgende Konfiguration spiegelt ein Volume:</para>
+
+ <programlisting>
+ drive b device /dev/da4h
+ volume mirror
+ plex org concat
+ sd length 512m drive a
+ plex org concat
+ sd length 512m drive b</programlisting>
+
+ <para>Bei diesem Beispiel war es nicht n&ouml;tig, noch einmal
+ eine Platte <emphasis>a</emphasis> zu spezifizieren, da
+ Vinum die &Uuml;bersicht &uuml;ber alle Objekte und seine
+ Konfigurationsdatenbank beh&auml;lt. Nach dem Abarbeiten
+ dieser Definition sieht die Konfiguration wie folgt aus:</para>
+
+ <programlisting width="97">
+ Drives: 2 (4 configured)
+ Volumes: 2 (4 configured)
+ Plexes: 3 (8 configured)
+ Subdisks: 3 (16 configured)
+
+ D a State: up Device /dev/da3h Avail: 1549/2573 MB (60%)
+ D b State: up Device /dev/da4h Avail: 2061/2573 MB (80%)
+
+ V myvol State: up Plexes: 1 Size: 512 MB
+ V mirror State: up Plexes: 2 Size: 512 MB
+
+ P myvol.p0 C State: up Subdisks: 1 Size: 512 MB
+ P mirror.p0 C State: up Subdisks: 1 Size: 512 MB
+ P mirror.p1 C State: initializing Subdisks: 1 Size: 512 MB
+
+ S myvol.p0.s0 State: up PO: 0 B Size: 512 MB
+ S mirror.p0.s0 State: up PO: 0 B Size: 512 MB
+ S mirror.p1.s0 State: empty PO: 0 B Size: 512 MB</programlisting>
+
+ <para><xref linkend="vinum-mirrored-vol"> stellt diese Struktur
+ grafisch dar.</para>
+
+ <para>
+ <figure id="vinum-mirrored-vol">
+ <title>Ein gespiegeltes Vinum Volume</title>
+ <graphic fileref="vinum/vinum-mirrored-vol">
+ </figure>
+ </para>
+
+ <para>In diesem Beispiel enth&auml;lt jeder Plexus die vollen
+ 512&nbsp;MB des Adressraumes. Wie im vorangegangenen Beispiel
+ enth&auml;lt jeder Plexus nur eine Subdisk.</para>
+ </sect2>
+
+ <sect2>
+ <title>Die Leistung optimieren</title>
+
+ <para>Das gespiegelte Volume des letzten Beispieles ist
+ resistenter gegen&uuml;ber Fehlern als ein ungespiegeltes
+ Volume, seine Leistung ist hingegen schlechter, da jeder
+ Schreibzugriff auf das Volume einen Schreibzugriff auf beide
+ Platten erfordert und damit mehr der insgesamt verf&uuml;gbaren
+ Datentransferrate ben&ouml;tigt. Steht also die optimale
+ Leistung im Vordergrund, muss anders vorgegangen werden:
+ Statt alle Daten zu spiegeln, werden die Daten &uuml;ber
+ so viele Platten wie m&ouml;glich gestriped. Die folgende
+ Konfiguration zeigt ein Volume
+ mit einem &uuml;ber vier Platten hinwegreichenden Plexus:</para>
+
+ <programlisting>
+ drive c device /dev/da5h
+ drive d device /dev/da6h
+ volume stripe
+ plex org striped 512k
+ sd length 128m drive a
+ sd length 128m drive b
+ sd length 128m drive c
+ sd length 128m drive d</programlisting>
+
+ <para>Wie zuvor ist es nicht n&ouml;tig, die Platten zu
+ definieren, die Vinum schon bekannt sind. Nach dem Abarbeiten
+ dieser Definition sieht die Konfiguration wie folgt aus:</para>
+
+ <programlisting width="92">
+ Drives: 4 (4 configured)
+ Volumes: 3 (4 configured)
+ Plexes: 4 (8 configured)
+ Subdisks: 7 (16 configured)
+
+ D a State: up Device /dev/da3h Avail: 1421/2573 MB (55%)
+ D b State: up Device /dev/da4h Avail: 1933/2573 MB (75%)
+ D c State: up Device /dev/da5h Avail: 2445/2573 MB (95%)
+ D d State: up Device /dev/da6h Avail: 2445/2573 MB (95%)
+
+ V myvol State: up Plexes: 1 Size: 512 MB
+ V mirror State: up Plexes: 2 Size: 512 MB
+ V striped State: up Plexes: 1 Size: 512 MB
+
+ P myvol.p0 C State: up Subdisks: 1 Size: 512 MB
+ P mirror.p0 C State: up Subdisks: 1 Size: 512 MB
+ P mirror.p1 C State: initializing Subdisks: 1 Size: 512 MB
+ P striped.p1 State: up Subdisks: 1 Size: 512 MB
+
+ S myvol.p0.s0 State: up PO: 0 B Size: 512 MB
+ S mirror.p0.s0 State: up PO: 0 B Size: 512 MB
+ S mirror.p1.s0 State: empty PO: 0 B Size: 512 MB
+ S striped.p0.s0 State: up PO: 0 B Size: 128 MB
+ S striped.p0.s1 State: up PO: 512 kB Size: 128 MB
+ S striped.p0.s2 State: up PO: 1024 kB Size: 128 MB
+ S striped.p0.s3 State: up PO: 1536 kB Size: 128 MB</programlisting>
+
+ <para>
+ <figure id="vinum-striped-vol">
+ <title>Ein Striped Vinum Volume</title>
+ <graphic fileref="vinum/vinum-striped-vol">
+ </figure>
+ </para>
+
+ <para>Dieses Volume wird in <xref linkend="vinum-striped-vol">
+ dargestellt. Die Schattierung der Stripes zeigt die Position
+ innerhalb des Plexus-Adressraumes an. Die hellsten Stripes
+ kommen zuerst, die dunkelsten zuletzt.</para>
+ </sect2>
+
+ <sect2>
+ <title>Ausfallsicherheit und Leistung</title>
+
+ <para><anchor id="vinum-resilience">Mit entsprechender Hardware
+ ist es m&ouml;glich, Volumes zu bauen, welche gegen&uuml;ber
+ Standard-&unix;-Partitionen beides, n&auml;mlich erh&ouml;hte
+ Ausfallsicherheit und erh&ouml;hte Leistung, aufweisen
+ k&ouml;nnen. Eine typische Konfigurationsdatei k&ouml;nnte
+ etwa so aussehen:</para>
+
+ <programlisting>
+ volume raid10
+ plex org striped 512k
+ sd length 102480k drive a
+ sd length 102480k drive b
+ sd length 102480k drive c
+ sd length 102480k drive d
+ sd length 102480k drive e
+ plex org striped 512k
+ sd length 102480k drive c
+ sd length 102480k drive d
+ sd length 102480k drive e
+ sd length 102480k drive a
+ sd length 102480k drive b</programlisting>
+
+ <para>Die Subdisks des zweiten Plexus sind gegen&uuml;ber denen
+ des ersten Plexus um zwei Platten verschoben. Dadurch wird
+ sichergestellt, dass Schreibzugriffe nicht auf den gleichen
+ Subdisks auftreten, auch wenn eine &Uuml;bertragung &uuml;ber
+ zwei Platten geht.</para>
+
+ <para><xref linkend="vinum-raid10-vol"> veranschaulicht die
+ Struktur dieses Volumes.</para>
+
+ <para>
+ <figure id="vinum-raid10-vol">
+ <title>Ein gespiegeltes, Striped Vinum Volume</title>
+ <graphic fileref="vinum/vinum-raid10-vol">
+ </figure>
+ </para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="vinum-object-naming">
+ <title>Objektbenennung</title>
+
+ <para>Wie oben beschrieben, weist Vinum den Plexus und
+ Subdisks Standardnamen zu, wenngleich diese &uuml;berschrieben
+ werden k&ouml;nnen. Das &Uuml;berschreiben dieser Standardnamen
+ wird allerdings nicht empfohlen. Erfahrungen mit dem VERITAS
+ Volume Manager (der eine willk&uuml;rliche Benennung von
+ Objekten erlaubt) haben gezeigt, dass diese Flexibilit&auml;t
+ keinen entscheidenden Vorteil bringt und zudem Verwirrung
+ stiften kann.</para>
+
+ <para>Namen d&uuml;rfen zwar alle nichtleeren Zeichen enthalten,
+ es ist aber sinnvoll, nur Buchstaben, Ziffern und den
+ Unterstrich zu verwenden. Die Namen von Volumes, Plexus und
+ Subdisks k&ouml;nnen bis zu 64 Zeichen lang sein, die Namen
+ von Platten d&uuml;rfen hingegen nur bis zu 32 Zeichen lang
+ sein.</para>
+
+ <para>Vinum-Objekten werden Ger&auml;tedateien in der
+ <filename>/dev/gvinum</filename>-Hierarchie zugewiesen. Die
+ weiter oben dargestellte Konfiguration w&uuml;rde Vinum dazu
+ veranlassen, die folgenden Ger&auml;tedateien zu erstellen:</para>
+
+ <itemizedlist>
+ <listitem>
+ <note><para>Dies trifft nur f&uuml;r die veraltete
+ Vinum-Implementierung zu.</para></note>
+
+ <para>Die Kontrollger&auml;te
+ <filename>/dev/vinum/control</filename> und
+ <filename>/dev/vinum/controld</filename>, welche von
+ &man.gvinum.8; beziehungsweise dem Vinum-Daemon
+ verwendet werden.</para>
+ </listitem>
+
+ <listitem>
+ <para>Ger&auml;te-Eintr&auml;ge f&uuml;r jedes Volume.
+ Dieses sind die Hauptger&auml;te, die von Vinum benutzt
+ werden. Somit w&uuml;rde die Konfiguration von oben
+ folgende Ger&auml;te beinhalten:
+ <filename>/dev/gvinum/myvol</filename>,
+ <filename>/dev/gvinum/mirror</filename>,
+ <filename>/dev/gvinum/striped</filename>,
+ <filename>/dev/gvinum/raid5</filename> sowie
+ <filename>/dev/gvinum/raid10</filename>.</para>
+ </listitem>
+
+ <listitem>
+ <note><para>Dies trifft nur f&uuml;r die veraltete
+ Vinum-Implementierung zu.</para></note>
+
+ <para>Ein Verzeichnis <filename>/dev/vinum/drive</filename>
+ mit Eintr&auml;gen f&uuml;r jede Platte. Diese
+ Eintr&auml;ge sind tats&auml;chlich symbolische Links auf
+ die korrespondierenden Plattendateien.</para>
+ </listitem>
+
+ <listitem>
+ <para>Alle Volumes bekommen direkte Eintr&auml;ge unter
+ <filename>/dev/gvinum/</filename>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Die Verzeichnisse
+ <filename>/dev/gvinum/plex</filename> und
+ <filename>/dev/gvinum/sd</filename>, die
+ Ger&auml;tedateien f&uuml;r jeden Plexus sowie jede
+ Subdisk enthalten.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Stellen Sie sich folgende Konfigurationsdatei vor:</para>
+
+ <programlisting>
+ drive drive1 device /dev/sd1h
+ drive drive2 device /dev/sd2h
+ drive drive3 device /dev/sd3h
+ drive drive4 device /dev/sd4h
+ volume s64 setupstate
+ plex org striped 64k
+ sd length 100m drive drive1
+ sd length 100m drive drive2
+ sd length 100m drive drive3
+ sd length 100m drive drive4</programlisting>
+
+ <para>Nach Abarbeitung dieser Datei erstellt &man.gvinum.8; die
+ folgende Struktur unter <filename>/dev/gvinum</filename>:</para>
+
+ <programlisting>
+ drwxr-xr-x 2 root wheel 512 Apr 13 16:46 plex
+ crwxr-xr-- 1 root wheel 91, 2 Apr 13 16:46 s64
+ drwxr-xr-x 2 root wheel 512 Apr 13 16:46 sd
+
+ /dev/vinum/plex:
+ total 0
+ crwxr-xr-- 1 root wheel 25, 0x10000002 Apr 13 16:46 s64.p0
+
+ /dev/vinum/sd:
+ total 0
+ crwxr-xr-- 1 root wheel 91, 0x20000002 Apr 13 16:46 s64.p0.s0
+ crwxr-xr-- 1 root wheel 91, 0x20100002 Apr 13 16:46 s64.p0.s1
+ crwxr-xr-- 1 root wheel 91, 0x20200002 Apr 13 16:46 s64.p0.s2
+ crwxr-xr-- 1 root wheel 91, 0x20300002 Apr 13 16:46 s64.p0.s3</programlisting>
+
+ <para>Es wird empfohlen, f&uuml;r Plexus und Subdisks keine
+ eigenen Namen zu vergeben. Dies gilt aber nicht f&uuml;r
+ Vinum-Platten. Durch die Benennung von Vinum-Platten
+ wird es erst m&ouml;glich, eine Platte an einen anderen Ort zu
+ verschieben und sie trotzdem noch automatisch erkennen zu lassen.
+ Plattennamen k&ouml;nnen bis zu 32 Zeichen lang sein.</para>
+
+ <sect2>
+ <title>Dateisysteme erstellen</title>
+
+ <para>Volumes erscheinen (mit einer Ausnahme) dem System nicht
+ anders als Platten. Anders als &unix;-Platten partitioniert
+ Vinum seine Volumes nicht, weshalb diese auch keine
+ Partitionstabellen haben. Dies wiederum hat Modifikationen an
+ einigen Platten-Tools, insbesondere &man.newfs.8;, n&ouml;tig
+ gemacht, welche bis dahin den letzten Buchstaben eines
+ Vinum-Volume-Namen als Partitionsbezeichner identifiziert haben.
+ Zum Beispiel k&ouml;nnte eine Platte einen Namen wie
+ <filename>/dev/ad0a</filename> oder
+ <filename>/dev/da2h</filename> haben. Diese Namen bedeuten,
+ dass es sich um die erste Partition
+ (<devicename>a</devicename>) der ersten (0) IDE-Platte
+ (<devicename>ad</devicename>) und respektive die achte
+ Partition (<devicename>h</devicename>) der dritten (2)
+ SCSI-Platte (<devicename>da</devicename>) handelt. Im Vergleich
+ dazu k&ouml;nnte ein Vinum-Volume beispielsweise
+ <filename>/dev/gvinum/concat</filename> hei&szlig;en, ein Name,
+ der in keiner Beziehung mit einem Partitionsnamen steht.</para>
+
+ <para>Normalerweise interpretiert &man.newfs.8; den Namen einer
+ Platte und beschwert sich, wenn es ihn nicht versteht:</para>
+
+ <screen>&prompt.root; <userinput>newfs /dev/gvinum/concat</userinput>
+newfs: /dev/gvinum/concat: can't figure out file system partition</screen>
+
+ <para>Um nun ein Dateisystem auf diesem Volume anzulegen, benutzen
+ Sie &man.newfs.8;:</para>
+
+ <screen>&prompt.root; <userinput>newfs /dev/gvinum/concat</userinput></screen>
+
+ <note><para>Bei &os;-Versionen vor 5.0 ben&ouml;tigt
+ &man.newfs.8; ein zus&auml;tzliches -v Flag und
+ das alte Ger&auml;tenamen-Schema:</para>
+ </note>
+
+ <screen>&prompt.root; <userinput>newfs -v /dev/vinum/concat</userinput></screen>
+ </sect2>
+ </sect1>
+
+ <sect1 id="vinum-config">
+ <title>Vinum konfigurieren</title>
+
+ <para>Der <filename>GENERIC</filename>-Kernel enth&auml;t kein
+ Vinum. Es ist zwar m&ouml;glich, einen speziellen Kernel zu
+ bauen, der Vinum beinhaltet, empfohlen wird aber, Vinum als
+ ein Kernelmodul (&uuml;ber <acronym>kld</acronym>) zu laden.
+ Dazu m&uuml;ssen Sie nicht einmal &man.kldload.8; benutzen,
+ da beim Start von &man.gvinum.8; automatisch &uuml;berpr&uuml;ft
+ wird, ob das Modul bereits geladen wurde. Falls das Modul noch
+ nicht geladen wurde, wird es daraufhin geladen.</para>
+
+ <sect2>
+ <title>Inbetriebnahme</title>
+
+ <para>Vinum speichert seine Konfigurationsinformationen auf den
+ Platten-Slices im Wesentlichen genauso ab wie in den
+ Konfigurationsdateien. Beim Lesen der Konfigurationsdatenbank
+ erkennt Vinum eine Anzahl von Schl&uuml;sselw&ouml;rtern, die
+ in den Konfigurationsdateien nicht erlaubt sind. Zum Beispiel
+ k&ouml;nnte eine Platten-Konfiguration den folgenden Text
+ enthalten:</para>
+
+ <programlisting width="119">volume myvol state up
+volume bigraid state down
+plex name myvol.p0 state up org concat vol myvol
+plex name myvol.p1 state up org concat vol myvol
+plex name myvol.p2 state init org striped 512b vol myvol
+plex name bigraid.p0 state initializing org raid5 512b vol bigraid
+sd name myvol.p0.s0 drive a plex myvol.p0 state up len 1048576b driveoffset 265b plexoffset 0b
+sd name myvol.p0.s1 drive b plex myvol.p0 state up len 1048576b driveoffset 265b plexoffset 1048576b
+sd name myvol.p1.s0 drive c plex myvol.p1 state up len 1048576b driveoffset 265b plexoffset 0b
+sd name myvol.p1.s1 drive d plex myvol.p1 state up len 1048576b driveoffset 265b plexoffset 1048576b
+sd name myvol.p2.s0 drive a plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 0b
+sd name myvol.p2.s1 drive b plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 524288b
+sd name myvol.p2.s2 drive c plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 1048576b
+sd name myvol.p2.s3 drive d plex myvol.p2 state init len 524288b driveoffset 1048841b plexoffset 1572864b
+sd name bigraid.p0.s0 drive a plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 0b
+sd name bigraid.p0.s1 drive b plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 4194304b
+sd name bigraid.p0.s2 drive c plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 8388608b
+sd name bigraid.p0.s3 drive d plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 12582912b
+sd name bigraid.p0.s4 drive e plex bigraid.p0 state initializing len 4194304b driveoff set 1573129b plexoffset 16777216b</programlisting>
+
+ <para>Die offensichtlichen Unterschiede sind hier die Anwesenheit
+ von Informationen &uuml;ber explizite Speicherorte und
+ Benennungen (beides ist zwar erlaubt, aber es wird dem Benutzer
+ davon abgeraten, es zu benutzen) und Informationen &uuml;ber die
+ Zust&auml;nde (welche f&uuml;r den Benutzer nicht zur
+ Verf&uuml;gung stehen). Vinum speichert keine Informationen
+ &uuml;ber Platten in den Konfigurationsinformationen, es findet
+ die Platten durch Scannen nach Vinum-Markierungen auf den
+ eingerichteten Laufwerken. Dies erm&ouml;glicht es,
+ Vinum-Platten auch dann noch korrekt zu identifizieren, wenn
+ sie schon andere &unix;-Platten-IDs zugewiesen bekommen
+ haben.</para>
+
+ <sect3 id="vinum-rc-startup">
+ <title>Automatische Inbetriebnahme</title>
+
+ <note>
+ <para>Diese Information bezieht sich nur auf die veraltete
+ Vinum-Implementierung. <emphasis>Gvinum</emphasis>
+ unterst&uuml;tzt eine automatische Inbetriebnahme immer,
+ wenn das Kernelmodul geladen ist.</para>
+ </note>
+
+ <para>Um Vinum automatisch zu starten, wenn Sie Ihr System
+ starten, m&uuml;ssen Sie sicherstellen, dass Ihre
+ <filename>/etc/rc.conf</filename> (die in &man.rc.conf.5;
+ ausf&uuml;hrlich beschrieben wird) folgende Zeile
+ enth&auml;lt:</para>
+
+ <programlisting>start_vinum="YES" # set to YES to start vinum</programlisting>
+
+ <para>Durch diesen Eintrag wird das Vinum-<acronym>kld</acronym>
+ geladen, das alle Objekte startet, die in der Konfiguration
+ erw&auml;hnt werden. All dies wird vor dem Mounten der
+ Dateisysteme getan, so dass ein automatisches &man.fsck.8;
+ und Mounten der Dateisysteme auf Vinum-Volumes m&ouml;glich
+ ist.</para>
+
+ <para>Beim starten von Vinum durch den Befehl <command>vinum
+ start</command> liest Vinum die Konfigurationsdatenbank von
+ einer der Vinum-Platten. Unter normalen Umst&auml;nden
+ enth&auml;lt jede Platte eine identische Kopie der
+ Konfigurationsdatenbank, so dass es keine Rolle spielt, von
+ welcher der Platten diese eingelesen wird. Nach einem
+ Plattencrash muss Vinum allerdings zun&auml;chst feststellen,
+ welche der Platten zuletzt aktualisiert wurde und dann die
+ Konfiguration von dieser Platte lesen. Danach werden (falls
+ n&ouml;tig) die Konfigurationen der "alten" Platten
+ aktualisiert.</para>
+ </sect3>
+ </sect2>
+ </sect1>
+<!-- 2006-01-04__16:15 -->
+ <sect1 id="vinum-root">
+ <title>Vinum f&uuml;r das Root-Dateisystem benutzen</title>
+
+ <para>Auf einem System, das mit Hilfe von Vinum
+ vollgespiegelte Dateisysteme hat, ist es w&uuml;nschenswert, auch
+ das Root-Dateisystem zu spiegeln. Solch eine Konfiguration ist
+ allerdings weniger trivial als das Spiegeln eines
+ gew&ouml;hnlichen Dateisystems, weil:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Das Root-Dateisystem in einer sehr fr&uuml;hen Phase
+ des Bootvorgangs verf&uuml;gbar sein muss, und damit auch
+ die Vinum-Infrastruktur.</para>
+ </listitem>
+
+ <listitem>
+ <para>Das Volume, welches das Root-Dateisystem enth&auml;lt,
+ auch den Bootstrap und den Kernel enth&auml;lt, die
+ wiederum nur mit den systemeigenen Tools (zum Beispiel
+ dem BIOS bei handels&uuml;blichen PCs) gelesen werden
+ k&ouml;nnen und meist nicht dazu gebracht werden k&ouml;nnen,
+ Vinum zu verstehen.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Im folgenden Abschnitt wird der Begriff
+ <quote>Root-Volume</quote> benutzt, um das Vinum-Volume zu
+ beschreiben, welches das Root-Dateisystem enth&auml;lt. Es ist
+ eine gute Idee, f&uuml;r dieses Volume den Namen
+ <literal>"root"</literal> zu benutzen, aber es ist in keiner
+ Weise technisch n&ouml;tig (Das folgende Beispiel geht allerdings
+ davon aus, dass dies der Fall ist.).</para>
+
+ <sect2>
+ <title>Vinum f&uuml;r das Root-Dateisystem rechtzeitig
+ starten</title>
+
+ <para>Damit dies gelingt, m&uuml;ssen Sie folgende Aufgaben
+ erledigen:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Vinum muss zum Zeitpunkt des Bootvorganges im
+ Kernel zur Verf&uuml;gung stehen. Deswegen ist die
+ Methode zum Start von Vinum, die in
+ <xref linkend="vinum-rc-startup"> beschrieben wird,
+ f&uuml;r diese Aufgabe nicht geeignet. Also muss
+ auch der <literal>start_vinum</literal>-Parameter
+ eigentlich <emphasis>nicht</emphasis> gesetzt werden,
+ wenn man das folgende Setup einrichtet. Die erste
+ M&ouml;glichkeit w&auml;re es, Vinum statisch in den
+ Kernel zu kompilieren, so dass es st&auml;ndig
+ verf&uuml;gbar ist, was aber in der Regel nicht
+ erw&uuml;nscht ist. Ebenso gibt es die M&ouml;glichkeit
+ <filename>/boot/loader</filename>
+ (<xref linkend="boot-loader">) das Vinum-Kernelmodul
+ fr&uuml;h genug laden zu lassen (und zwar noch bevor
+ der Kernel gestartet wird). Dies kann bewerkstelligt
+ werden, indem die Zeile</para>
+
+ <programlisting>geom_vinum_load="YES"</programlisting>
+
+ <para>in die Datei <filename>/boot/loader.conf</filename>
+ eingetragen wird.</para>
+ </listitem>
+
+ <listitem>
+ <note>
+ <para>F&uuml;r <emphasis>Gvinum</emphasis> ist das oben
+ beschriebene Prozedere alles, was Sie tun m&uuml;ssen,
+ da der gesamte Startvorgang automatisch erledigt wird,
+ sobald das Kernelmodul geladen wurde. Der folgende Text
+ dokumentiert das Verhalten des urspr&uuml;nglichen
+ Vinum-Systems.</para>
+ </note>
+
+ <para>Vinum muss fr&uuml;h initialisiert werden, weil es
+ das Volume f&uuml;r das Root-Dateisystem bereitstellen
+ muss. In der Voreinstellung sucht das
+ Vinum-Kernelmodul nicht nach Laufwerken, die vielleicht
+ Vinum-Volumeninformationen enthalten k&ouml;nnten,
+ bis der Administrator (oder eines der Startskripte)
+ den Befehl <command>vinum start</command>
+ ausf&uuml;hrt.</para>
+
+ <note>
+ <para>Der folgende Absatz gibt einen &Uuml;berblick
+ &uuml;ber die n&ouml;tigen Schritte f&uuml;r FreeBSD 5.X
+ und neuer. Die Einrichtung unter FreeBSD 4.X
+ unterscheidet sich von dieser Vorgehensweise und wird in
+ <xref linkend="vinum-root-4x"> beschrieben.</para>
+ </note>
+
+ <para>Durch Aufnahme der Zeile</para>
+
+ <programlisting>vinum.autostart="YES"</programlisting>
+
+ <para>in <filename>/boot/loader.conf</filename>wird Vinum
+ beim Starten des Kernels dazu veranlasst, automatisch alle
+ Platten nach Vinuminformationen zu scannen.</para>
+
+ <para>Beachten Sie, dass es nicht n&ouml;tig ist, den Kernel
+ davon zu unterrichten, wo er nach dem Root-Dateisystem
+ suchen soll. <filename>/boot/loader</filename> holt sich
+ den Namen des Root-Ger&auml;tes aus
+ <filename>/etc/fstab</filename> und &uuml;bergibt diesen
+ dann dem Kernel. Sobald es Zeit wird, das Root-Dateisystem
+ zu mounten, findet der Kernel anhand des Ger&auml;tenamens
+ heraus, welchen Treiber er fragen muss, um den Namen in die
+ interne Ger&auml;te-ID zu &uuml;bersetzen
+ (major/minor-Nummer).</para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2>
+ <title>Ein Vinum-basiertes Root-Volume dem Bootstrap
+ verf&uuml;gbar machen</title>
+
+ <para>Da der aktuelle FreeBSD-Bootstrap nur 7,5 KB Code
+ enth&auml;lt und schon ohne Vinum die Aufgabe hat,
+ bestimmte Dateien (wie <filename>/boot/loader</filename>)
+ von einem UFS-Dateisystem zu lesen, ist es schier
+ unm&ouml;glich, ihm auch noch die Interna von Vinum
+ beizubringen, damit er die Vinum-Konfigurationsdaten
+ auslesen und die Elemente eines Boot-Volumes selbst
+ herausfinden k&ouml;nnte. Daher sind ein paar Tricks
+ n&ouml;tig, um dem Bootstrap-Code die Illusion
+ einer Standard-<literal>"a"</literal>-Partition mit
+ einem Root-Dateisystem vorzugaukeln.</para>
+
+ <para>Damit dies &uuml;berhaupt m&ouml;glich wird,
+ m&uuml;ssen die folgenden Bedingungen f&uuml;r das
+ Root-Dateisystem erf&uuml;llt sein:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Das Root-Volume darf weder gestriped noch
+ RAID-5 sein.</para>
+ </listitem>
+
+ <listitem>
+ <para>Das Root-Volume darf nicht mehr als eine konkatenierte
+ Subdisk pro Plexus enthalten.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Beachten Sie, dass es m&ouml;glich und
+ w&uuml;nschenswert ist, mehrere Plexus zu haben, von denen
+ jeder eine Kopie des Root-Dateisystems enth&auml;lt. Der
+ Bootstrap-Prozess wird hingegen nur einen dieser Plexus
+ benutzen, um den Bootstrap und alle Dateien zu finden, bis der
+ Kernel letztendlich das Root-Dateisystem selbst laden wird.
+ Jede einzelne Subdisk innerhalb dieser Plexus wird dann ihre
+ eigene Illusion der Partition <literal>"a"</literal> brauchen,
+ damit das entsprechende Ger&auml;t bootbar wird. Es ist nicht
+ unbedingt notwendig, dass sich jede dieser gef&auml;lschten
+ <literal>"a"</literal>-Partitionen auf seinem Ger&auml;t an
+ einem Ort befindet, der um den selben Wert verschoben ist wie
+ auf den anderen Ger&auml;ten, die Plexus des Root-Dateisystems
+ enthalten. Um Unklarheiten zu verhindern, ist es jedoch eine
+ gute Idee, die Vinum-Volumes so zu erstellen, dass die
+ gespiegelten Ger&auml;te symmetrisch sind.</para>
+
+ <para>Damit diese <literal>"a"</literal>-Partitionen eingerichtet
+ werden k&ouml;nnen, muss f&uuml;r alle Ger&auml;te, die Teil des
+ Root-Dateisystems sind, folgendes getan werden:</para>
+
+ <procedure>
+ <step>
+ <para>Der Ort (Verschiebung vom Beginn des Ger&auml;tes) und
+ die Gr&ouml;&szlig;e der Subdisk, die Teil des Root-Volumes
+ ist, muss untersucht werden:</para>
+
+ <screen>&prompt.root; <userinput>gvinum l -rv root</userinput></screen>
+
+ <para>Beachten Sie, dass Vinum-Verschiebungen und
+ -Gr&ouml;&szlig;en in Bytes gemessen werden. Sie m&uuml;ssen
+ deshalb durch 512 geteilt werden, um die Blockanzahl zu
+ erhalten, wie sie das <command>bsdlabel</command>-Kommando
+ verwendet.</para>
+ </step>
+
+ <step>
+ <para>F&uuml;hren Sie den Befehl</para>
+
+ <screen>&prompt.root; <userinput>bsdlabel -e <replaceable>devname</replaceable></userinput></screen>
+
+ <para>f&uuml;r jedes Ger&auml;t, dass am Root-Volume beteiligt
+ ist, aus. <replaceable>devname</replaceable> muss entweder
+ der Name der Platte (wie <devicename>da0</devicename>), im
+ Falle einer Platte ohne Slice-Tabelle oder der Name des
+ Slices (wie <devicename>ad0s1</devicename>) sein.</para>
+
+ <para>Wenn es schon eine <literal>"a"</literal>-Partition auf
+ dem Ger&auml;t (in der Regel wahrscheinlich ein
+ Pr&auml;-Vinum-Root-Dateisystem) gibt, sollte diese
+ umbenannt werden, damit sie weiterhin verf&uuml;gbar bleibt
+ (nur f&uuml;r den Fall). Sie wird aber nicht l&auml;nger
+ benutzt, um das System zu starten. Beachten Sie aber, dass
+ aktive Partitionen (wie ein gemountetes Root-Dateisystem)
+ nicht umbenannt werden k&ouml;nnen, sodass Sie entweder von
+ einem <quote>Fixit</quote>-Medium booten m&uuml;ssen, oder
+ aber mittels eines zweistufigen Prozesses (sofern Sie in einer
+ gespiegelten Umgebung arbeiten) zuerst die Platte
+ &auml;ndern, von der gerade nicht gebootet wurde.</para>
+
+ <para>Nun muss die Verschiebung der Vinum-Partition (sofern
+ vorhanden) auf diesem Ger&auml;t mit der Veschiebung der
+ entsprechenden Root-Volume-Subdisk addiert werden. Das
+ Resultat wird der <literal>"offset"</literal>-Wert f&uuml;r
+ die neue <literal>"a"</literal>-Partition. Der
+ <literal>"size"</literal>-Wert f&uuml;r diese Partition
+ kann entsprechend der Berechnung ermittelt werden.
+ <literal>"fstype"</literal> sollte <literal>4.2BSD</literal>
+ sein. Die <literal>"fsize"</literal>-,
+ <literal>"bsize"</literal>-, und
+ <literal>"cpg"</literal>- Werte sollten entsprechend dem
+ eigentlichen Dateisystem gew&auml;hlt werden, obwohl sie in
+ diesem Kontext ziemlich unwichtig sind.</para>
+
+ <para>Auf diese Art und Weise wird eine neue Partition
+ <literal>"a"</literal> etabliert, die die Vinum-Partition
+ auf diesem Ger&auml;t &uuml;berschneidet. Beachte Sie, dass
+ das <command>bsdlabel</command>-Kommando diese
+ &Uuml;berschneidung nur erlaubt, wenn die Partition richtig
+ mit dem <literal>"vinum"</literal>-fstype markiert ist.</para>
+ </step>
+
+ <step>
+ <para>Das ist alles. Auf jedem Ger&auml;t befindet sich nun
+ eine gef&auml;lschte <literal>"a"</literal>-Partition, die
+ eine Kopie des Root-Volumes enth&auml;lt. Es wird dringend
+ empfohlen, das Resultat dieser Konfiguration zu
+ &uuml;berpr&uuml;fen:</para>
+
+ <screen>&prompt.root; <userinput>fsck -n /dev/<replaceable>devname</replaceable>a</userinput></screen>
+ </step>
+ </procedure>
+
+ <para>Denken Sie stets daran, dass alle Dateien, die
+ Kontrollinformationen enthalten, nun relativ zum
+ Root-Dateisystem innerhalb des Vinum-Volumes sein m&uuml;ssen.
+ Denn ein neu eingerichtetes Vinum-Root-Dateisystem ist
+ m&ouml;glicherweise inkompatibel zum gerade aktiven
+ Root-Dateisystem. Deshalb m&uuml;ssen insbesondere die
+ Dateien <filename>/etc/fstab</filename> und
+ <filename>/boot/loader.conf</filename> &uuml;berpr&uuml;ft
+ werden.</para>
+
+ <para>Beim n&auml;chsten Systemstart sollte der Bootstrap die
+ ad&auml;quaten Kontrollinformationen des neuen
+ Vinum-basierten Root-Dateisystems automatisch herausfinden und
+ entsprechend handeln. Am Ende des
+ Kernel-Initialisierungsprozesses (nachdem alle Ger&auml;te
+ angezeigt wurden) erhalten Sie bei einer erfolgreichen
+ Konfiguration eine Nachricht &auml;hnlich der folgenden:</para>
+
+ <screen>Mounting root from ufs:/dev/gvinum/root</screen>
+ </sect2>
+
+ <sect2>
+ <title>Beispiel eines Vinum-basierten Root-Setups</title>
+
+ <para>Nachdem das Vinum-Root-Volume eingerichtet wurde,
+ k&ouml;nnte die Ausgabe von <command>gvinum l -rv root</command>
+ bespielsweise so aussehen:</para>
+
+ <screen>
+...
+Subdisk root.p0.s0:
+ Size: 125829120 bytes (120 MB)
+ State: up
+ Plex root.p0 at offset 0 (0 B)
+ Drive disk0 (/dev/da0h) at offset 135680 (132 kB)
+
+Subdisk root.p1.s0:
+ Size: 125829120 bytes (120 MB)
+ State: up
+ Plex root.p1 at offset 0 (0 B)
+ Drive disk1 (/dev/da1h) at offset 135680 (132 kB)
+ </screen>
+
+ <para>Wichtig ist hier insbesondere ist der Wert
+ <literal>135680</literal> f&uuml;r die Verschiebung (relativ
+ zur Partition <filename>/dev/da0h</filename>). Das entspricht
+ beim Einsatz von <command>bsdlabel</command> 265
+ 512-Byte-Plattenbl&ouml;cken. Dieses Root-Volume ist ebenso
+ 245760 512-Byte-Bl&ouml;cke gro&szlig;.
+ <filename>/dev/da1h</filename> enth&auml;lt die zweite Kopie
+ dieses Root-Volumes und ist symmetrisch aufgebaut.</para>
+
+ <para>Das Bsdlabel f&uuml;r diese Ger&auml;te k&ouml;nnte
+ so aussehen:</para>
+
+ <screen>
+...
+8 partitions:
+# size offset fstype [fsize bsize bps/cpg]
+ a: 245760 281 4.2BSD 2048 16384 0 # (Cyl. 0*- 15*)
+ c: 71771688 0 unused 0 0 # (Cyl. 0 - 4467*)
+ h: 71771672 16 vinum # (Cyl. 0*- 4467*)
+ </screen>
+
+ <para>Wie man leicht feststellen kann, entspricht der Parameter
+ <literal>"size"</literal> der gef&auml;lschten
+ <literal>"a"</literal>-Partition dem ausgewiesenen Wert von
+ oben, w&auml;hrend der Parameter
+ <literal>"offset"</literal> gleich der Summe der Verschiebung
+ innerhalb der Vinum-Partition <literal>"h"</literal> und der
+ Verschiebung innerhalb des Ger&auml;ts (oder Slice) ist. Dies
+ ist ein typischer Aufbau, der n&ouml;tig ist, um die in
+ <xref linkend="vinum-root-panic"> beschriebenen Probleme zu
+ vermeiden. Die gesamte Partition <literal>"a"</literal> befindet
+ sich in <literal>"h"</literal>, die alle Vinum-Daten f&uuml;r
+ dieses Ger&auml;t enth&auml;lt.</para>
+
+ <para>Beachten Sie, dass in dem oben beschriebenen Beispiel das
+ gesamte Ger&auml;t Vinum gewidmet ist und keine
+ Pr&auml;-Vinum-Partition zur&uuml;ckgelassen wurde, da es sich
+ im Beispiel um eine neu eingerichtete Platte handelt, die nur
+ f&uuml;r die Vinum-Konfiguration bestimmt war.</para>
+ </sect2>
+
+ <sect2>
+ <title>Fehlerbehebung</title>
+
+ <para>Der folgende Abschnitt beschreibt einige bekannte
+ Probleme und Fallstricke bei der Vinum-Konfiguration sowie
+ deren Behebung.</para>
+
+ <sect3>
+ <title>Der System-Bootstrap l&auml;dt zwar, das System startet
+ aber nicht.</title>
+
+ <para>Wenn aus irgendeinem Grund das System nicht mit dem Booten
+ fortf&auml;hrt, kann man den Bootstrap w&auml;hrend der
+ 10-Sekunden-Warnung durch Dr&uuml;cken der
+ <keycap>Leertaste</keycap> unterbrechen. Die
+ <foreignphrase>loader</foreignphrase>-Variablen (wie
+ <literal>vinum.autostart</literal>) k&ouml;nnen mittels des
+ <command>show</command>-Kommandos untersucht, und mit
+ <command>set</command> oder <command>unset</command>
+ ge&auml;ndert werden.</para>
+
+ <para>Wenn das einzige Problem das Fehlen des
+ Vinum-Kernelmoduls in der Liste der automatisch zu ladenden
+ Module ist, hilft ein einfaches
+ <command>load geom_vinum</command>.</para>
+
+ <para>Danach k&ouml;nnen Sie den Bootvorgang mit
+ <command>boot -as</command> fortsetzen. Die Optionen
+ <option>-as</option> fordern den Kernel auf, nach dem zu
+ mountenden Root-Dateisystem zu fragen (<option>-a</option>),
+ und den Bootvorgang im Single-User-Modus
+ (<option>-s</option>) zu beenden, in dem das
+ Root-Dateisystem schon schreibgesch&uuml;tzt gemountet ist.
+ Auf diese Weise wird keine Dateninkonsistenz zwischen den
+ Plexus riskiert, auch wenn nur ein Plexus eines
+ Multi-Plexus-Volumes gemountet wurde.</para>
+
+ <para>Beim Prompt, das nach einem Root-Dateisystem fragt,
+ kann jedes Ger&auml;t angegeben werden, dass ein
+ g&uuml;ltiges Root-Dateisystem hat. Wenn
+ <filename>/etc/fstab</filename> richtig konfiguriert
+ wurde, sollte die Vorgabe etwas wie
+ <literal>ufs:/dev/gvinum/root</literal> sein. Eine typische
+ Alternative w&uuml;rde etwas wie
+ <literal>ufs:da0d</literal> sein, welches eine
+ hypothetische Partition sein k&ouml;nnte, die ein
+ Pre-Vinum-Root-Dateisystem enth&auml;lt. Vorsicht sollte
+ walten, wenn eine der <foreignphrase>alias</foreignphrase>
+ <literal>"a"</literal>-Partitionen hier eingegeben wird, die
+ eigentlich Referenzen auf die Subdisks des
+ Vinum-Root-Dateisystems sind, da so nur ein St&uuml;ck eines
+ gespiegelten Root-Ger&auml;tes gemountet werden w&uuml;rde.
+ Wenn das Dateisystem sp&auml;ter zum Lesen und Schreiben
+ gemountet werden soll, ist es n&ouml;tig, die anderen Plexus
+ des Vinum-Root-Volumes zu entfernen, weil diese Plexus
+ andernfalls inkonsistente Daten enthalten w&uuml;rden.<para>
+ </sect3>
+
+ <sect3>
+ <title>Nur der prim&auml;re Bootstrap l&auml;dt</title>
+
+ <para>Wenn das Laden von <filename>/boot/loader</filename>
+ fehlschl&auml;gt, aber der prim&auml;re Bootstrap dennoch
+ l&auml;dt (sichtbar an dem einzelnen Strich in der linken
+ Spalte des Bildschirms gleich nachdem der Bootprozess
+ startet), kann man versuchen, den prim&auml;ren Bootstrap
+ an diesem Punkt durch Benutzen der
+ <keycap>Leertaste</keycap> zu unterbrechen. Dies wird
+ den Bootstrap in der zweiten Phase stoppen (siehe dazu auch
+ <xref linkend="boot-boot1">). Hier kann nun der Versuch
+ unternommen werden, von einer anderen Partition zu booten,
+ wie beispielsweise dem vorhergehenden Root-Dateisystem,
+ das von <literal>"a"</literal> verschoben wurde.</para>
+ </sect3>
+
+ <sect3 id="vinum-root-panic">
+ <title>Nichts bootet, der Bootstrap h&auml;ngt sich auf</title>
+
+ <para>Diese Situation wird vorkommen, wenn der Bootstrap durch
+ die Vinum-Installation zerst&ouml;rt worden ist.
+ Ungl&uuml;cklicherweise l&auml;sst Vinum am Anfang seiner
+ Partition nur 4&nbsp;KB frei und schreibt dahinter seine
+ Kopfinformationen. Allerdings ben&ouml;tigen Stufe-Eins-
+ und -Zwei-Bootstraps plus dem dazwischen eingebetteten
+ <foreignphrase>bsdlabel</foreignphrase> momentan 8&nbsp;KB.
+ Demzufolge wird die Vinum-Installation, wenn die
+ Vinum-Partition mit der Verschiebung 0 (innerhalb eines
+ Slice oder einer Platte, die zum Start bestimmt waren)
+ eingerichtet wurde, den Bootstrap zerst&ouml;ren.</para>
+
+ <para>Analog wird eine anschlie&szlig;ende
+ Reinstallation eines Bootstrap (zum Beispiel durch Booten
+ eines <quote>Fixit</quote>-Mediums) mit
+ <command>bsdlabel -B</command>, wie in
+ <xref linkend="boot-boot1"> beschrieben, den Vinum-Kopf
+ zerst&ouml;ren und Vinum wird seine Platte(n) nicht mehr
+ finden k&ouml;nnen. Obwohl keine eigentlichen
+ Vinum-Konfigurationsdaten oder Daten in den Vinum-Volumes
+ zerst&ouml;rt werden und es m&ouml;glich w&auml;re, alle
+ Daten wiederherzustellen, indem die exakt gleichen
+ Vinum-Konfigurationsdaten noch einmal eingegeben werden,
+ bleibt die Situation schwer zu bereinigen, da es n&ouml;tig
+ ist, die gesamte Vinum-Partition um mindestens
+ 4&nbsp;KB nach hinten zu verschieben, damit Bootstrap
+ und Vinum-Kopf nicht mehr kollidieren.</para>
+ </sect3>
+ </sect2>
+
+ <sect2 id="vinum-root-4x">
+ <title>Vinum und FreeBSD&nbsp;4.X</title>
+
+ <para>Unter FreeBSD&nbsp;4.X fehlen einige interne Funktionen,
+ daher ist Vinum hier nicht in der Lage, automatisch alle
+ Platten zu scannen. Au&szlig;erdem ist der Code zur Bestimmung
+ der internen ID des Root-Ger&auml;ts nicht intelligent genug,
+ um von sich aus mit einem Namen wie
+ <filename>/dev/vinum/root</filename> umzugehen. Dieser
+ Abschnitt beschreibt, wie Sie diese Einschr&auml;nkungen
+ umgehen k&ouml;nnen.</para>
+
+ <para>Sie m&uuml;ssen Vinum explizit mitteilen, welche
+ Laufwerke gescannt werden sollen. Dazu nehmen Sie eine Zeile
+ &auml;hnlich der folgenden in
+ <filename>/boot/loader.conf</filename> auf:</para>
+
+ <programlisting>vinum.drives="/dev/<replaceable>da0</replaceable> /dev/<replaceable>da1</replaceable>"</programlisting>
+
+ <para>Es ist wichtig, dass Sie alle Laufwerke angeben, die
+ Vinum-Daten enthalten k&ouml;nnten. Zwar schadet es nicht,
+ <emphasis>weitere</emphasis> Laufwerke anzugeben, dies ist
+ aber nicht n&ouml;tig, da jedes Slice und/oder jede
+ Partition von Vinum automatisch auf g&uuml;ltige Vinum-Header
+ hin &uuml;berpr&uuml;ft wird.</para>
+
+ <para>Da die Routinen, die zum Parsen des
+ Root-Dateisystems-Namens und zum Herleiten der
+ Ger&auml;te-ID (<foreignphrase>major/minor
+ number</foreignphrase>) verwendet werden, nur
+ <quote>klassische</quote> Ger&auml;tenamen verstehen,
+ ist es nicht m&ouml;glich, f&uuml;r das Root-Volume einen
+ Namen wie <filename>/dev/vinum/root</filename> zu
+ verwenden. Daher muss Vinum den internen
+ Kernelparameter, der die ID des Root-Ger&auml;tes bekommt,
+ w&auml;hrend seiner eigenen Initialsierung selbst
+ festlegen und den Namen des Root-Volumes der
+ Loader-Variable <literal>vinum.root</literal> &uuml;bergeben.
+ Dazu wird folgende Zeile in
+ <filename>/boot/loader.conf</filename> aufgenommen:</para>
+
+ <programlisting>vinum.root="root"</programlisting>
+
+ <para>Sobald jetzt die Kernelinitialisierung versucht, den
+ Namen des zu mountenden Root-Ger&auml;tes herauszufinden, sieht
+ sie, dass ein Kernelmodul den Kernelparameter schon
+ vorinitialisiert hat. Wenn dies der Fall ist
+ <emphasis>und</emphasis> das Ger&auml;t, dass sich als
+ Root-Ger&auml;t ausgibt, tats&auml;chlich die Hauptnummer des
+ Treibers hat, wie sie mit Hilfe des &uuml;bergebenen
+ Root-Ger&auml;te-Namens (in unserem Fall ist das
+ <literal>"vinum"</literal>) ermittelt wurde, wird die
+ Kernelinitialisierung die vorbelegte Ger&auml;te-ID verwenden,
+ anstatt selbst eine herauszufinden. Auf diese Art kann es,
+ w&auml;hrend des gew&ouml;hnlichen automatischen Hochfahrens,
+ mit dem Einh&auml;ngen des Vinum-Root-Volumes als Root-Dateisystem
+ fortfahren.</para>
+
+ <para>Obwohl <command>boot -a</command> zur manuellen Eingabe
+ des Root-Ger&auml;tes auffordert, muss dennoch beachtet
+ werden, dass die Routine noch nicht in der Lage
+ ist, einen Vinum-Namen zu parsen. Wenn ein Ger&auml;tename
+ eingegeben wird, der nicht auf ein Vinum-Ger&auml;t verweist,
+ wird der Unterschied zwischen den Hauptnummern des vorbelegten
+ Root-Parameters und des Treibers die Routine dazu veranlassen,
+ den normalen Parser zu benutzen. Demnach wird eine Zeichenkette
+ wie <literal>ufs:da0d</literal> erwartungsgem&auml;&szlig;
+ funktionieren. Beachten Sie aber, dass es im Falle eines
+ Fehlschlags nicht mehr m&ouml;glich ist, eine Zeichenkette wie
+ <literal>ufs:vinum/root</literal> noch einmal einzugeben, da
+ diese nicht geparsed werden kann. Der einzige Ausweg ist dann
+ ein Neustart des Systems. (Am <quote>askroot</quote>-Prompt kann
+ der Teil <filename>/dev/</filename> des Namens der
+ Ger&auml;tedatei immer weggelassen werden.).</para>
+ </sect2>
+ </sect1>
+</chapter>
+
+<!--
+ Local Variables:
+ mode: sgml
+ sgml-declaration: "../chapter.decl"
+ sgml-indent-data: t
+ sgml-omittag: nil
+ sgml-always-quote-attributes: t
+ sgml-parent-document: ("../book.sgml" "part" "chapter")
+ End:
+-->
diff --git a/de_DE.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml b/de_DE.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml
index 22fd1e15d7..bc97e8d6fd 100644
--- a/de_DE.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml
+++ b/de_DE.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml
@@ -29,8 +29,8 @@
des Haupttextes zu vermeiden.
$FreeBSD$
- $FreeBSDde: de-docproj/share/sgml/glossary/freebsd-glossary.sgml,v 1.9 2006/01/14 08:30:13 jkois Exp $
- basiert auf: 1.24
+ $FreeBSDde: de-docproj/share/sgml/glossary/freebsd-glossary.sgml,v 1.10 2007/01/04 16:49:31 jkois Exp $
+ basiert auf: 1.25
-->
<glossary status="draft" id="freebsd-glossary">
@@ -1032,8 +1032,8 @@
<acronym>MTA</acronym> war von jeher im BSD-Basissystem
enthalten. Aktuell handelt es sich dabei um Sendmail. Es
exisitieren aber auch zahlreiche andere
- <acronym>MTAs</acronym>, darunter postfix, qmail und
- Exim.</para>
+ <acronym>MTA</acronym>s, darunter postfix, qmail und
+ Exim.</para>
</glossdef>
</glossentry>