From ca7e79c77f8ecee0aa79167b10aaf624f1fff095 Mon Sep 17 00:00:00 2001 From: Johann Kois Date: Tue, 12 May 2009 12:09:01 +0000 Subject: MFde: Update the German documentation set. doc/de_DE.ISO8859-1/books/faq/book.sgml 1.1056 -> 1.1059 [X] doc/de_DE.ISO8859-1/books/handbook/geom/chapter.sgml new translation [Y] doc/de_DE.ISO8859-1/books/handbook/mac/chapter.sgml fixes only Obtained from: The FreeBSD German Documentation Project [X] Contributed by: Benedict Reuschling (benedict att reuschling dott org) [Y] Translated by: Daniel Seuffert (DS att praxisvermittlung24 dott de) and jkois@ --- de_DE.ISO8859-1/books/faq/book.sgml | 91 +-- de_DE.ISO8859-1/books/handbook/geom/chapter.sgml | 928 ++++++++++++++++++++++- de_DE.ISO8859-1/books/handbook/mac/chapter.sgml | 2 +- 3 files changed, 954 insertions(+), 67 deletions(-) (limited to 'de_DE.ISO8859-1') diff --git a/de_DE.ISO8859-1/books/faq/book.sgml b/de_DE.ISO8859-1/books/faq/book.sgml index 4f9b7bbb72..a28ef89179 100644 --- a/de_DE.ISO8859-1/books/faq/book.sgml +++ b/de_DE.ISO8859-1/books/faq/book.sgml @@ -3,9 +3,9 @@ The FreeBSD German Documentation Project $FreeBSD$ -$FreeBSDde: de-docproj/books/faq/book.sgml,v 1.688 2009/05/11 18:23:53 bcr Exp $ +$FreeBSDde: de-docproj/books/faq/book.sgml,v 1.691 2009/05/11 18:58:13 bcr Exp $ - basiert auf: 1.1056 + basiert auf: 1.1059 --> @@ -33,7 +33,7 @@ $FreeBSDde: de-docproj/books/faq/book.sgml,v 1.688 2009/05/11 18:23:53 bcr Exp $ - $FreeBSDde: de-docproj/books/faq/book.sgml,v 1.688 2009/05/11 18:23:53 bcr Exp $ + $FreeBSDde: de-docproj/books/faq/book.sgml,v 1.691 2009/05/11 18:58:13 bcr Exp $ 1995 @@ -12123,40 +12123,41 @@ hint.sio.7.irq="12" wird bei dieser Antwort gesetzt sein. Die Erkennungsroutine ist dann in der Lage, dafür zu sorgen, dass Karten mit Modellnummern (zugeordnet von - Microsoft/Intel) kleiner als X off-line - gesetzt werden. Sie prüft dann, ob immer noch Karten - da sind, die auf die Frage antworten. Falls die Antwort - 0 war, sind keine Karten mit IDs - größer X vorhanden. Nun prüft die - Erkennungsroutine, ob Karten unterhalb - X vorhanden sind. Dann setzt die + µsoft;/&intel;) kleiner als X + off-line gesetzt werden. Sie prüft dann, ob + immer noch Karten da sind, die auf die Frage antworten. Falls die + Antwort 0 war, sind keine Karten mit IDs + größer X vorhanden. Die + Erkennungsroutine wird daraufhin anfragen, ob Karten unterhalb + X vorhanden sind. Schließlich setzt die Erkennungsroutine alle Karten größer als - X-(limit/4) off-line und wiederholt die Frage. Wenn diese + X - (limit / 4) off-line + und wiederholt die Frage. Wenn diese halbbinäre Suche nach IDs in Folge genügend oft wiederholt worden ist, wird die Erkennungsroutine schließlich alle in einem Rechner befindlichen PnP-Karten identifiziert haben und das mit einer - Iterationszahl sehr viel kleiner als 2^64. + Iterationszahl sehr viel kleiner als + 264. - Die IDs bestehen aus zwei 32-Bit-Feldern (daher 2^64) - + acht Bit Prüfsumme. Die ersten 32 Bit sind die - Herstellerkennung. Es wurde zwar nicht bestätigt, - aber es wird angenommen, dass unterschiedliche + Die IDs bestehen aus zwei 32-Bit-Feldern (daher + 264) + acht Bit Prüfsumme. Die + ersten 32 Bit sind die Herstellerkennung. Es wurde zwar nicht + bestätigt, aber es wird angenommen, dass unterschiedliche Kartentypen desselben Herstellers unterschiedliche 32-Bit - Herstellerkennungen besitzen können. 32 Bit nur + Herstellerkennungen besitzen können. 32 Bit nur für eindeutige Hersteller zu benötigen, scheint etwas übertrieben. - Die niedrigen 32 Bit sind eine Seriennummer, - Ethernetadresse - etwas, das die betreffende Karte - einzigartig macht. Die Hersteller dürfen niemals - eine zweite Karte mit denselben niedrigen 32 Bit - herstellen, es sei denn, die höheren 32 Bit sind - unterschiedlich. Sie können also mehrere Karten des - selben Typs im Rechner haben und die gesamten 64 Bit - bleiben stets eindeutig. + Die niedrigen 32 Bit sind eine Seriennummer oder etwas + anderes, das die betreffende Karte einzigartig macht. Die + Hersteller dürfen niemals eine zweite Karte mit denselben + niedrigen 32 Bit herstellen, es sei denn, die höheren + 32 Bit sind unterschiedlich. Sie können also mehrere + Karten des selben Typs im Rechner haben und die gesamten + 64 Bit bleiben stets eindeutig. - Die 32-Bit-Gruppen können niemals nur aus Nullen + Die 32 Bit-Gruppen können niemals nur aus Nullen bestehen. Das erlaubt es, bei der binären Suche zu Beginn nur auf von Null verschiedene Bits zu achten. @@ -12192,13 +12193,13 @@ hint.sio.7.irq="12" Im obigen Teil wurde sehr viel vereinfacht, aber die grundlegende Idee sollte klar geworden sein. - Microsoft hat einige der primären + µsoft; hat einige der primären Druckerstatusports für PnP übernommen, da keine Karte diese Adressen für die entgegengesetzten I/O-Zyklen decodiert. Ich habe während der frühen Überprüfungsperiode des PnP-Vorschlags eine echte IBM Druckerkarte gefunden, die - Schreibzugriffe auf dem Statusport decodiert hat, aber MS + Schreibzugriffe auf dem Statusport decodiert hat, aber µsoft; hat nur tough gesagt. Also schreiben sie auf den Druckerstatusport, um Adressen zu setzen, benutzen zusätzlich diese Adresse + 0x800 @@ -12215,31 +12216,10 @@ hint.sio.7.irq="12" - &os.current; stellt seit Februar 2003 - Major-Numbers für Geräte zur Laufzeit automatisch - bereit. Nach Möglichkeit sollte diese neue - Funktion benutzt werden, anstatt eine Major-Number - statisch festzulegen. Weitere Hinweise finden Sie in - src/sys/conf/majors. - - Wenn Sie eine statisch festgelegte Major-Number - benötigen, hängt das weitere Verfahren davon ab, - ob Sie den Treiber frei verfügbar machen wollen. - Falls dem so ist, senden Sie uns bitte eine Kopie der - Treiber-Sourcen und zusätzlich die entsprechenden - Änderungen der Datei files.i386, - ein Beispiel für einen Eintrag in der - Konfigurationsdatei und den entsprechenden Code für - &man.MAKEDEV.8;, der die Gerätedateien für Ihr - Gerät erzeugt. Falls Sie nicht beabsichtigen, - den Treiber frei verfügbar zu machen, oder es - aufgrund von Lizenzbeschränkungen nicht können, - dann ist die Major-Number 32 für zeichenorientierte - und die Major-Number 8 für blockorientierte - Geräte speziell für diesen Zweck reserviert. In - jedem Fall würden wir uns freuen, auf der Mailingliste - &a.hackers; etwas über Ihren neuen Treiber zu - hören. + &os; Versionen stellen seit Februar 2003 + Major-Numbers für Geräte automatisch zur Laufzeit + bereit (lesen Sie &man.devfs.5;), damit ist das nicht mehr + nötig. @@ -12265,7 +12245,8 @@ hint.sio.7.irq="12" erzeugen denkbar ungünstigste Voraussetzungen für zukünftige Tiefensuchen. Falls man die Gesamtzahl der zu erstellenden Verzeichnisse wüsste, - wäre die Lösung die, (gesamt / fs_ncg) pro + wäre die Lösung die, + (gesamt / fs_ncg) pro Zylindergruppe zu erstellen, bevor fortgefahren wird. Offensichtlich müsste man eine Heuristik erstellen, um die Zahl zu schätzen. Sogar die @@ -12279,7 +12260,7 @@ hint.sio.7.irq="12" Jedenfalls ist mein Schluss, dass dies ein fruchtbares Gebiet für Experimente ist. - Kirk McKusick, September 1998 + &a.mckusick;, September 1998 diff --git a/de_DE.ISO8859-1/books/handbook/geom/chapter.sgml b/de_DE.ISO8859-1/books/handbook/geom/chapter.sgml index bb0b2d2f91..0e2bc718a4 100644 --- a/de_DE.ISO8859-1/books/handbook/geom/chapter.sgml +++ b/de_DE.ISO8859-1/books/handbook/geom/chapter.sgml @@ -3,21 +3,927 @@ The FreeBSD German Documentation Project $FreeBSD$ - $FreeBSDde: de-docproj/books/handbook/geom/chapter.sgml,v 1.1 2005/08/15 19:21:38 jkois Exp $ - basiert auf: + $FreeBSDde: de-docproj/books/handbook/geom/chapter.sgml,v 1.15 2009/05/12 08:18:51 jkois Exp $ + basiert auf: 1.48 --> - + + + + + Tom + Rhodes + Geschrieben von + + + + + Daniel + Seuffert + Übersetzt von + + + Johann + Kois + + + - GEOM - Modular Disk Transformation Framework - (noch nicht übersetzt) + GEOM: Modulares Framework zur + Plattentransformation - Dieses Kapitel ist noch nicht übersetzt. - Lesen Sie bitte - das Original in englischer Sprache. Wenn Sie helfen - wollen, dieses Kapitel zu übersetzen, senden Sie bitte - eine E-Mail an die Mailingliste &a.de.translators;. + + Übersicht + + + GEOM + + + GEOM Disk Framework + GEOM + + + Dieses Kapitel behandelt den Einsatz von Laufwerken mit + dem GEOM-Framework in &os;. Dies beinhaltet auch die wichtigen + RAID-Überwachungswerkzeuge, welche das + 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 SEE ALSO-Verweise + bereitgestellt. Dieses Kapitel ist auch kein ausführlicher + Führer für + RAID-Konfigurationen. Nur durch GEOM + unterstützte RAID-Klassen werden + erörtert. + + Nach Lesen dieses Kapitels werden Sie folgendes + wissen: + + + + Welche Art von + RAID-Unterstützung durch GEOM + verfügbar ist. + + + + Wie man die Basis-Dienstprogramme nutzt, um + verschiedene RAID-Stufen zu + konfigurieren, zu manipulieren und zu warten. + + + + Wie man mittels GEOM spiegelt, striped, + verschlüsselt und entfernte Laufwerke verbindet. + + + + Wie man an Laufwerken, welche an das GEOM-Framework + angeschlossen sind, Fehler behebt. + + + + Bevor Sie dieses Kapitel lesen, sollten Sie: + + + + Verstehen, wie &os; Laufwerke behandelt + (). + + + + Wissen wie man einen neuen &os;-Kernel installiert + und konfiguriert (). + + + + + + Einführung in GEOM + + GEOM erlaubt den Zugriff und die Kontrolle von Klassen + — Master Boot Records, BSD-Label usw. + — durch die Nutzung von Datenträgern (Providern) oder + den besonderen Dateien in /dev. Verschiedene Software + RAID-Konfigurationen unterstützend, wird + GEOM Ihnen transparenten Zugriff auf das Betriebssystem und + System-Dienstprogramme gewähren. + + + + + + + Tom + Rhodes + Geschrieben von + + + Murray + Stokely + + + + + RAID0 - Striping + + + GEOM + + + Striping + + + 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-RAID0 (welches auch als Striping + bekannt ist). + + In einem RAID0-System werden die Daten + in einzelne Blöcke aufgeteilt, welche über alle + angeschlossenen Laufwerke in einem Datenfeld (Array) geschrieben + werden. Anstatt darauf warten zu müssen, dass 256K auf + ein einzelnes Laufwerk geschrieben werden, kann ein + RAID0-System gleichzeitig 64K auf jedes von 4 + Laufwerken schreiben mit entsprechend besserer I/O-Leistung. + Dieser Durchsatz kann durch die Verwendung mehrerer + Controller noch zusätzlich gesteigert werden. + + Jedes Laufwerk in einem RAID0-Stripe + muss die gleiche Größe haben, da + I/O-Anforderungen für das Lesen und Schreiben + abwechselnd auf mehrere Laufwerke parallel erfolgen. + + + + + + + + Disk Striping Illustration + + + + + Erzeugen eines Stripe von unformatierten + ATA-Platten + + + Laden Sie das + geom_stripe.ko-Modul: + + &prompt.root; kldload geom_stripe + + + + Stellen Sie sicher, dass ein geeigneter Mount-Punkt + existiert. Falls dieser Datenträger eine Root-Partition + werden soll, dann nutzen Sie zeitweise einen anderen + Mount-Punkt, beispielsweise /mnt: + + &prompt.root; mkdir /mnt + + + + Bestimmen Sie die Gerätenamen derjenigen Platten, + welche gestriped werden sollen, und erzeugen Sie ein neues + Stripe-Gerät. Das folgende Beispiel verwendet zwei + unbenutzte und unpartitionierte + ATA-Platten, die gestriped werden sollen. + Lauten die Gerätenamen /dev/ad2 + und /dev/ad3, so verwenden Sie folgenden + Befehl: + + &prompt.root; gstripe label -v st0 /dev/ad2 /dev/ad3 +Metadata value stored on /dev/ad2. +Metadata value stored on /dev/ad3. +Done. + + + + + Schreiben Sie einen Standard-Label (auch als + Partitions-Tabelle bekannt) auf den neuen Datenträger + und installieren Sie den normalen Bootstrap-Code: + + &prompt.root; bsdlabel -wB /dev/stripe/st0 + + + + Dieser Prozess sollte zwei weitere Geräte im + Verzeichnis /dev/stripe (zusätzlich zum + Gerät st0) erzeugt haben. Diese + schliessen st0a und + st0c ein. Nun kann ein Dateisystem + auf dem Gerät st0a mit dem + newfs-Dienstprogramm erzeugt + werden: + + &prompt.root; newfs -U /dev/stripe/st0a + + Viele Zahlen rauschen nun über Ihren Bildschirm + und nach ein paar Sekunden wird der Prozess abgeschlossen + sein. Der Datenträger wurde erzeugt und kann in den + Verzeichnisbaum eingehängt werden. + + + + Um das erzeugte Stripe manuell zu mounten: + + &prompt.root; mount /dev/stripe/st0a /mnt + + Um das erzeugte Dateisystem automatisch während des + Startvorgangs zu mounten, müssen Sie die + Datenträgerinformation in die Datei + /etc/fstab schreiben. Dazu legen Sie einen + permanenten Mountpunkt namens + stripe an: + + &prompt.root; mkdir /stripe +&prompt.root; echo "/dev/stripe/st0a /stripe ufs rw 2 2" \ + >> /etc/fstab + + Das geom_stripe.ko-Modul muss + ebenfalls automatisch beim Systemstart geladen werden (durch + die Aufnahme der folgenden Zeile in die Datei + /boot/loader.conf): + + &prompt.root; echo 'geom_stripe_load="YES"' >> /boot/loader.conf + + + + RAID1 - Spiegelung + + + GEOM + + + Disk Mirroring + + + Spiegelung (Mirroring) ist eine Technik, welche von vielen + Firmen und Heimnutzern eingesetzt wird, um Daten ohne + Unterbrechung zu sichern. Wenn ein Spiegel existiert, dann + bedeutet dies einfach nur, dass PlatteB die PlatteA + dupliziert. Oder PlatteC+D duplizieren PlatteA+A. Der + wichtigste Aspekt ist, dass Daten einer Platte oder + Partition dupliziert werden, unabhängig von der + Konfiguration der Platte. Dadurch kann später diese + Information leichter wiederhergestellt, ohne + Zugriffsunterbrechung gesichert oder sogar physisch in einem + Datentresor gelagert werden. + + Stellen Sie zu Beginn sicher, dass ihr System zwei + Platten mit identischer Größe aufweist. In dieser + Übung gehen wir davon aus, dass es direkt + zugängliche (&man.da.4;) SCSI-Platten + sind. + + + Die primäre Platte spiegeln + + Angenommen, &os; wurde auf der ersten Platte + da0 installiert, dann sollte + &man.gmirror.8; angewiesen werden, seine primären Daten + auf dieser Platte zu speichern. + + Bevor Sie den Spiegel aufbauen, sollten Sie die maximale + Protokollierung aktivieren und den Zugang zum Gerät + gestatten. Dazu setzen Sie die &man.sysctl.8;-Option + kern.geom.debugflags auf den folgenden + Wert: + + &prompt.root; sysctl kern.geom.debugflags=17 + + Nun können Sie den Spiegel aufbauen. Beginnen Sie den + Prozess, indem Sie die Metadaten-Informationen auf das Gerät + der primären Platte speichern. Konkret erzeugen Sie dabei + das Gerät + /dev/mirror/gm, indem Sie + den folgenden Befehl ausführen: + + + Die Spiegelung der Bootplatte kann zu Datenverlust + führen, wenn Sie Daten im letzten Sektor der Platte + gespeichert haben. Dieses Risiko lässt sich minimieren, + wenn Sie den Spiegel unmittelbar nach der Installation von + &os; aufsetzen. + + + &prompt.root; gmirror label -vb round-robin gm0 /dev/da0 + + Ihr System sollte wie folgt antworten: + + Metadata value stored on /dev/da0. +Done. + + Initialisieren Sie GEOM. Dadurch wird das Kernelmodul + /boot/kernel/geom_mirror.ko geladen: + + &prompt.root; gmirror load + + + Wenn dieser Befehl erfolgreich ausgeführt wurde, wird + die Gerätedatei gm0 im + Verzeichnis /dev/mirror + erzeugt. + + + Stellen Sie sicher, dass das Kernelmodul + geom_mirror.ko beim Systemstart automatisch + geladen wird: + + &prompt.root; echo 'geom_mirror_load="YES"' >> /boot/loader.conf + + Bearbeiten Sie die Datei /etc/fstab + und ersetzen Sie alle Verweise auf die alte Gerätedatei + da0 durch die neue Gerätedatei + gm0 des Plattenspiegels. Um die Datei + /etc/fstab bearbeiten zu können, + müssen Sie als Benutzer root am + System angemeldet sein. + + + Sollte &man.vi.1; ihr bevorzugter Texteditor sein, + kouml;nnen Sie diese Änderungen ganz einfach wie + folgt durchführen: + + &prompt.root; vi /etc/fstab + + Bevor Sie die Datei bearbeiten, sollten Sie ein Backup + anlegen. Haben Sie die Datei mit &man.vi.1; geöffnet, + können Sie durch die Eingabe von + :w /etc/fstab.bak eine Sicherungskopie + der Datei anlegen. Danach ersetzen Sie alle alten Referenzen + auf da0 durch + gm0, indem Sie + :%s/da/mirror\/gm/g eingeben. + + + Die geänderte fstab sollte nun + änhlich wie im folgenden Beispiel aussehen. Es spielt + dabei keine Rolle, ob Sie SCSI- oder + ATA-Platten verwenden. Das + RAID-Gerät heißt in jedem Fall + gm. + + # Device Mountpoint FStype Options Dump Pass# +/dev/mirror/gm0s1b none swap sw 0 0 +/dev/mirror/gm0s1a / ufs rw 1 1 +/dev/mirror/gm0s1d /usr ufs rw 0 0 +/dev/mirror/gm0s1f /home ufs rw 2 2 +#/dev/mirror/gm0s2d /store ufs rw 2 2 +/dev/mirror/gm0s1e /var ufs rw 2 2 +/dev/acd0 /cdrom cd9660 ro,noauto 0 0 + + Führen Sie einen Systemneustart durch: + + &prompt.root; shutdown -r now + + Wenn das System gestartet wird, sollten Sie nun nur noch + gm0-Geräte anstatt der bisherigen + da0-Geräte sehen. Nachdem das + System vollständig initialisiert wurde, können Sie + die neue Konfiguration testen, indem Sie den Befehl + mount ausführen: + + &prompt.root; mount +Filesystem 1K-blocks Used Avail Capacity Mounted on +/dev/mirror/gm0s1a 1012974 224604 707334 24% / +devfs 1 1 0 100% /dev +/dev/mirror/gm0s1f 45970182 28596 42263972 0% /home +/dev/mirror/gm0s1d 6090094 1348356 4254532 24% /usr +/dev/mirror/gm0s1e 3045006 2241420 559986 80% /var +devfs 1 1 0 100% /var/named/dev + + Hier ist alles in Ordnung. Alle Werte sehen aus wie + erwartet. Um die Synchronisierung zu beginnen, integrieren + Sie nun die Platte da1 in den + Spiegel, indem Sie den folgenden Befehl eingeben: + + &prompt.root; gmirror insert gm0 /dev/da1 + + Während die Platten gespiegelt werden, können + Sie den Fortschritt durch die Eingabe des folgenden Befehls + überprüfen: + + &prompt.root; gmirror status + + Nachdem die Plattenspiegelung erfolgreich abgeschlossen + wurde (und alle Daten synchronisiert wurden), sollte Sie + eine Ausgabe ählich der folgenden erhalten, wenn Sie + den Befehl erneut ausführen: + + Name Status Components +mirror/gm0 COMPLETE da0 + da1 + + Sollten Probleme aufgetreten oder sollte die + Synchronisierung noch nicht abgeschlossen sein, wäre + der Status DEGRADED anstatt + COMPLETE. + + + + Fehlerbehebung + + + Das System weigert sich zu starten + + Falls das System startet und eine Eingabeaufforderung + ähnlich der folgenden erscheint: + + ffs_mountroot: can't find rootvp +Root mount failed: 6 +mountroot> + + Starten Sie den Rechner neu mit der Power- oder + Resettaste. Wählen Sie im Startmenü Option sechs + (6). Dadurch erscheint eine Eingabeaufforderung für + &man.loader.8;. Laden Sie nun das Kernelmodul + händisch: + + OK? load geom_mirror +OK? boot + + Falls dies funktioniert, wurde das Modul (aus welchen + Gründen auch immer) nicht richtig geladen. Prüfen + Sie, ob Ihr Eintrag in der Datei + /boot/loader.conf korrekt ist. Sollte + das Problem weiterhin bestehen, nehmen Sie die Zeile + + options GEOM_MIRROR + + in die Konfigurationsdatei des Kernels auf und führen + Sie einen Rebuild und eine erneute Installation durch. Dies + sollte das Problem beseitigen. + + + + + Wiederherstellung des Systems nach einem + Plattenausfall + + Das Schöne an der Plattenspiegelung ist, dass eine + kaputte Platte ersetzt werden kann, ohne dass Sie dabei + Daten verlieren. + + Basierend auf der vorhin besprochenen + RAID1-Konfiguration, nehmen wir nun an, dass + die Platte da1 ausgefallen ist und daher + ersetzt werden muss. Um dies zu tun, müssen Sie + feststellen, welche Platte ausgefallen ist und das System + herunterfahren. Nun können Sie die kaputte Platte gegen + eine neue Platte austaushen und das System wieder starten. + Nachdem der Systemstart abgeschlossen ist, verwenden Sie die + folgenden Befehle, um die Plattenspiegelung wieder zu + reaktivieren: + + &prompt.root; gmirror forget gm0 + + &prompt.root; gmirror insert gm0 /dev/da1 + + Der Befehl gmirror + erlaubt es Ihnen, den Fortschritt bei der Wiederherstellung der + Plattenspiegelung zu beobachten. Das ist alles, was Sie tun + müssen. + + + + + GEOM Gate Netzwerkgeräte + + GEOM unterstützt die Verwendung entfernter Geräte + wie Festplatten, CD-ROMs, Dateien usw. mittels Nutzung + der Gate-Dienstprogramme. Dies ist vergleichbar mit + NFS. + + Zu Beginn muss eine Exportdatei erzeugt werden. Diese + Datei legt fest, wer Zugriff auf die exportierten Ressourcen + hat und welche Zugriffstechniken angeboten werden. Um zum + Beispiel den vierten Slice auf der ersten + SCSI-Platte zu exportieren, ist die + folgende Datei /etc/gg.exports + mehr als ausreichend: + + 192.168.1.0/24 RW /dev/da0s4d + + Sie wird allen Hosts innerhalb des privaten Netzwerkes + den Zugriff auf das Dateisystem auf der Partition + da0s4d erlauben. + + Um dieses Gerät zu exportieren, stellen Sie bitte + sicher, dass es momentan nicht gemounted ist und + starten Sie den &man.ggated.8; Server-Daemon: + + &prompt.root; ggated + + Um nun mount auf der Client-Maschine + auszuführen, geben Sie bitte die folgenden Befehle + ein: + + &prompt.root; ggatec create -o rw 192.168.1.1 /dev/da0s4d +ggate0 +&prompt.root; mount /dev/ggate0 /mnt + + Von nun an kann auf das Gerät über den Mount-Punkt + /mnt zugegriffen + werden. + + + Es sollte darauf hingewiesen werden, dass dies + scheitern wird, falls das Gerät momentan entweder + auf dem Server oder irgendeiner anderen Maschine + gemountet ist. + + + 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). + + + + Das Labeln von Laufwerken + + + GEOM + + + Disk Labels + + + Während der Initialisierung des Systems legt der + &os;-Kernel für jedes gefundene Gerät Knotenpunkte + an. Diese Methode für die Überprüfung auf + vorhandene Geräte wirft einige Fragen auf. Was passiert + beispielsweise, wenn ein neues + USB-Laufwerk hinzugefügt wird? + Es ist sehr wahrscheinlich, dass ein + Flash-Speicher-Gerät den Gerätenamen + da0 erhält, während + gleichzeitig das bisherige da0 + zu da1 wird. Dies verursacht + Probleme beim Einhängen von Dateisystemen, wenn diese + in der /etc/fstab aufgeführt + sind und schlussendlich mag das auch dazu führen, + dass das System nicht mehr startet. + + Eine Lösung für dieses Problem ist das + Aneinanderketten der SCSI-Geräte, + damit ein neues Gerät, welches der + SCSI-Karte hinzugefügt wird, + unbenutzte Gerätenummern erhält. Aber was + geschieht, wenn ein USB-Gerät + möglicherweise die primäre + SCSI-Platte ersetzt? Dies kann + passieren, weil USB-Geräte + normalerweise vor der SCSI-Karte + geprüft werden. Eine Lösung ist das + Hinzufügen dieser Geräte, nachdem das System + gestartet ist. Eine andere Lösung könnte sein, + nur ein einzelnes ATA-Laufwerk zu + nutzen und die SCSI-Geräte niemals + in der /etc/fstab aufzuführen. + + Es gibt allerdings eine bessere Lösung. Durch + Verwendung des glabel-Dienstprogramms + kann ein Administrator oder Benutzer seine Laufwerke mit + Labeln versehen und diese in der /etc/fstab + nutzen. Da glabel seine Label im letzten + Sektor jedes vorhandenen Datenträgers speichert, wird + das Label persistent bleiben (auch über Neustarts hinweg). + Durch Nutzung dieses Labels als Gerät kann das + Dateisystem immer gemountet sein, unabhängig davon, + durch welchen Geräte-Knotenpunkt auf ihn zugegriffen + wird. + + + Der Label muss permanent (dauerhaft) sein. + Man kann das Dienstprogramm glabel + 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. + + + + Label-Typen und Beispiele + + 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 /dev erzeugt werden, welches + entsprechend der Dateisystem-Art benannt wird. + UFS2-Dateisystem-Label werden zum + Beispiel im Verzeichnis + /dev/ufs + angelegt. Permanente Label können außerdem durch + den Befehl glabel label erzeugt werden. + Diese Label sind dann allerdings nicht dateisystemspezisch + und werden im Unterverzeichnis /dev/label erzeugt. + + Ein temporäres Label verschwindet mit dem + nächsten Systemstart. Diese Label werden im + Verzeichnis /dev/label + erzeugt und sind ideal für Testzwecke. Ein temporäres + Label kann durch den Befehl glabel create + erzeugt werden. Weitere Informationen finden sich in der + Manualpage &man.glabel.8;. + + + + Um ein permanentes Label auf einem + UFS2-Dateisystem ohne + Löschung von Daten zu erzeugen, kann man folgenden + Befehl verwenden: + + &prompt.root; tunefs -L home /dev/da3 + + + 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. + + + Ein Label sollte nun in + /dev/ufs vorhanden + sein, der zu /etc/fstab + hinzugefügt wird: + + /dev/ufs/home /home ufs rw 2 2 + + + Das Dateisystem darf nicht gemountet sein beim + Versuch, tunefs auszuführen. + + + Nun kann das Dateisystem wie üblich gemountet + werden: + + &prompt.root; mount /home + + Von nun an kann der Geräte-Knotenpunkt sich ohne + negative Effekte auf das System ändern, solange das + Kernelmodul geom_label.ko beim + Systemstart mittels /boot/loader.conf + geladen wird oder die + GEOM_LABEL-Kernel-Option aktiv ist. + + Dateisysteme können auch mit einem Standard-Label + erzeugt werden (mittels des Flags in + newfs). Lesen Sie bitte die Manualpage + von &man.newfs.8; für weitere Informationen. + + Der folgende Befehl kann genutzt werden, um das Label + zu beseitigen: + + &prompt.root; glabel destroy home + + Das folgende Beispiel zeigt Ihnen, wie Sie Label für + die Partitionen einer Bootplatte erzeugen. + + + Die Partitionen einer Bootplatte labeln + + Durch das Erstellen von permanenten Labeln für die + Partitionen einer Bootplatte sollte das System selbst dann noch + normal starten können, wenn Sie die Platte an einen + anderen Controller anschließen oder in ein anderes + System installieren. In diesem Beispiel nehmen wir an, dass + nur eine einzige ATA-Platte verwendet wird, + die Ihr System derzeit als ad0 + erkennt. Weiters nehmen wir an, dass Sie das + Standard-Partionierungsschema von &os; vewendet haben und Ihre + Platte daher die Dateisysteme + /, + /var, + /usr sowie + /tmp aufweist. + Zusätzlich wurde eine Swap-Partition angelegt. + + Starten Sie das System neu. Am &man.loader.8;-Prompt + drücken Sie die Taste 4, um in den + Single-User-Modus zu gelangen. Dort führen Sie die + folgenden Befehle aus: + + &prompt.root; glabel label rootfs /dev/ad0s1a +GEOM_LABEL: Label for provider /dev/ad0s1a is label/rootfs +&prompt.root; glabel label var /dev/ad0s1d +GEOM_LABEL: Label for provider /dev/ad0s1d is label/var +&prompt.root; glabel label usr /dev/ad0s1f +GEOM_LABEL: Label for provider /dev/ad0s1f is label/usr +&prompt.root; glabel label tmp /dev/ad0s1e +GEOM_LABEL: Label for provider /dev/ad0s1e is label/tmp +&prompt.root; glabel label swap /dev/ad0s1b +GEOM_LABEL: Label for provider /dev/ad0s1b is label/swap +&prompt.root; exit + + Das System startet daraufhin in den Multi-User-Modus. + Nachdem der Startvorgang abgeschlossen ist, editieren Sie die + Datei /etc/fstab und ersetzen die + konventionellen Gerätedateien durch die entsprechenden + Label. Ihre modifizierte /etc/fstab + sollte nun ähnlich der folgenden Ausgabe aussehen: + + # Device Mountpoint FStype Options Dump Pass# +/dev/label/swap none swap sw 0 0 +/dev/label/rootfs / ufs rw 1 1 +/dev/label/tmp /tmp ufs rw 2 2 +/dev/label/usr /usr ufs rw 2 2 +/dev/label/var /var ufs rw 2 2 + + Starten Sie Ihr System neu. Traten keine Probleme auf, + wird das System normal hochfahren und Sie erhalten die folgende + Ausgabe, wenn Sie den Befehl mount + ausführen: + + &prompt.root; mount +/dev/label/rootfs on / (ufs, local) +devfs on /dev (devfs, local) +/dev/label/tmp on /tmp (ufs, local, soft-updates) +/dev/label/usr on /usr (ufs, local, soft-updates) +/dev/label/var on /var (ufs, local, soft-updates) + + + Beginnend mit &os; 7.2, unterstützt + &man.glabel.8; einen neuen Labeltyp für + UFS-Dateisysteme. Dieser basiert auf der + eindeutigen Dateisystem-ID ufsid. + Derartige Label finden sich im Verzeichnis + /dev/ufsid und werden + während des Systemstarts automatisch erzeugt. Es ist + möglich, diese ufsid-Label zum + automatischen Einhängen von Partitionen in der Datei + /etc/fstab einzusetzen. Verwenden Sie + den Befehl glabel status, um eine Liste + aller Dateisysteme und ihrer ufsid-Label + zu erhalten: + + &prompt.user; glabel status + Name Status Components +ufsid/486b6fc38d330916 N/A ad4s1d +ufsid/486b6fc16926168e N/A ad4s1f + + In diesem Beispiel repräsentiert + ad4s1d das + /var-Dateisystem, + während ad4s1f dem + /usr-Dateisystem + entspricht. Wenn Sie die angegebenen + ufsid-Werte verwenden, können + diese Dateisysteme durch die folgenden Einträge in + der Datei /etc/fstab gemountet + werden: + + /dev/ufsid/486b6fc38d330916 /var ufs rw 2 2 +/dev/ufsid/486b6fc16926168e /usr ufs rw 2 2 + + Jede Partition, die ein ufsid-Label + aufweist, kann auf diese Art gemountet werden. Dies hat + den Vorteil, dass Sie keine permanenten Label mehr anlegen + müssen, wobei sich die Platten nach wie vor über + geräteunabhängige Namen ansprechen und mounten + lassen. + + + + + UFS Journaling in GEOM + + + GEOM + + + Journaling + + + Mit &os; 7.0 wurde eine lang erwartete Funktion, + das UFS-Journaling, implementiert. Diese + Funktion wird über das + GEOM-Subsystem realisiert und kann + über das Werkzeug &man.gjournal.8; eingerichtet + werden. + + 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) physikalisch auf + der Festplatte ausgeführt werden. Dieses Protokoll kann + später erneut aufgerufen werden, um diese Vorgänge + zu wiederholen (beispielsweise um Systeminkonstistenzen zu + vermeiden. + + Diese Technik bietet eine weitere Möglichkeit, + sich vor Datenverlust und Dateisystem-Inkonsistenzen zu + schützen. Im Gegensatz zu Soft Updates (die + Metadaten-Aktualisierungen verfolgen und erzwingen) und + Snapshots (die ein Image eines Dateisystems darstellen) wird + bei Journaling ein tatsächliches Protokoll in einem + speziell dafür bereitgestellten Bereich der Festplatte + (oder manchmal sogar auf einer separaten Platte) + gespeichert. + + Im Gegensatz zu anderen Journaling-Dateisystemen arbeitet + die gjournal-Methode blockbasiert und wurde + nicht als Teil des Dateisystems implementiert, sondern als + GEOM-Erweiterung. + + Um die gjournal-Unterstützung zu + aktivieren, muss der &os;-Kernel die folgende Option enthalten + (was auf 7.X-Systemen bereits in der Voreinstellung der Fall + ist): + + options UFS_GJOURNAL + + Um eine Volume mit Journalunterstützung beim Systemstart + automatisch zu mounten, muss das Kernelmodul + geom_journal.ko ebenfalls automatisch geladen + werden (durch einen entsprechenden Eintrag in der Datei + /boot/loader.conf): + + geom_journal_load="YES" + + Alternativ können Sie auch einen angepassten Kernel + bauen, der diese Funktionalität enthält, indem Sie die + folgende Zeile in Ihrer Kernelkonfigurationsdatei + aufnehmen: + + options GEOM_JOURNAL + + Das Anlegen eines neuen Journals auf einem freien Dateisystem + erfolgt durch die folgenden Schritte (im Folgenden wird + angenommen, dass es sich bei da4 um + eine neue SCSI-Platte handelt): + + &prompt.root; gjournal label /dev/da4 +&prompt.root; gjournal load + + Danach sollten die Gerätedateien + /dev/da4 sowie + /dev/da4.journal vorhanden sein. Nun + können Sie auf diesem Gerät ein Dateisystem + anlegen: + + &prompt.root; newfs -O 2 -J /dev/da4.journal + + Dieser Befehl erzeugt ein + UFS2-Dateisystem, für das Journaling + aktiviert wurde. + + Danach hängen Sie das neue Dateisystem mit + mount in Ihren Verzeichnisbaum ein: + + &prompt.root; mount /dev/da4.journal /mnt + + + Falls auf Ihrem System mehrere Slices angelegt sind + (beispielsweise ad4s1 sowie + ad4s2), wird + gjournal für jedes Slice ein + Journal anlegen (also ad4s1.journal + sowie ad4s2.journal). Wird der + Befehl zweimal ausgeführt, werden auch für jedes + Slice zwei Journale angelegt. + + + Unter bestimmten Umständen ist es sinnvoll, das Journal + auf eine externe Platte auszulagern. In einem solchen Fall + geben Sie die Gerätedatei der Platte nach dem Gerät + an, für das Sie Journaling aktivieren wollen. + Theoretisch ist es auch möglich, Journaling auf bereits + existierenden Dateisystemen durch das Werkzeug + tunefs zu aktivieren. Machen Sie aber + in jedem Fall ein Backup Ihrer Daten, bevor Sie versuchen, + ein existierendes Dateisystem zu ändern. + gjournal wird zwar den Vorgang abbrechen, + wenn es das Journal nicht erzeugen kann, allerdings schützt + Sie dies nicht vor Datenverlust durch einen fehlerhaften Einsatz + von tunefs. + + Es ist möglich, Journale auch für die Bootplatte + eines &os;-System zu verwenden. Lesen Sie bitte den Artikel + + Implementing UFS Journaling on a Desktop PC, wenn Sie + an einer derartigen Konfiguration interessiert sind. + -- cgit v1.2.3