Index: head/de_DE.ISO8859-1/books/handbook/Makefile
===================================================================
--- head/de_DE.ISO8859-1/books/handbook/Makefile (revision 52142)
+++ head/de_DE.ISO8859-1/books/handbook/Makefile (revision 52143)
@@ -1,258 +1,259 @@
#
# $FreeBSD$
# $FreeBSDde: de-docproj/books/handbook/Makefile,v 1.67 2011/12/31 12:27:25 bcr Exp $
-# basiert auf: r47275
+# basiert auf: r51744
#
# Build the FreeBSD Handbook in its German translation.
#
# ------------------------------------------------------------------------
#
# To add a new chapter to the Handbook:
#
# - Update this Makefile, chapters.ent and book.xml
# - Add a descriptive entry for the new chapter in preface/preface.xml
#
# ------------------------------------------------------------------------
.PATH: ${.CURDIR}/../../share/xml/glossary
MAINTAINER=de-bsd-translators@de.FreeBSD.org
DOC?= book
FORMATS?= html-split
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
IMAGES_EN = advanced-networking/isdn-bus.eps
IMAGES_EN+= advanced-networking/isdn-twisted-pair.eps
IMAGES_EN+= advanced-networking/natd.eps
IMAGES_EN+= advanced-networking/net-routing.pic
IMAGES_EN+= advanced-networking/pxe-nfs.png
IMAGES_EN+= advanced-networking/static-routes.pic
IMAGES_EN+= basics/disk-layout.eps
IMAGES_EN+= basics/example-dir1.eps
IMAGES_EN+= basics/example-dir2.eps
IMAGES_EN+= basics/example-dir3.eps
IMAGES_EN+= basics/example-dir4.eps
IMAGES_EN+= basics/example-dir5.eps
IMAGES_EN+= bsdinstall/bsdinstall-adduser1.png
IMAGES_EN+= bsdinstall/bsdinstall-adduser2.png
IMAGES_EN+= bsdinstall/bsdinstall-adduser3.png
IMAGES_EN+= bsdinstall/bsdinstall-boot-loader-menu.png
IMAGES_EN+= bsdinstall/bsdinstall-boot-options-menu.png
IMAGES_EN+= bsdinstall/bsdinstall-choose-mode.png
IMAGES_EN+= bsdinstall/bsdinstall-config-components.png
IMAGES_EN+= bsdinstall/bsdinstall-config-hostname.png
IMAGES_EN+= bsdinstall/bsdinstall-config-keymap.png
IMAGES_EN+= bsdinstall/bsdinstall-config-services.png
IMAGES_EN+= bsdinstall/bsdinstall-config-crashdump.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-network-interface-ipv4-dhcp.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-network-interface-ipv4.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-network-interface-ipv4-static.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-network-interface-ipv6.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-network-interface-ipv6-static.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-network-interface-slaac.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-network-interface.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-network-ipv4-dns.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-wireless-accesspoints.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-wireless-scan.png
IMAGES_EN+= bsdinstall/bsdinstall-configure-wireless-wpa2setup.png
IMAGES_EN+= bsdinstall/bsdinstall-distfile-extracting.png
IMAGES_EN+= bsdinstall/bsdinstall-distfile-fetching.png
IMAGES_EN+= bsdinstall/bsdinstall-distfile-verifying.png
IMAGES_EN+= bsdinstall/bsdinstall-final-confirmation.png
IMAGES_EN+= bsdinstall/bsdinstall-finalconfiguration.png
IMAGES_EN+= bsdinstall/bsdinstall-final-modification-shell.png
IMAGES_EN+= bsdinstall/bsdinstall-keymap-10.png
IMAGES_EN+= bsdinstall/bsdinstall-keymap-select-default.png
IMAGES_EN+= bsdinstall/bsdinstall-mainexit.png
IMAGES_EN+= bsdinstall/bsdinstall-netinstall-files.png
IMAGES_EN+= bsdinstall/bsdinstall-netinstall-mirrorselect.png
IMAGES_EN+= bsdinstall/bsdinstall-newboot-loader-menu.png
IMAGES_EN+= bsdinstall/bsdinstall-part-entire-part.png
IMAGES_EN+= bsdinstall/bsdinstall-part-guided-disk.png
IMAGES_EN+= bsdinstall/bsdinstall-part-guided-manual.png
IMAGES_EN+= bsdinstall/bsdinstall-part-manual-addpart.png
IMAGES_EN+= bsdinstall/bsdinstall-part-manual-create.png
IMAGES_EN+= bsdinstall/bsdinstall-part-manual-partscheme.png
IMAGES_EN+= bsdinstall/bsdinstall-part-review.png
IMAGES_EN+= bsdinstall/bsdinstall-post-root-passwd.png
IMAGES_EN+= bsdinstall/bsdinstall-set-clock-local-utc.png
IMAGES_EN+= bsdinstall/bsdinstall-timezone-confirm.png
IMAGES_EN+= bsdinstall/bsdinstall-timezone-country.png
IMAGES_EN+= bsdinstall/bsdinstall-timezone-region.png
IMAGES_EN+= bsdinstall/bsdinstall-timezone-zone.png
IMAGES_EN+= bsdinstall/bsdinstall-zfs-disk_info.png
IMAGES_EN+= bsdinstall/bsdinstall-zfs-disk_select.png
IMAGES_EN+= bsdinstall/bsdinstall-zfs-geli_password.png
IMAGES_EN+= bsdinstall/bsdinstall-zfs-menu.png
IMAGES_EN+= bsdinstall/bsdinstall-zfs-partmenu.png
IMAGES_EN+= bsdinstall/bsdinstall-zfs-vdev_invalid.png
IMAGES_EN+= bsdinstall/bsdinstall-zfs-vdev_type.png
IMAGES_EN+= bsdinstall/bsdinstall-zfs-warning.png
IMAGES_EN+= geom/striping.pic
IMAGES_EN+= mail/mutt1.scr
IMAGES_EN+= mail/mutt2.scr
IMAGES_EN+= mail/mutt3.scr
IMAGES_EN+= mail/pine1.scr
IMAGES_EN+= mail/pine2.scr
IMAGES_EN+= mail/pine3.scr
IMAGES_EN+= mail/pine4.scr
IMAGES_EN+= mail/pine5.scr
IMAGES_EN+= security/ipsec-network.pic
IMAGES_EN+= security/ipsec-crypt-pkt.pic
IMAGES_EN+= security/ipsec-encap-pkt.pic
IMAGES_EN+= security/ipsec-out-pkt.pic
IMAGES_EN+= virtualization/parallels-freebsd1.png
IMAGES_EN+= virtualization/parallels-freebsd2.png
IMAGES_EN+= virtualization/parallels-freebsd3.png
IMAGES_EN+= virtualization/parallels-freebsd4.png
IMAGES_EN+= virtualization/parallels-freebsd5.png
IMAGES_EN+= virtualization/parallels-freebsd6.png
IMAGES_EN+= virtualization/parallels-freebsd7.png
IMAGES_EN+= virtualization/parallels-freebsd8.png
IMAGES_EN+= virtualization/parallels-freebsd9.png
IMAGES_EN+= virtualization/parallels-freebsd10.png
IMAGES_EN+= virtualization/parallels-freebsd11.png
IMAGES_EN+= virtualization/parallels-freebsd12.png
IMAGES_EN+= virtualization/parallels-freebsd13.png
IMAGES_EN+= virtualization/virtualpc-freebsd1.png
IMAGES_EN+= virtualization/virtualpc-freebsd2.png
IMAGES_EN+= virtualization/virtualpc-freebsd3.png
IMAGES_EN+= virtualization/virtualpc-freebsd4.png
IMAGES_EN+= virtualization/virtualpc-freebsd5.png
IMAGES_EN+= virtualization/virtualpc-freebsd6.png
IMAGES_EN+= virtualization/virtualpc-freebsd7.png
IMAGES_EN+= virtualization/virtualpc-freebsd8.png
IMAGES_EN+= virtualization/virtualpc-freebsd9.png
IMAGES_EN+= virtualization/virtualpc-freebsd10.png
IMAGES_EN+= virtualization/virtualpc-freebsd11.png
IMAGES_EN+= virtualization/virtualpc-freebsd12.png
IMAGES_EN+= virtualization/virtualpc-freebsd13.png
IMAGES_EN+= virtualization/vmware-freebsd01.png
IMAGES_EN+= virtualization/vmware-freebsd02.png
IMAGES_EN+= virtualization/vmware-freebsd03.png
IMAGES_EN+= virtualization/vmware-freebsd04.png
IMAGES_EN+= virtualization/vmware-freebsd05.png
IMAGES_EN+= virtualization/vmware-freebsd06.png
IMAGES_EN+= virtualization/vmware-freebsd07.png
IMAGES_EN+= virtualization/vmware-freebsd08.png
IMAGES_EN+= virtualization/vmware-freebsd09.png
IMAGES_EN+= virtualization/vmware-freebsd10.png
IMAGES_EN+= virtualization/vmware-freebsd11.png
IMAGES_EN+= virtualization/vmware-freebsd12.png
# Images from the cross-document image library
IMAGES_LIB= callouts/1.png
IMAGES_LIB+= callouts/2.png
IMAGES_LIB+= callouts/3.png
IMAGES_LIB+= callouts/4.png
IMAGES_LIB+= callouts/5.png
IMAGES_LIB+= callouts/6.png
IMAGES_LIB+= callouts/7.png
IMAGES_LIB+= callouts/8.png
IMAGES_LIB+= callouts/9.png
IMAGES_LIB+= callouts/10.png
IMAGES_LIB+= callouts/11.png
IMAGES_LIB+= callouts/12.png
IMAGES_LIB+= callouts/13.png
IMAGES_LIB+= callouts/14.png
IMAGES_LIB+= callouts/15.png
#
# SRCS lists the individual XML files that make up the document. Changes
# to any of these files will force a rebuild
#
# XML content
SRCS+= audit/chapter.xml
SRCS+= book.xml
SRCS+= bsdinstall/chapter.xml
SRCS+= colophon.xml
SRCS+= advanced-networking/chapter.xml
SRCS+= basics/chapter.xml
SRCS+= bibliography/chapter.xml
SRCS+= boot/chapter.xml
SRCS+= config/chapter.xml
SRCS+= cutting-edge/chapter.xml
SRCS+= desktop/chapter.xml
SRCS+= disks/chapter.xml
SRCS+= dtrace/chapter.xml
SRCS+= eresources/chapter.xml
SRCS+= filesystems/chapter.xml
SRCS+= firewalls/chapter.xml
SRCS+= zfs/chapter.xml
SRCS+= geom/chapter.xml
SRCS+= introduction/chapter.xml
SRCS+= jails/chapter.xml
SRCS+= kernelconfig/chapter.xml
SRCS+= l10n/chapter.xml
SRCS+= linuxemu/chapter.xml
SRCS+= mac/chapter.xml
SRCS+= mail/chapter.xml
SRCS+= mirrors/chapter.xml
SRCS+= multimedia/chapter.xml
SRCS+= network-servers/chapter.xml
SRCS+= pgpkeys/chapter.xml
SRCS+= ports/chapter.xml
SRCS+= ppp-and-slip/chapter.xml
SRCS+= preface/preface.xml
SRCS+= printing/chapter.xml
SRCS+= security/chapter.xml
SRCS+= serialcomms/chapter.xml
+SRCS+= usb-device-mode/chapter.xml
SRCS+= virtualization/chapter.xml
SRCS+= x11/chapter.xml
# Entities
SRCS+= chapters.ent
# alle Kapitel bauen
CHAPTERS?= ${SRCS:M*chapter.xml}
XMLFLAGS+= ${CHAPTERS:S/\/chapter.xml//:S/^/-i chap./}
XMLFLAGS+= -i chap.freebsd-glossary
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
#
# rules generating lists of mirror site from XML database.
#
XMLDOCS= lastmod:::mirrors.lastmod.inc \
mirrors-ftp-index:::mirrors.xml.ftp.index.inc \
mirrors-ftp:::mirrors.xml.ftp.inc \
eresources-index:::eresources.xml.www.index.inc \
eresources:::eresources.xml.www.inc
DEPENDSET.DEFAULT= transtable mirror
XSLT.DEFAULT= ${XSL_MIRRORS}
XML.DEFAULT= ${XML_MIRRORS}
PARAMS.lastmod+= --param 'target' "'lastmod'"
PARAMS.mirrors-ftp-index+= --param 'type' "'ftp'" \
--param 'proto' "'ftp'" \
--param 'target' "'index'"
PARAMS.mirrors-ftp+= --param 'type' "'ftp'" \
--param 'proto' "'ftp'" \
--param 'target' "'handbook/mirrors/chapter.xml'"
PARAMS.eresources-index+= --param 'type' "'www'" \
--param 'proto' "'http'" \
--param 'target' "'index'"
PARAMS.eresources+= --param 'type' "'www'" \
--param 'proto' "'http'" \
--param 'target' "'handbook/eresources/chapter.xml'"
EXTRAS= mirrors.lastmod.inc \
mirrors.xml.ftp.inc \
mirrors.xml.ftp.index.inc \
eresources.xml.www.inc \
eresources.xml.www.index.inc
XMLDOCS_NO_SRCS=YES
CLEANFILES+= ${EXTRAS}
_extras: ${EXTRAS}
mirrors/chapter.xml: ${EXTRAS}
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
Index: head/de_DE.ISO8859-1/books/handbook/book.xml
===================================================================
--- head/de_DE.ISO8859-1/books/handbook/book.xml (revision 52142)
+++ head/de_DE.ISO8859-1/books/handbook/book.xml (revision 52143)
@@ -1,334 +1,335 @@
%chapters;
%txtfiles;
]>
&os; HandbuchThe FreeBSD German Documentation Project$FreeBSD$$FreeBSD$199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018The FreeBSD German Documentation Project
&legalnotice;
&tm-attrib.freebsd;
&tm-attrib.3com;
&tm-attrib.3ware;
&tm-attrib.arm;
&tm-attrib.adaptec;
&tm-attrib.adobe;
&tm-attrib.apple;
&tm-attrib.corel;
&tm-attrib.google;
&tm-attrib.heidelberger;
&tm-attrib.ibm;
&tm-attrib.ieee;
&tm-attrib.intel;
&tm-attrib.intuit;
&tm-attrib.linux;
&tm-attrib.lsilogic;
&tm-attrib.microsoft;
&tm-attrib.opengroup;
&tm-attrib.oracle;
&tm-attrib.powerquest;
&tm-attrib.realnetworks;
&tm-attrib.redhat;
&tm-attrib.sun;
&tm-attrib.symantec;
&tm-attrib.themathworks;
&tm-attrib.thomson;
&tm-attrib.vmware;
&tm-attrib.wolframresearch;
&tm-attrib.xfree86;
&tm-attrib.xiph;
&tm-attrib.general;
Willkommen bei &os;! Dieses Handbuch beschreibt die
Installation und den täglichen Umgang mit
&os; &rel.current;-RELEASE und
&os; &rel2.current;-RELEASE. Das
Handbuch ist das Ergebnis einer fortlaufenden Arbeit vieler
Einzelpersonen. Dies kann dazu führen, dass einige Abschnitte
nicht aktuell sind. Bei Unklarheiten empfiehlt es sich daher
stets, die
englische Originalversion des Handbuchs zu
lesen.Wenn Sie bei der Übersetzung des Handbuchs mithelfen
möchten, senden Sie bitte eine E-Mail an die Mailingliste
&a.de.translators;.Die aktuelle Version des Handbuchs ist immer auf dem &os;-Webserver
verfügbar und kann in verschiedenen Formaten und in
komprimierter Form vom &os;
FTP-Server oder einem der vielen Spiegel herunter geladen werden
(ältere Versionen finden Sie hingegen unter https://docs.FreeBSD.org/doc/).
Vielleicht möchten Sie das Handbuch aber auch durchsuchen.
&chap.preface;
Erste SchritteDieser Teil des Handbuchs richtet sich an Benutzer
und Administratoren für die &os; neu ist. Diese
Kapitelenthalten eine Einführung in &os;,geleitet den Leser durch den
Installationsprozess,erklärt die Grundlagen von &unix; Systemen,demonstriert, wie die Fülle der erhältlichen
Anwendungen Dritter installiert werden undführt den Leser in X, der Benutzeroberfläche
von &unix; Systemen ein. Es wird gezeigt, wie ein
Desktop konfiguriert wird, um effektiver arbeiten
zu können.Referenzen auf weiter vorne liegende Textteile wurden auf
ein Minimum beschränkt, so dass dieser Abschnitt ohne viel
Blättern durchgearbeitet werden kann.
&chap.introduction;
&chap.bsdinstall;
&chap.basics;
&chap.ports;
&chap.x11;
Oft benutzte FunktionenNach den Grundlagen beschäftigt sich das
Handbuch mit oft benutzten Funktionen von
&os;. Die Kapitel behandeln die nachstehenden
Themen:Beliebte und nützliche Werkzeuge wie Browser,
Büroanwendungen und Programme zum Anzeigen von
Dokumenten.Multimedia-Werkzeuge für &os;.Erstellung eines angepassten &os;-Kernels,
um zusätzliche Funktionen zu aktivieren.Ausführliche Beschreibung des Drucksystems,
sowohl für direkt angeschlossene Drucker als
auch für Netzwerkdrucker.Ausführung von Linux-Anwendungen auf einem
&os;-System.Damit Sie einige Kapitel verstehen, sollten Sie vorher
andere Kapitel gelesen haben. Die Übersicht zu jedem
Kapitel zählt die Voraussetzungen für das
erolgreiche Durcharbeiten des Kapitels auf.
&chap.desktop;
&chap.multimedia;
&chap.kernelconfig;
&chap.printing;
&chap.linuxemu;
SystemadministrationDie restlichen Kapitel behandeln alle Aspekte der &os;
Systemadministration. Am Anfang jedes Kapitels finden Sie
eine Zusammenfassung, die beschreibt, was Sie nach dem
Durcharbeiten des Kapitels gelernt haben. Weiterhin werden
die Voraussetzungen beschrieben, die für das Durcharbeiten des
Kapitels erforderlich sind.Diese Kapitel sollten Sie lesen, wenn Sie die
Informationen darin benötigen. Sie brauchen Sie nicht in
einer bestimmten Reihenfolge zu lesen, noch müssen Sie die
Kapitel lesen, bevor Sie anfangen, &os; zu benutzen.
&chap.config;
&chap.boot;
&chap.security;
&chap.jails;
&chap.mac;
&chap.audit;
&chap.disks;
&chap.geom;
&chap.zfs;
&chap.filesystems;
&chap.virtualization;
&chap.l10n;
&chap.cutting-edge;
&chap.dtrace;
+ &chap.usb-device-mode;
Netzwerke&os; ist eins der meist benutzten Betriebssysteme
für leistungsfähige Netzwerkserver. Die
Kapitel in diesem Teil behandeln die nachstehenden
Themen:Serielle DatenübertragungPPP und PPP over
EthernetElektronische Post (E-Mail)Den Betrieb von NetzwerkdienstenFirewallsWeiterführende NetzwerkthemenDiese Kapitel sollten Sie lesen, wenn Sie die
Informationen darin benötigen. Sie brauchen die Kapitel nicht
in einer bestimmten Reihenfolge zu lesen, noch müssen Sie die
Kapitel lesen, bevor Sie anfangen, &os; in einer
Netzwerkumgebung zu benutzen.
&chap.serialcomms;
&chap.ppp-and-slip;
&chap.mail;
&chap.network-servers;
&chap.firewalls;
&chap.advanced-networking;
Anhang
&chap.mirrors;
&chap.bibliography;
&chap.eresources;
&chap.pgpkeys;
&chap.freebsd-glossary;
&chap.index;
&chap.colophon;
Index: head/de_DE.ISO8859-1/books/handbook/chapters.ent
===================================================================
--- head/de_DE.ISO8859-1/books/handbook/chapters.ent (revision 52142)
+++ head/de_DE.ISO8859-1/books/handbook/chapters.ent (revision 52143)
@@ -1,73 +1,74 @@
%pgpkeys;
+
">
Index: head/de_DE.ISO8859-1/books/handbook/disks/chapter.xml
===================================================================
--- head/de_DE.ISO8859-1/books/handbook/disks/chapter.xml (revision 52142)
+++ head/de_DE.ISO8859-1/books/handbook/disks/chapter.xml (revision 52143)
@@ -1,4101 +1,3967 @@
SpeichermedienBerndWarkenÜbersetzt von MartinHeinenÜbersichtDieses Kapitel behandelt die Benutzung von Laufwerken unter
&os;. Hierzu zählen SCSI- und
IDE-Geräte, CD- und
DVD-Medien, speicherbasierte Laufwerke und
USB-Geräte.Nachdem Sie dieses Kapitel gelesen haben, werden Sie
Folgendes wissen:Wie Sie zusätzliche Laufwerke zu einem &os;-System
hinzufügen.Wie Sie unter &os; die Partition einer Festplatte
vergrößern.Wie Sie &os; zur Verwendung von
USB-Speichermedien konfigurieren.Wie Sie CD- und
DVD-Medien unter &os; benutzen.Wie Sie die unter &os; erhältlichen Backup-Programme
benutzen.Wie Sie RAM-Disks einrichten.Was Dateisystem-Schnappschüsse sind und wie sie
effizient eingesetzt werden.Wie Sie mit Quotas die Benutzung von Laufwerken
einschränken.Wie Sie Festplatten und Swap verschlüsseln, um Daten
vor Angreifern zu schützen.Wie Sie ein hochverfügbares Speichernetzwerk
konfigurieren.Bevor Sie dieses Kapitel lesen,sollten Sie wissen, wie Sie einen
neuen &os;-Kernel konfigurieren
und installieren.Hinzufügen von LaufwerkenDavidO'BrianIm Original von LaufwerkehinzufügenDieser Abschnitt beschreibt, wie Sie ein neues
SATA-Laufwerk zu einer Maschine
hinzufügen, die momentan nur ein Laufwerk hat. Dazu schalten
Sie zuerst den Rechner aus und installieren das Laufwerk
entsprechend der Anleitungen Ihres Rechners, Ihres Controllers
und des Laufwerkherstellers. Starten Sie das System neu und
melden Sie sich als Benutzer
root an.Kontrollieren Sie /var/run/dmesg.boot,
um sicherzustellen, dass das neue Laufwerk gefunden wurde. In
diesem Beispiel erscheint das neu hinzugefügte
SATA-Laufwerk als
ada1.PartitionengpartIn diesem Beispiel wird eine einzige große Partition auf der
Festplatte erstellt. Verwendet wird das
GPT-Partitionsschema, welches
gegenüber dem älteren und weniger vielseitigen
MBR-Schema bevorzug wird.Wenn die hinzugefügte Festplatte nicht leer ist, können
alte Partitionsinformationen mit
gpart delete entfernt werden. Details
finden Sie in &man.gpart.8;.Zuerst wird das Partitionsschema erstellt und dann eine
einzelne Partition angefügt. Zur Verbesserung der Leistung auf
neueren Festplatten mit größeren Blockgrößen, wird die
Partition an einer Megabyte-Grenze ausgerichtet:&prompt.root; gpart create -s GPT ada1
&prompt.root; gpart add -t freebsd-ufs -a 1M ada1Je nach Anwendung kann es wünschenswert sein, mehrere
kleinere Partitionen zu haben. In &man.gpart.8; finden Sie
Optionen zum Erstellen von kleineren Partitionen.Informationen über die Partitionen der Festplatte werden mit
gpart show angezeigt:&prompt.user; gpart show ada1
=> 34 1465146988 ada1 GPT (699G)
34 2014 - free - (1.0M)
2048 1465143296 1 freebsd-ufs (699G)
1465145344 1678 - free - (839K)Ein Dateisystem wird in der neuen Partition erstellt:&prompt.root; newfs -U /dev/ada1p1Ein leeres Verzeichnis wird als Mountpunkt erstellt, also
ein Speicherort für die Montage der neuen Festplatte im
originalen Dateisystem:&prompt.root; mkdir /newdiskAbschließend wird ein Eintrag in
/etc/fstab hinzugefügt, damit die neue
Festplatte automatisch beim Start eingehängt wird:/dev/ada1p1 /newdisk ufs rw 2 2Die neue Festplatte kann manuell montiert werden, ohne das
System neu zu starten:&prompt.root; mount /newdiskPartitionen vergrößernAllanJudeBeigetragen von BjörnHeidottingÜbersetzt von PartitionenvergrößernDie Kapazität einer Festplatte kann sich ohne Änderungen
an bereits vorhandenen Daten erhöhen. Dies geschieht
üblicherweise mit virtuellen Maschinen, wenn sich herausstellt,
dass die virtuelle Festplatte zu klein ist und vergrößert werden
soll. Zuweilen wird auch ein Abbild einer Platte auf einen
USB-Stick geschrieben, ohne dabei die volle
Kapazität zu nutzen. Dieser Abschnitt beschreibt, wie man
Platten vergrößert, bzw. erweitert, um die
Vorteile der erhöhten Kapazität zu nutzen.Überprüfen Sie /var/run/dmesg.boot, um
den Gerätenamen der Festplatte zu bestimmen, die vergrößert
werden soll. In diesem Beispiel gibt es nur eine
SATA-Festplatte im System, so dass die Platte
als ada0 angezeigt wird.PartitionengpartUm die aktuelle Konfiguration der Partitionen auf der
Festplatte anzuzeigen:&prompt.root; gpart show ada0
=> 34 83886013 ada0 GPT (48G) [CORRUPT]
34 128 1 freebsd-boot (64k)
162 79691648 2 freebsd-ufs (38G)
79691810 4194236 3 freebsd-swap (2G)
83886046 1 - free - (512B)Wenn die Festplatte mit dem
GPT-Partitionsschema formatiert
wurde kann es vorkommen, dass sie als
corrupted angezeigt wird, weil sich die
Sicherung der GPT-Partitionstabellen nicht
mehr am Ende des Laufwerks befinden. Reparieren Sie in so
einem Fall die Partitionstabelle mit
gpart:&prompt.root; gpart recover ada0
ada0 recoveredNun steht der zusätzliche Speicherplatz zur Verfügung und
kann verwendet werden, um eine neue Partition anzulegen oder
eine bestehende Partition zu erweitern:&prompt.root; gpart show ada0
=> 34 102399933 ada0 GPT (48G)
34 128 1 freebsd-boot (64k)
162 79691648 2 freebsd-ufs (38G)
79691810 4194236 3 freebsd-swap (2G)
83886046 18513921 - free - (8.8G)Partitionen können nur auf zusammenhängenden, freien
Speicherplatz vergrößert werden. In diesem Beispiel wird die
letzte Partition der Platte als Swap-Speicher genutzt, aber die
zweite Partition ist die, dessen Größe verändert werden soll.
Weil der Swap-Speicher nur temporäre Daten enthält, kann er
gefahrlos ausgehangen, gelöscht und nachdem die zweite Partition
vergrößert wurde, als dritte Partition neu erstellt werden.Deaktivieren Sie Swap-Speicher Partition:&prompt.root; swapoff /dev/ada0p3Löschen Sie die dritte Partition, angegeben mit dem Schalter
, der Festplatte
ada0:&prompt.root; gpart delete -i 3ada0
ada0p3 deleted
&prompt.root; gpart show ada0
=> 34 102399933 ada0 GPT (48G)
34 128 1 freebsd-boot (64k)
162 79691648 2 freebsd-ufs (38G)
79691810 22708157 - free - (10G)Es besteht die Gefahr von Datenverlust, wenn die
Partitionstabelle eines eingehangenen Dateisystems verändert
wird. Es empfiehlt sich daher, die folgenden Schritte auf
einem ausgehangenen Dateisystem durchzuführen, während die
Umsetzung über eine Live-CD-ROM oder
von einem USB-Gerät erfolgt. Wenn es
jedoch absolut notwendig ist, kann ein eingehangenes
Dateisystem auch vergrößert werden, nachdem die
Sicherheitsfunktionen von GEOM deaktiviert wurden:&prompt.root; sysctl kern.geom.debugflags=16Vergrößern Sie die Partition und lassen Sie Platz, um die
Swap-Partition in der gewünschten Größe neu erstellen zu können.
Die zu ändernde Partition wird mit und die
neue gewünschte Größe mit angegeben.
Optional wird die Ausrichtung der Partition mit
festgelegt. Dieser Schritt ändert nur die
Größe der Partition. Das Dateisystem innerhalb der Partition
wird in einem separaten Schritt erweitert.&prompt.root; gpart resize -i 2 -s 47G -a 4k ada0
ada0p2 resized
&prompt.root; gpart show ada0
=> 34 102399933 ada0 GPT (48G)
34 128 1 freebsd-boot (64k)
162 98566144 2 freebsd-ufs (47G)
98566306 3833661 - free - (1.8G)Erstellen Sie die Swap-Partition neu und aktivieren Sie
sie:&prompt.root; gpart add -t freebsd-swap -a 4k ada0
ada0p3 added
&prompt.root; gpart show ada0
=> 34 102399933 ada0 GPT (48G)
34 128 1 freebsd-boot (64k)
162 98566144 2 freebsd-ufs (47G)
98566306 3833661 3 freebsd-swap (1.8G)
&prompt.root; swapon /dev/ada0p3Erweitern Sie das UFS-Dateisystem, um die
Kapazität der vergrößerten Partition zu nutzen:&prompt.root; growfs /dev/ada0p2
Device is mounted read-write; resizing will result in temporary write suspension for /.
It's strongly recommended to make a backup before growing the file system.
OK to grow file system on /dev/ada0p2, mounted on /, from 38GB to 47GB? [Yes/No] Yes
super-block backups (for fsck -b #) at:
80781312, 82063552, 83345792, 84628032, 85910272, 87192512, 88474752,
89756992, 91039232, 92321472, 93603712, 94885952, 96168192, 97450432Wenn das Dateisystem ZFS ist, wird die
Größenänderung mit dem Unterkommando und
ausgelöst:&prompt.root; zfs online -e zroot/dev/ada0p2Sowohl die Partition als auch das Dateisystem wurden jetzt
vergrößert, um den neu zur Verfügung stehenden Speicherplatz zu
nutzen.USB SpeichermedienMarcFonvieilleBeigetragen von USBSpeichermedienDer Universal Serial Bus (USB) wird
von vielen externen Speichern benutzt: Festplatten,
USB-Thumbdrives sowie von
CD- und DVD-Brennern.
&os; bietet Unterstützung für Geräte mit USB
1.x, 2.0 und 3.0.Die Unterstützung für USB 3.0 ist mit
einiger Hardware, einschließlich Haswell (Lynx Point)
Chipsätzen, nicht kompatibel. Wenn &os; beim Booten mit dem
Fehler failed with error 19 abbricht,
müssen Sie xHCI/USB3 im BIOS
deaktivieren.Unterstützung für USB-Massenspeicher ist
im GENERIC-Kernel enthalten. Für einen
angepassten Kernel müssen die nachstehenden Zeilen in der
Kernelkonfigurationsdatei enthalten sein:device scbus # SCSI bus (required for ATA/SCSI)
device da # Direct Access (disks)
device pass # Passthrough device (direct ATA/SCSI access)
device uhci # provides USB 1.x support
device ohci # provides USB 1.x support
device ehci # provides USB 2.0 support
device xhci # provides USB 3.0 support
device usb # USB Bus (required)
device umass # Disks/Mass storage - Requires scbus and da
device cd # needed for CD and DVD burners&os; benutzt den &man.umass.4;-Treiber, der das
SCSI-Subsystem verwendet um auf
USB-Geräte zuzugreifen. Da alle
USB-Geräte vom System als
SCSI-Geräte erkannt werden, dürfen Sie
nicht
in die Kernelkonfigurationsdatei aufnehmen, wenn es sich bei
dem Gerät um einen CD- oder
DVD-Brenner handelt.Der übrige Abschnitt beschreibt, wie Sie überprüfen können
ob ein USB-Gerät von &os; erkannt wird und
wie Sie das Gerät so konfigurieren, dass es verwendet werden
kann.Konfiguration von GerätenUm die USB-Konfiguration zu testen,
schließen Sie das USB-Gerät an.
Verwenden Sie dmesg um zu überprüfen, ob
das Gerät in den Systemmeldungen erscheint. Dies sollte in
etwa so aussehen:umass0: <STECH Simple Drive, class 0/0, rev 2.00/1.04, addr 3> on usbus0
umass0: SCSI over Bulk-Only; quirks = 0x0100
umass0:4:0:-1: Attached to scbus4
da0 at umass-sim0 bus 0 scbus4 target 0 lun 0
da0: <STECH Simple Drive 1.04> Fixed Direct Access SCSI-4 device
da0: Serial Number WD-WXE508CAN263
da0: 40.000MB/s transfers
da0: 152627MB (312581808 512 byte sectors: 255H 63S/T 19457C)
da0: quirks=0x2<NO_6_BYTE>Fabrikat, Gerätedatei (da0),
Geschwindigkeit und Kapazität werden je nach Gerät
unterschiedlich sein.Da ein USB-Gerät als
SCSI-Gerät erkannt wird, kann
camcontrol benutzt werden, um die mit dem
System verbundenen USB-Massenspeicher
anzuzeigen:&prompt.root; camcontrol devlist
<STECH Simple Drive 1.04> at scbus4 target 0 lun 0 (pass3,da0)Alternativ kann usbconfig benutzt
werden, um die Geräte aufzulisten. Weitere Informationen zu
diesem Kommando finden Sie in &man.usbconfig.8;.&prompt.root; usbconfig
ugen0.3: <Simple Drive STECH> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (2mA)Wenn das Gerät noch nicht formatiert ist, finden Sie in
Informationen, wie Sie
USB-Laufwerke formatieren und Partitionen
einrichten. Wenn das Laufwerk bereits ein Dateisystem
enthält, kann es von root nach den Anweisungen in
eingehängt werden.Aus Sicherheitsgründen sollten Sie Benutzern, denen Sie
nicht vertrauen, das Einhängen (z.B. durch die unten
beschriebene Aktivierung von
vfs.usermount) beliebiger Medien
verbieten. Die meisten Dateisysteme wurden nicht
entwickelt, um sich vor böswilligen Geräten zu
schützen.Um auch normalen Anwendern das Einhängen des Laufwerks zu
gestatten, könnten Sie beispielsweise mit &man.pw.8; alle
potentiellen Benutzer dieser Gerätedateien in die Gruppe
operator aufnehmen.
Außerdem muss sichergestellt werden, dass operator
Schreib- und Lesezugriff auf diese Gerätedateien haben.
Hierfür werden die folgenden Zeilen in
/etc/devfs.rules hinzugefügt:[localrules=5]
add path 'da*' mode 0660 group operatorVerfügt das System über interne
SCSI-Laufwerke, so verändern Sie die
zweite Zeile wie folgt:add path 'da[3-9]*' mode 0660 group operatorDies wird die ersten drei
SCSI-Laufwerke (da0
bis da2) davon ausschließen, in die
Gruppe operator
aufgenommen zu werden. Ersetzen Sie 3
durch die Anzahl der SCSI-Laufwerke.
Weitere Informationen zu dieser Datei finden Sie in
&man.devfs.rules.5;.Aktivieren Sie nun die Regeln
in /etc/rc.conf:devfs_system_ruleset="localrules"Als nächstes müssen Sie das System anweisen, auch
normalen Benutzern das mounten von Dateisystemen zu erlauben,
indem Sie die folgende Zeile in
/etc/sysctl.conf hinzufügen:vfs.usermount=1Da diese Einstellung erst nach einem Neustart wirksam
wird, können Sie diese Variable mit sysctl
auch direkt setzen:&prompt.root; sysctl vfs.usermount=1
vfs.usermount: 0 -> 1Zuletzt müssen Sie noch ein Verzeichnis anlegen, in
das das USB-Laufwerk eingehängt werden
soll. Dieses Verzeichnis muss dem Benutzer gehören, der das
USB-Laufwerk in den Verzeichnisbaum
einhängen will. Dazu legen Sie als root ein
Unterverzeichnis
/mnt/username
an, wobei Sie username
durch den Login des jeweiligen Benutzers sowie
usergroup durch die primäre
Gruppe des Benutzers ersetzen:&prompt.root; mkdir /mnt/username
&prompt.root; chown username:usergroup /mnt/usernameWenn Sie nun beispielsweise einen
USB-Stick
anschließen, wird automatisch die Gerätedatei
/dev/da0s1 erzeugt. Ist das Gerät mit
einem FAT-Dateisystem formatiert, kann es
der Benutzer mit dem folgenden Befehl in den Verzeichnisbaum
einhängen:&prompt.user; mount -t msdosfs -o -m=644,-M=755 /dev/da0s1 /mnt/usernameBevor das Gerät entfernt werden kann,
muss es abgehängt werden:&prompt.root; umount /mnt/usernameNach Entfernen des Geräts stehen in den Systemmeldungen
Einträge, ähnlich der folgenden:umass0: at uhub3, port 2, addr 3 (disconnected)
da0 at umass-sim0 bus 0 scbus4 target 0 lun 0
da0: <STECH Simple Drive 1.04> s/n WD-WXE508CAN263 detached
(da0:umass-sim0:0:0:0): Periph destroyedAutomatisches Einhängen von WechselmedienDamit USB-Geräte automatisch
eingehängt werden, muss der Kommentar für folgende Zeile in
/etc/auto_master entfernt werden:/media -media -nosuidAnschließend fügen Sie folgende Zeilen in
/etc/devd.conf hinzu:notify 100 {
match "system" "GEOM";
match "subsystem" "DEV";
action "/usr/sbin/automount -c";
};Falls &man.autofs.5; und &man.devd.8; bereits
ausgeführt werden, müssen Sie die Konfiguration neu
einlesen:&prompt.root; service automount restart
&prompt.root; service devd restart&man.autofs.5; wird beim Booten automatisch gestartet,
wenn Sie folgende Zeile in /etc/rc.conf
hinzufügen:autofs_enable="YES"Damit &man.autofs.5; funktioniert, muss &man.devd.8;
aktiviert sein, was aber in der Voreinstellung der Fall
ist.Starten Sie jetzt die Dienste:&prompt.root; service automount start
&prompt.root; service automountd start
&prompt.root; service autounmountd start
&prompt.root; service devd startJedes Dateisystem, das automatisch eingehängt werden kann,
erscheint als ein Verzeichnis unterhalb von
media. Das Verzeichnis wird nach dem
Dateisystemlabel benannt, bzw. nach dem Gerätenamen, falls
kein Label existiert.Das Dateisystem wird transparent beim ersten Zugriff in
den Verzeichnisbaum eingehängt und auch nach gewisser Zeit der
Inaktivität wieder ausgehängt. Laufwerke können auch manuell
ausgehängt werden:&prompt.root; automount -fuDiese Methode wird in der Regel bei Speicherkarten und
USB-Sticks verwendet. Sie funktioniert
aber mit allen Blockgeräten, einschließlich optischen
Laufwerken und
iSCSI-LUNs.
-
-
- USB-Massenspeicher
-
-
- Der &man.cfumass.4;-Treiber ist ein
- USB Geräte-Modus-Treiber und steht mit
- &os; 12.0 zur Verfügung.
-
-
- Auf
- USB-OTG-kompatibler
- Hardware, wie in eingebetteten Systemen, kann der &os;
- USB-Stack im Geräte-Modus laufen. Der
- Geräte-Modus ermöglicht es dem Rechner, verschiedene Arten von
- USB-Geräteklassen zu präsentieren,
- einschließlich serieller Schnittstellen, Netzwerkadapter und
- Massenspeicher. Ein USB-Host,
- beispielsweise ein Laptop oder Desktop-Rechner, kann darauf
- wie auf ein physikalisches USB-Gerät
- zugreifen.
-
- Je nach angeschlossener Hardware, ermöglicht das
- &man.usb.template.4; Kernelmodul es dem
- USB-Stack, automatisch zwischen Host- und
- Geräteseite umzuschalten. Das Anschließen eines
- USB-Gerätes an den
- USB-OTG-Port bewirkt,
- dass &os; in den Geräte-Modus wechselt.
-
- Was &os; dem USB-Host präsentiert,
- hängt von der sysctl-Variablen
- hw.usb.template ab. Eine Liste der
- verfügbaren Werte finden Sie in &man.usb.template.4;. Damit
- der Host die geänderte Konfiguration erkennt, muss entweder
- das Gerät getrennt und wieder angeschlossen, oder der
- USB-Bus neu gescannt werden. Wenn auf dem
- Host &os; läuft, können Sie &man.usbconfig.8;
- reset benutzen. Dieser Befehl muss nach
- dem Laden von usb_template.ko erfolgen,
- falls der USB-Host bereits am
- USB-OTG-Port
- angeschlossen war.
-
- Die sysctl-Variable hw.usb.template ist
- in der Voreinstellung auf 0 gesetzt, so dass &os; als
- USB-Massenspeicher funktioniert. Dazu
- müssen die beiden Kernelmodule &man.usb.template.4; und
- &man.cfumass.4; geladen sein. &man.cfumass.4; ist die
- Schnittstelle zum CTL-Subsystem, die auch für
- iSCSI- und Fibre Channel-Targets
- benutzt wird. Auf der Host-Seite können
- USB-Massenspeicher nur auf eine einzelne
- LUN (LUN 0)
- zugreifen.
-
- USB-Massenspeicher benötigen keinen
- aktiven &man.ctld.8;-Daemon, obwohl er bei Bedarf verwendet
- werden kann. Dies unterscheidet sich von
- iSCSI. So gibt es zwei Möglichkeiten,
- ein Target zu konfigurieren: &man.ctladm.8; und &man.ctld.8;.
- Beide erfordern, dass das cfumass.ko
- Kernelmodul geladen ist. Das Modul kann wie folgt geladen
- werden:
-
- &prompt.root; kldload cfumass
-
- Wenn cfumass.ko nicht im Kernel
- enthalten ist, kann das Modul beim Booten über
- /boot/loader.conf geladen werden:
-
- cfumass_load="YES"
-
- Eine LUN kann auch ohne den
- &man.ctld.8;-Daemon erstellt werden:
-
- &prompt.root; ctladm create -b block -o file=/data/target0
-
- Damit wird dem USB der Inhalt des
- Abbilds /data/target0 als
- LUN präsentiert. Die Datei muss vor dem
- Ausführen des Befehls vorhanden sein. Um die
- LUN beim Systemstart zu konfigurieren,
- fügen Sie den Befehl in /etc/rc.local
- hinzu.
-
- &man.ctld.8; kann ebenfalls verwendet werden, um
- LUNs zu verwalten. Erstellen Sie
- /etc/ctl.conf und fügen Sie eine Zeile in
- /etc/rc.conf hinzu, um sicherzustellen,
- dass &man.ctld.8; beim Booten automatisch gestartet wird.
- Danach starten Sie den Daemon.
-
- Dies ist ein Beispiel für eine einfache
- /etc/ctl.conf Konfigurationsdatei.
- &man.ctl.conf.5; enthält eine ausführliche Beschreibung der
- einzelnen Optionen.
-
- target naa.50015178f369f092 {
- lun 0 {
- path /data/target0
- size 4G
- }
-}
-
- Dieses Beispiel erstellt ein Target mit einer einzigen
- LUN.
- naa.50015178f369f092 ist eine Gerätekennung
- aus 32 zufälligen, hexadezimalen Ziffern. Die
- path-Zeile definiert den vollständigen Pfad
- einer Datei oder eines zvols, welche als Backend für die
- LUN benutzt wird. Die Konfigurationsdatei
- muss vor dem Start von &man.ctld.8; existieren. Die zweite
- Zeile ist optional und gibt die Größe der
- LUN an.
-
- Fügen Sie folgende Zeile in
- /etc/rc.conf hinzu, um den
- &man.ctld.8;-Daemon beim Booten zu starten:
-
- ctld_enable="YES"
-
- Um &man.ctld.8; zu starten, führen Sie dieses Kommando
- aus:
-
- &prompt.root; service ctld start
-
- Beim Start liest der &man.ctld.8;-Daemon
- /etc/ctl.conf ein. Wenn diese Datei nach
- dem Start des Daemons bearbeitet wird, können Sie sie erneut
- einlesen, damit die Änderungen direkt wirksam sind:
-
- &prompt.root; service ctld reload
- Erstellen und Verwenden
von CDsMikeMeyerBeigesteuert von CD-ROMsbrennenCDs besitzen einige Eigenschaften, die
sie von konventionellen Laufwerken unterscheiden. Sie wurden
so entworfen, dass sie ununterbrochen, ohne Verzögerungen
durch Kopfbewegungen zwischen den Spuren, gelesen werden
können. CDs besitzen Spuren, aber damit
ist der Teil Daten gemeint, der ununterbrochen gelesen wird,
und nicht eine physikalische Eigenschaft der
CD. Das ISO
9660-Dateisystem wurde entworfen, um mit diesen Unterschieden
umzugehen.ISO 9660DateisystemeISO 9660CD-BrennerATAPIDie &os; Ports-Sammlung bietet einige Werkzeuge zum
Brennen und Kopieren von Audio- und
Daten-CDs. Dieses Kapitel beschreibt die
Verwendung von mehreren Kommandozeilen-Werkzeugen. Wenn Sie
eine graphische Oberfläche zum Brennen von
CDs benutzen, können Sie
sysutils/xcdroast oder
sysutils/k3b installieren.Unterstützte GeräteMarcFonvielleBeigetragen von CD-BrennerATAPI/CAM TreiberDer GENERIC-Kernel enthält
Unterstützung für SCSI,
USB und ATAPI
CD Lesegeräte und Brenner. Wird ein
angepasster Kernel erstellt, unterscheiden sich die Optionen
für die Kernelkonfigurationsdatei je nach Art des
Geräts.Für einen SCSI-Brenner müssen
folgende Optionen vorhanden sein:device scbus # SCSI bus (required for ATA/SCSI)
device da # Direct Access (disks)
device pass # Passthrough device (direct ATA/SCSI access)
device cd # needed for CD and DVD burnersFür einen USB-Brenner müssen folgende
Optionen vorhanden sein:device scbus # SCSI bus (required for ATA/SCSI)
device da # Direct Access (disks)
device pass # Passthrough device (direct ATA/SCSI access)
device cd> # needed for CD and DVD burners
device uhci # provides USB 1.x support
device ohci # provides USB 1.x support
device ehci # provides USB 2.0 support
device xhci # provides USB 3.0 support
device usb # USB Bus (required)
device umass # Disks/Mass storage - Requires scbus and daFür einen ATAPI-Brenner müssen
folgende Optionen vorhanden sein:device ata # Legacy ATA/SATA controllers
device scbus # SCSI bus (required for ATA/SCSI)
device pass # Passthrough device (direct ATA/SCSI access)
device cd # needed for CD and DVD burnersUnter &os; Versionen kleiner 10.x wird auch diese
Option in der Kernelkonfigurationsdatei benötigt, falls
der Brenner ein ATAPI-Gerät ist:device atapicamAlternativ kann folgende Zeile in
/boot/loader.conf hinzugefügt werden,
um den Treiber beim Booten automatisch zu laden:atapicam_load="YES"Hierzu ist ein Neustart des Systems erforderlich, da
dieser Treiber nur beim Booten geladen werden kann.Mit dmesg können Sie prüfen, ob das
Gerät von &os; erkannt wurde. Unter &os; Versionen kleiner
10.x lautet der Gerätename acd0
anstelle von cd0.&prompt.user; dmesg | grep cd
cd0 at ahcich1 bus 0 scbus1 target 0 lun 0
cd0: <HL-DT-ST DVDRAM GU70N LT20> Removable CD-ROM SCSI-0 device
cd0: Serial Number M3OD3S34152
cd0: 150.000MB/s transfers (SATA 1.x, UDMA6, ATAPI 12bytes, PIO 8192bytes)
cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closedEine CD brennenUnter &os; kann cdrecord zum Brennen
von CDs benutzt werden. Dieses Programm
wird aus dem Port oder Paket
sysutils/cdrecord installiert.Obwohl cdrecord viele Optionen besitzt,
ist die grundlegende Benutzung sehr einfach. Geben Sie den
Namen der zu brennenden ISO-Datei an. Wenn das System über
mehrere Brenner verfügt, müssen Sie auch den Namen des
Gerätes angeben:&prompt.root; cdrecord dev=deviceimagefile.isoBenutzen Sie um den Gerätenamen
des Brenners zu bestimmen. Die Ausgabe könnte wie folgt
aussehen:CD-ROMbrennen&prompt.root; cdrecord -scanbus
ProDVD-ProBD-Clone 3.00 (amd64-unknown-freebsd10.0) Copyright (C) 1995-2010 Jörg Schilling
Using libscg version 'schily-0.9'
scsibus0:
0,0,0 0) 'SEAGATE ' 'ST39236LW ' '0004' Disk
0,1,0 1) 'SEAGATE ' 'ST39173W ' '5958' Disk
0,2,0 2) *
0,3,0 3) 'iomega ' 'jaz 1GB ' 'J.86' Removable Disk
0,4,0 4) 'NEC ' 'CD-ROM DRIVE:466' '1.26' Removable CD-ROM
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
scsibus1:
1,0,0 100) *
1,1,0 101) *
1,2,0 102) *
1,3,0 103) *
1,4,0 104) *
1,5,0 105) 'YAMAHA ' 'CRW4260 ' '1.0q' Removable CD-ROM
1,6,0 106) 'ARTEC ' 'AM12S ' '1.06' Scanner
1,7,0 107) *Benutzen Sie die drei durch Kommas separierten Zahlen, die
für den CD-Brenner angegeben sind, als
Argument für . Im Beispiel ist das
Yamaha-Gerät 1,5,0, so dass die passende
Eingabe ist. Einfachere Wege das
Argument anzugeben, sowie Informationen über Audiospuren und
das Einstellen der Geschwindigkeit, sind in der Manualpage von
cdrecord beschrieben.Alternativ können Sie den folgenden Befehl ausführen, um
die Geräteadresse des Brenners zu ermitteln:&prompt.root; camcontrol devlist
<MATSHITA CDRW/DVD UJDA740 1.00> at scbus1 target 0 lun 0 (cd0,pass0)Verwenden Sie die numerischen Werte für
scbus, target und
lun. Für dieses Beispiel wäre
1,0,0 als Gerätename zu verwenden.Daten auf ISO-Dateisystem
schreibenDie Datendateien müssen vorbereitet sein, bevor sie auf
eine CD gebrannt werden. In &os; wird
mkisofs vom Paket oder Port
sysutils/cdrtools installiert. Dieses
Programm kann aus einem &unix; Verzeichnisbaum ein
ISO 9660-Dateisystem erzeugen. Im
einfachsten Fall müssen Sie lediglich den Namen der zu
erzeugenden ISO-Datei und den Pfad zu den
Dateien angeben, die auf dem ISO
9660-Dateisystem platziert werden:&prompt.root; mkisofs -o imagefile.iso/path/to/treeDateisystemeISO 9660Bei diesem Kommando werden die Dateinamen auf Namen
abgebildet, die den Restriktionen des ISO
9660-Dateisystem entsprechen. Dateien, die diesem Standard
nicht entsprechen bleiben unberücksichtigt.DateisystemeJolietEs gibt einige Optionen, um die Beschränkungen dieses
Standards zu überwinden. Die unter &unix; Systemen üblichen
Rock-Ridge-Erweiterungen werden durch
aktiviert und aktiviert die von
µsoft; Systemen benutzten Joliet-Erweiterungen.Für CDs, die nur auf &os;-Systemen
verwendet werden sollen, kann genutzt
werden, um alle Beschränkungen für Dateinamen aufzuheben.
Zusammen mit wird ein Abbild des
Dateisystems, identisch zu angegebenen &os;-Dateibaum
erstellt, selbst wenn dies den ISO 9660
Standard verletzt.CD-ROMbootbare erstellenDie letzte übliche Option ist .
Sie wird benutzt, um den Ort eines Bootimages einer
El Torito bootbaren CD
anzugeben. Das Argument zu dieser Option ist der Pfad zu
einem Bootimage ausgehend von der Wurzel des Baumes, der auf
die CD geschrieben werden soll. In der
Voreinstellung erzeugt mkisofs ein
ISO-Image im
Diskettenemulations-Modus. Dabei muss das
Image genau 1200, 1440 oder 2880 KB groß sein. Einige
Bootloader, darunter der auf den &os; Installationsmedien
verwendete, kennen keinen Emulationsmodus. Daher sollte in
diesen Fällen verwendet werden.
Wenn /tmp/myboot ein bootbares
&os;-System enthält, dessen Bootimage sich in
/tmp/myboot/boot/cdboot befindet, dann
würde folgendes Kommando
/tmp/bootable.iso erstellen:&prompt.root; mkisofs -R -no-emul-boot -b boot/cdboot -o /tmp/bootable.iso /tmp/mybootDas resultierende ISO-Abbild kann als
speicherbasiertes Laufwerk eingehängt werden:&prompt.root; mdconfig -a -t vnode -f /tmp/bootable.iso -u 0
&prompt.root; mount -t cd9660 /dev/md0 /mntJetzt können Sie überprüfen, dass
/mnt und /tmp/myboot
identisch sind.Sie können das Verhalten von mkisofs
mit einer Vielzahl von Optionen beeinflussen. Details dazu
entnehmen Sie bitte &man.mkisofs.8;.Es ist möglich eine Daten-CD in eine
Datei zu kopieren, die einem Image entspricht, das mit
mkisofs erstellt wurde. Verwenden Sie
dazu dd mit dem Gerätenamen als
Eingabedatei und den Namen der ISO als
Ausgabedatei:&prompt.root; dd if=/dev/cd0 of=file.iso bs=2048Das resultierende Abbild kann auf eine
CD gebrannt werden, wie in beschrieben.Einhängen von Daten-CDsSobald ein Abbild auf eine CD gebrannt
wurde, kann es durch Angabe des Dateisystemtyp, des
CD-Laufwerks und des Mountpunktes
eingehangen werden:&prompt.root; mount -t cd9660 /dev/cd0/mntDa mount davon ausgeht, dass ein
Dateisystem vom Typ ufs ist, würde die
Fehlermeldung Incorrect super block
erscheinen, wenn Sie beim Einhängen einer
Daten-CD auf die Angabe
-t cd9660 verzichten.Auf diese Weise können Daten-CDs
von jedem Hersteller verwendet werden. Es kann allerdings zu
Problemen mit CDs kommen, die verschiedene
ISO 9660-Erweiterungen benutzen. So
speichern Joliet-CDs alle Dateinamen unter
Verwendung von zwei Byte langen Unicode-Zeichen. Tauchen
statt bestimmter Zeichen nur Fragezeichen auf, so
muss über die Option der benötigte
Zeichensatz angegeben werden. Weitere Informationen zu
diesem Problem finden Sie in &man.mount.cd9660.8;.Damit der Kernel diese Zeichenkonvertierung (festgelegt
durch die Option ) erkennt, müssen Sie
das Kernelmodul cd9660_iconv.ko laden.
Dazu fügen Sie folgende Zeile in
loader.conf ein:cd9660_iconv_load="YES"Danach müssen Sie allerdings Ihr System neu starten.
Alternativ können Sie das Kernelmodul auch direkt
über kldload laden.Manchmal werden Sie die Meldung
Device not configured erhalten, wenn
Sie versuchen, eine Daten-CD einzuhängen.
Für gewöhnlich liegt das daran, dass das Laufwerk keine
CD erkannt hat, oder dass das Laufwerk
auf dem Bus nicht erkannt wird. Es kann einige Sekunden
dauern, bevor das Laufwerk die CD erkennt.
Seien Sie also geduldig.Manchmal wird ein
SCSI-CD nicht
erkannt, weil es keine Zeit hatte, auf das Zurücksetzen des
Busses zu antworten. Um dieses Problem zu lösen, fügen Sie
die folgende Zeile in die Kernelkonfiguration ein und
erstellen Sie einen angepassten Kernel nach den Anweisungen in
:options SCSI_DELAY=15000Die Zeile bewirkt, dass nach dem Zurücksetzen des
SCSI-Busses beim Booten 15 Sekunden
gewartet wird, um dem
CD-Laufwerk genügend Zeit zu geben,
darauf zu antworten.Es ist möglich eine Datei auch direkt auf eine
CD zu brennen, ohne vorher auf ihr ein
ISO 9660-Dateisystem einzurichten. Man
sagt auch, Daten werden roh auf die CD
gebrannt. Einige Leute nutzen dies, um Datensicherungen
durchzuführen.Eine auf diese Weise gefertigte
Daten-CD kann nicht in das Dateisystem
eingehangen werden. Um auf die Daten einer solchen
CD zuzugreifen, müssen die Daten vom
rohen Gerät gelesen werden. Beispielsweise würde dieser
Befehl eine komprimierte tar-Datei auf dem zweiten
CD-Laufwerk in das aktuelle Verzeichnis
extrahieren:&prompt.root; tar xzvf /dev/cd1Um eine Daten-CD in das System
einzuhängen, müssen die Daten mit mkisofs
geschrieben werden.Kopieren von Audio-CDsUm eine Kopie einer Audio-CD zu
erstellen, kopieren Sie die Stücke der CD
in einzelne Dateien und brennen diese Dateien dann auf eine
leere CD. beschreibt, wie eine
Audio-CD kopiert und gebrannt wird. Wenn
die Version älter als &os; 10.0 ist und ein
ATAPI-Gerät verwendet wird, muss zunächst
das Modul nach den Anweisungen in
geladen werden.Eine Audio-CD kopierenDer Port oder das Paket
sysutils/cdrtools installiert
cdda2wav. Mit diesem Kommando können
Audiodaten in das aktuelle Verzeichnis extrahiert werden,
wobei jede Datei in eine separate
WAV-Datei geschrieben wird:&prompt.user; cdda2wav -vall -B -OwavWenn das System nur über ein
CD-Laufwerk verfügt, muss der
Gerätename nicht angegeben werden. Lesen Sie die
Manualpage von cdda2wav für
Anweisungen, wie ein Gerät spezifiziert wird und weitere
verfügbare Optionen für dieses Kommando.Die erzeugten .wav Dateien
schreiben Sie mit cdrecord auf eine
leere CD:&prompt.user; cdrecord -v dev=2,0 -dao -useinfo *.wavDas Argument von gibt das
verwendete Gerät an, das wie in
ermittelt werden kann.DVDs benutzenMarcFonvieilleBeigetragen von AndyPolyakovMit Beiträgen von DVDbrennenNach der CD ist die
DVD die nächste Generation optischer
Speichermedien. Auf einer DVD können
mehr Daten als auf einer CD gespeichert
werden. DVDs werden als Standardmedium für
Videos verwendet.Für beschreibbare DVDs existieren fünf
Medienformate:DVD-R: Dies war das erste verfügbare Format. Das
Format wurde vom
DVD-Forum festgelegt. Die Medien sind nur einmal
beschreibbar.DVD-RW: Dies ist die
wiederbeschreibbare Version des DVD-R Standards. Eine
DVD-RW kann ungefähr
1000 Mal beschrieben werden.DVD-RAM: Dies ist ein
wiederbeschreibbares Format, das wie ein Wechsellaufwerk
betrachtet werden kann. Allerdings sind die Medien nicht
kompatibel zu den meisten
DVD-ROM-Laufwerken und
DVD-Video-Spielern, da das
DVD-RAM-Format nur von wenigen Brennern
unterstützt wird. Informationen zur Nutzung von
DVD-RAM finden Sie in
.DVD+RW: Ist ein
wiederbeschreibbares Format, das von der
DVD+RW Alliance festgelegt
wurde. Eine DVD+RW kann ungefähr
1000 Mal beschrieben werden.DVD+R: Dieses Format ist die nur einmal beschreibbare
Variante des DVD+RW Formats.Auf einer einfach beschichteten DVD
können 4.700.000.000 Bytes gespeichert werden. Das
sind 4,38 GB oder 4485 MB (1 Kilobyte
sind 1024 Bytes).Die physischen Medien sind unabhängig von der Anwendung.
Ein DVD-Video ist eine spezielle Anordnung von Dateien, die
auf irgendein Medium, beispielsweise DVD-R, DVD+R oder
DVD-RW geschrieben werden kann. Bevor Sie
ein Medium auswählen, müssen Sie sicherstellen, dass der
Brenner und der DVD-Spieler mit dem Medium umgehen
können.KonfigurationBenutzen Sie &man.growisofs.1;, um DVDs
zu beschreiben. Das Kommando ist Bestandteil von
sysutils/dvd+rw-tools, und kann mit allen
DVD-Medien umgehen.Diese Werkzeuge verwenden das
SCSI-Subsystem, um auf die Geräte
zuzugreifen. Daher muss ATAPI/CAM-Unterstützung
geladen, oder statisch in den Kernel kompiliert werden.
Sollte der Brenner jedoch die
USB-Schnittstelle nutzen, wird diese
Unterstützung nicht benötigt. Weitere Informationen zur
Konfiguration von USB-Geräten finden Sie in
.Für ATAPI-Geräte müssen ebenfalls
DMA-Zugriffe aktiviert werden. Dazu wird die folgende Zeile
in /boot/loader.conf eingefügt:hw.ata.atapi_dma="1"Bevor Sie dvd+rw-tools
benutzen, lesen Sie bitte die
Hardware-Informationen auf der Seite Hardware
Compatibility Notes.Für eine grafische Oberfläche sollten Sie sich
sysutils/k3b ansehen, das eine
benutzerfreundliche Schnittstelle zu &man.growisofs.1; und
vielen anderen Werkzeugen bietet.Daten-DVDs brennen&man.growisofs.1; erstellt mit dem Programm
mkisofs das Dateisystem
und brennt anschließend die DVD. Vor dem
Brennen braucht daher kein Abbild der Daten erstellt zu
werden.Wenn Sie von den Daten im Verzeichnis
/path/to/data eine
DVD+R oder eine DVD-R brennen wollen, benutzen Sie
das nachstehende Kommando:&prompt.root; growisofs -dvd-compat -Z /dev/cd0 -J -R /path/to/dataIn diesem Beispiel wird an
&man.mkisofs.8; durchgereicht und dient zum Erstellen
des Dateisystems (hier: ein ISO-9660-Dateisystem mit
Joliet- und Rock-Ridge-Erweiterungen). Weiteres
entnehmen Sie bitte der Hilfeseite &man.mkisofs.8;.Die Option wird für die erste
Aufnahme einer Single- oder Multisession benötigt. Ersetzen
Sie /dev/cd0 mit dem Gerätenamen
des DVD-Gerätes. Die Nutzung von
schließt das Medium, weitere
Daten können danach nicht mehr angehängt werden. Dies sollte
auch eine bessere Kompatibilität mit anderen
DVD-ROM-Laufwerken bieten.Um ein vorher erstelltes Abbild der Daten zu brennen,
beispielsweise imagefile.iso,
verwenden Sie:&prompt.root; growisofs -dvd-compat -Z /dev/cd0=imagefile.isoDie Schreibgeschwindigkeit hängt von den
verwendeten Medium sowie dem verwendeten Gerät ab
und sollte automatisch gesetzt werden. Um die
Schreibgeschwindigkeit vorzugeben, verwenden Sie
. Beispiele finden Sie in
&man.growisofs.1;.Um größere Dateien als 4.38GB zu unterstützen, ist es
notwendig ein UDF/ISO-9660 Hybrid-Dateisystem zu erstellen.
Dieses Dateisystem muss mit zusätzlichen Parametern
bei &man.mkisofs.8; und
allen relevanten Programmen, wie beispielsweise
&man.growisofs.1;) erzeugt werden. Dies ist nur notwendig,
wenn Sie ein ISO-Image erstellen oder direkt auf eine DVD
schreiben wollen. DVDs, die in dieser Weise hergestellt
worden sind, müssen als UDF-Dateisystem mit
&man.mount.udf.8; eingehangen werden. Sie sind nur auf
Betriebssystemen, die UDF unterstützen brauchbar, ansonsten
sieht es so aus, als ob sie kaputte Dateien enthalten
würden.Um diese Art von ISO-Datei zu erstellen:&prompt.user; mkisofs -R -J -udf -iso-level 3 -o imagefile.iso/path/to/dataUm Daten direkt auf eine DVD zu brennen, geben Sie den
folgenden Befehl ein:&prompt.root; growisofs -dvd-compat -udf -iso-level 3 -Z /dev/cd0 -J -R /path/to/dataWenn ein ISO-Abbild bereits große Dateien enthält, sind
keine weiteren Optionen für &man.growisofs.1; notwendig, um
das Abbild auf die DVD zu brennen.Achten Sie darauf, eine aktuelle Version von
sysutils/cdrtools zu verwenden, welche
&man.mkisofs.8; enthält, da ältere Versionen keinen Support
für große Dateien enthalten. Falls die neueste Version
nicht funktioniert, installieren Sie
sysutils/cdrtools-devel und lesen Sie
&man.mkisofs.8;.DVD-Videos brennenDVDDVD-VideoEin DVD-Video ist eine spezielle Anordnung von Dateien,
die auf den ISO-9660 und den micro-UDF (M-UDF) Spezifikationen
beruht. Da DVD-Video auf eine bestimmte Datei-Hierarchie
angewiesen ist, müssen DVDs mit speziellen
Programmen wie multimedia/dvdauthor
erstellt werden.Ist bereits ein Abbild des Dateisystems eines
DVD-Videos vorhanden, kann es auf die gleiche Weise wie jedes
andere Abbild gebrannt werden. Wenn
dvdauthor verwendet wurde, um die
DVD zu erstellen und die Resultate in
/path/to/video liegen, kann das folgende
Kommando verwendet werden, um ein DVD-Video zu brennen:&prompt.root; growisofs -Z /dev/cd0 -dvd-video /path/to/video wird an &man.mkisofs.8;
weitergereicht, um die Datei-Hierarchie für ein DVD-Video zu
erstellen. Weiterhin bewirkt diese Option, dass
&man.growisofs.1; mit aufgerufen
wird.DVD+RW-Medien benutzenDVDDVD+RWIm Gegensatz zu CD-RW-Medien müssen
DVD+RW-Medien
erst formatiert werden, bevor sie benutzt werden können.
Es wird empfohlen &man.growisofs.1;
einzusetzen, da das Programm Medien automatisch formatiert,
wenn es erforderlich ist. Es ist jedoch möglich, auch
dvd+rw-format zu nutzen, um die
DVD+RW zu formatieren:&prompt.root; dvd+rw-format /dev/cd0Dieser Vorgang muss nur einmal durchgeführt werden.
Denken Sie daran, dass nur neue DVD+RWs formatiert werden
müssen. Anschließend können DVD+RWs, wie
gewohnt gebrannt werden.Wenn Sie auf einer DVD+RW ein neues
Dateisystem erstellen wollen, brauchen Sie die
DVD+RW vorher nicht zu
löschen. Überschreiben Sie einfach das vorige Dateisystem
indem Sie eine neue Session anlegen:&prompt.root; growisofs -Z /dev/cd0 -J -R /path/to/newdataDas DVD+RW-Format erlaubt es, Daten an
eine vorherige Aufnahme anzuhängen. Dazu wird eine neue
Session mit der schon bestehenden zusammengeführt.
Es wird keine Multi-Session geschrieben, sondern
&man.growisofs.1; vergrößert
das ISO-9660-Dateisystem auf dem Medium.Das folgende Kommando fügt weitere Daten zu
einer vorher erstellten DVD+RW
hinzu:&prompt.root; growisofs -M /dev/cd0 -J -R /path/to/nextdataWenn Sie eine DVD+RW erweitern,
verwenden Sie dieselben &man.mkisofs.8;-Optionen wie beim
Erstellen der DVD+RW.Verwenden Sie , um bessere
Kompatibilität mit DVD-ROM-Laufwerken zu
gewährleisten. Zu einem DVD+RW-Medium
können Sie mit dieser Option auch weiterhin Daten
hinzufügen.Um das Medium zu löschen, verwenden Sie:&prompt.root; growisofs -Z /dev/cd0=/dev/zeroDVD-RW-Medien benutzenDVDDVD-RWEine DVD-RW kann mit zwei Methoden
beschrieben werden:
Sequential-Recording oder
Restricted-Overwrite. Voreingestellt
ist Sequential-Recording.Eine neue DVD-RW kann direkt
beschrieben werden; sie muss nicht vorher formatiert werden.
Allerdings muss eine DVD-RW, die mit
Sequential-Recording aufgenommen wurde, zuerst gelöscht
werden, bevor eine neue Session aufgenommen werden
kann.Der folgende Befehl löscht eine DVD-RW
im Sequential-Recording-Modus:&prompt.root; dvd+rw-format -blank=full /dev/cd0Das vollständige Löschen mit
dauert mit einem
1x Medium ungefähr eine Stunde. Wenn die
DVD-RW im Disk-At-Once-Modus (DAO)
aufgenommen wurde, kann sie mit
schneller gelöscht werden. Um eine
DVD-RW im DAO-Modus zu brennen, benutzen
Sie das folgende Kommando:&prompt.root; growisofs -use-the-force-luke=dao -Z /dev/cd0=imagefile.isoDie Option
sollte nicht erforderlich sein, da &man.growisofs.1;
den DAO-Modus automatisch erkennt.Der Restricted-Overwrite-Modus sollte mit jeder
DVD-RW verwendet werden, da er flexibler
als der voreingestellte Sequential-Recording-Modus
ist.Um Daten auf eine DVD-RW im
Sequential-Recording-Modus zu schreiben, benutzen Sie dasselbe
Kommando wie für die anderen
DVD-Formate:&prompt.root; growisofs -Z /dev/cd0 -J -R /path/to/dataUm weitere Daten zu einer Aufnahme hinzuzufügen, benutzen
Sie mit &man.growisofs.1;. Werden die
Daten im Sequential-Recording-Modus hinzugefügt, wird eine
neue Session erstellt. Das Ergebnis ist ein
Multi-Session-Medium.Eine DVD-RW im
Restricted-Overwrite-Modus muss nicht gelöscht werden, um eine
neue Session aufzunehmen. Das Medium kann einfach mit
überschrieben werden. Mit
kann das ISO-9660-Dateisystem, wie mit
einer DVD+RW, vergrößert werden.
Die DVD enthält danach eine Session.Benutzen sie das nachstehende Kommando, um den
Restricted-Overwrite-Modus einzustellen:&prompt.root; dvd+rw-format /dev/cd0Das folgende Kommando stellt den Modus wieder auf
Sequential-Recording zurück:&prompt.root; dvd+rw-format -blank=full /dev/cd0Multi-SessionNur wenige DVD-ROM-Laufwerke
unterstützen Multi-Session-DVDs und lesen meist nur die erste
Session. Mehrere Sessions werden von DVD+R, DVD-R und
DVD-RW im Sequential-Recording-Modus
unterstützt. Im Modus Restricted-Overwrite gibt nur eine
Session.Wenn das Medium noch nicht geschlossen ist, erstellt das
nachstehende Kommando eine neue Session auf einer DVD+R, DVD-R
oder DVD-RW im
Sequential-Recording-Modus:&prompt.root; growisofs -M /dev/cd0 -J -R /path/to/nextdataWird dieses Kommando mit DVD+RW- oder
DVD-RW-Medien im Restricted-Overwrite-Modus
benutzt, werden die neuen Daten mit
den Daten der bestehenden Session zusammengeführt. Das Medium
enthält danach eine Session. Nutzen Sie diese Methode, um
neue Daten zu einer bestehenden Session hinzuzufügen.Für den Anfang und das Ende einer Session wird auf dem
Medium zusätzlicher Platz verbraucht. Um den Speicherplatz
auf dem Medium optimal auszunutzen, sollten Sie daher
Sessions mit vielen Daten hinzufügen. Auf ein DVD+R-Medium
passen maximal 154 Sessions, 2000 Sessions auf ein
DVD-R-Medium und 127 Sessions auf eine DVD+R Double
Layer.Weiterführendesdvd+rw-mediainfo
/dev/cd0 zeigt
Informationen über eine im Laufwerk liegende
DVD an.Weiteres zu dvd+rw-tools
finden Sie in &man.growisofs.1;, auf der
dvd+rw-tools Web-Seite und in den Archiven
der
cdwrite-Mailingliste.Wenn Sie einen Problembericht zur Nutzung der
dvd+rw-tools erstellen, fügen Sie
immer die Ausgabe von dvd+rw-mediainfo
hinzu.DVD-RAMDVDDVD-RAMDVD-RAM-fähige Brenner nutzten die
SCSI- oder
ATAPI-Schnittstelle. Für
ATAPI-Geräte muss der DMA-Modus aktiviert
werden, indem die folgende Zeile in
/boot/loader.conf hinzugefügt
wird:hw.ata.atapi_dma="1"Eine DVD-RAM kann mit einer
Wechselplatte verglichen werden. Wie diese, muss auch eine
DVD-RAM vor dem ersten
Einsatz formatiert werden. In diesem Beispiel wird das
gesamte Medium mit dem Standard-UFS2-Dateisystem
formatiert:&prompt.root; dd if=/dev/zero of=/dev/acd0 bs=2k count=1
&prompt.root; bsdlabel -Bw acd0
&prompt.root; newfs /dev/acd0Denken Sie dabei daran, dass Sie gegebenenfalls die
Gerätedatei (hier acd0) an
Ihre Konfiguration anpassen müssen.Nachdem die DVD-RAM formatiert ist,
kann sie wie eine normale Festplatte gemountet
werden:&prompt.root; mount /dev/acd0/mntDanach kann schreibend und lesend auf das
DVD-RAM Medium zugegriffen werden.Disketten benutzenDieser Abschnitt beschreibt die Formatierung
von 3,5 Zoll Disketten in &os;.Disketten formatierenBevor eine Diskette benutzt werden kann, muss sie
(low-level) formatiert werden, was normalerweise der
Hersteller schon gemacht hat. Sie können die Diskette
allerdings noch einmal formatieren, um das Medium zu
überprüfen. Benutzen Sie &man.fdformat.1;, um Disketten
unter &os; zu formatieren. Achten Sie dabei auf
Fehlermeldungen, die schlechte Speichermedien
anzeigen.Um eine Diskette zu formatieren, legen Sie eine
3,5 Zoll Diskette in das erste Diskettenlaufwerk ein
und führen das folgende Kommando aus:&prompt.root; /usr/sbin/fdformat -f 1440 /dev/fd0Nach dem Formatieren muss auf der Diskette ein
Disklabel erstellt werden, um die Größe und Geometrie der
Diskette zu erkennen. Eine Liste der unterstützten
Geometrien finden Sie in
/etc/disktab.Erstellen Sie nun das Label mit &man.bsdlabel.8;:&prompt.root; /sbin/bsdlabel -B -w /dev/fd0 fd1440Auf der Diskette kann nun ein Dateisystem erstellt
werden (high-level Formatierung). Das Dateisystem der
Diskette kann entweder UFS oder FAT sein, wobei FAT für
Disketten in der Regel die bessere Wahl ist.Um die Diskette mit FAT zu formatieren, geben Sie
folgendes Kommando ein:&prompt.root; /sbin/newfs_msdos /dev/fd0Die Diskette kann nun benutzt werden. Um die Diskette
zu verwenden, kann sie mit &man.mount.msdosfs.8; eingehängt
werden. Man kann auch emulators/mtools aus
der Ports-Sammlung installieren, um mit der Diskette zu
arbeiten.DatensicherungDie Planung und Umsetzung einer Backup-Strategie ist
unerlässlich, um Daten in bestimmten Situationen
wiederherstellen zu können, zum Beispiel bei Plattendefekten,
versehentlichem Löschen von Dateien, willkürlicher Korrumpierung
von Dateien oder der vollständigen Zerstörung des Systems und
der Backups, die am gleichen Ort aufbewahrt werden.Die Art und der Zeitplan des Backups kann variieren,
abhängig von der Wichtigkeit der Daten, der benötigten
Granularität zur Wiederherstellung von Dateien und der
Dauer einer akzeptablen Ausfallzeit. Zu den möglichen
Backup-Strategien gehören unter anderem:Die Archivierung des kompletten Systems auf externen
Datenträgern. Dieser Ansatz schützt zwar vor allen oben
aufgeführten Problemen, ist aber zeitaufwändig und unbequem
bei der Wiederherstellung, insbesondere für nicht
privilegierte Benutzer.Dateisystem-Snapshots sind nützlich bei der
Wiederherstellung von gelöschten Dateien, bzw. früheren
Versionen von Dateien.Kopien ganzer Dateisysteme oder Festplatten, die mit
einem anderen System im Netzwerk mittels
net/rsync synchronisiert werden.Hardware oder Software RAID, was im
Falle von Plattendefekten die Ausfallzeit minimiert oder
vermeidet.Üblicherweise wird eine Mischung aus verschiedenen
Strategien verwendet. Es kann zum Beispiel ein Sicherungsplan
erstellt und automatisiert werden, um eine wöchentliche,
vollständige Systemsicherung, ergänzt mit stündlichen
ZFS-Snapshots, zu erstellen. Darüber hinaus könnte man
eine manuelle Sicherung einzelner Verzeichnisse oder Dateien
machen, bevor diese bearbeitet oder gelöscht werden.Dieser Abschnitt beschreibt einige Programme, die zur
Erstellung und Verwaltung von Sicherungen unter &os; verwendet
werden können.Sicherung von DateisystemenBackup-Softwaredump / restoredumprestoreDie traditionellen &unix;-Programme zum Sichern und
Wiederherstellen von Dateisystemen sind &man.dump.8; und
&man.restore.8;. Diese Programme arbeiten auf der Block-Ebene
der Festplatte, also unterhalb des Abstraktionslevels von
Dateien, Links und Verzeichnissen, die die Grundlage des
Dateisystemkonzepts bilden. Im Gegensatz zu anderen
Backup-Programmen sichert dump ein ganzes
Dateisystem und nicht nur einen Teil des Dateisystems, oder
einen Verzeichnisbaum, der mehr als ein Dateisystem umfasst.
Anstatt Dateien oder Verzeichnisse zu schreiben, schreibt
dump die Blöcke, aus denen die Dateien und
Verzeichnisse bestehen.Wird dump benutzt, um das
Root-Verzeichnis zu sichern, werden
/home, /usr und
viele andere Verzeichnisse nicht gesichert, da dies
normalerweise Mountpunkte für andere Dateisysteme oder
symbolische Links zu diesen Dateisystemen sind.Wenn restore zum Extrahieren von Daten
verwendet wird, werden temporäre Dateien standardmäßig in
/tmp abgelegt. Wenn Sie von einer Platte
mit einem kleinen /tmp-Verzeichnis
zurücksichern, setzen Sie die Umgebungsvariable
TMPDIR auf ein Verzeichnis mit mehr freiem
Speicherplatz, damit die Wiederherstellung gelingt.Beachten Sie bei der Verwendung von
dump, dass es einige Eigenarten aus den
frühen Tagen der Version 6 von AT&T &unix; (ca. 1975)
beibehalten hat. Die Standardparameter gehen davon aus, dass
auf einem 9-Spur-Band gesichert wird, und nicht auf ein
anderes Medium oder auf Sicherungsbänder mit hoher Dichte.
Diese Standardwerte müssen auf der Kommandozeile überschrieben
werden..rhostsEs ist möglich, das Dateisystem über das Netzwerk auf
einem anderen Rechner zu sichern, oder auf einem Bandlaufwerk
eines anderen Rechners. Obwohl die Programme &man.rdump.8;
und &man.rrestore.8; für diese Zwecke benutzt werden können,
gelten sie als nicht sicher.Verwenden Sie stattdessen dump und
restore in einer sichereren Weise über eine
SSH-Verbindung. In diesem Beispiel wird
eine vollständige, komprimierte Sicherung von
/usr erstellt, das
anschließend an einen bestimmten Host über eine
SSH-Verbindung gesendet wird.dump mit
ssh benutzen&prompt.root; /sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \
targetuser@targetmachine.example.com dd of=/mybigfiles/dump-usr-l0.gzIn diesem Beispiel wird RSH gesetzt, um
über eine SSH-Verbindung eine Sicherung auf
ein Bandlaufwerk eines entfernten Systems zu schreiben:dump über
ssh mit gesetzter
RSH benutzen&prompt.root; env RSH=/usr/bin/ssh /sbin/dump -0uan -f tatargetuser@targetmachine.example.com:/dev/sa0 /usrSicherung von VerzeichnissenBackup-SoftwaretarEinige integrierte Werkzeuge stehen zur Sicherung
und Wiederherstellung von bestimmten Dateien und
Verzeichnissen bei Bedarf zur Verfügung.Wenn es um die Sicherung von Dateien in einem Verzeichnis
geht, ist &man.tar.1; eine gute Wahl. Dieses Werkzeug stammt
aus Version 6 von AT&T &unix; und erwartet standardmäßig
eine rekursive Sicherung auf ein lokales Band. Es können
jedoch Optionen angegeben werden, um den Namen einer
Sicherungsdatei zu bestimmen.tarIn diesem Beispiel wird eine komprimierte Sicherung des
aktuellen Verzeichnisses nach
/tmp/mybackup.tgz gespeichert. Achten
Sie bei der Sicherungsdatei darauf, dass sie nicht in dem
Verzeichnis gespeichert wird, welches gesichert werden
soll.Das aktuelle Verzeichnis mit tar
sichern&prompt.root; tar czvf /tmp/mybackup.tgz .Um eine komplette Sicherung wiederherzustellen, wechseln
Sie mit cd in das Verzeichnis, in dem Sie
die Daten wiederherstellen möchten und geben Sie den Namen der
Sicherungsdatei an. Beachten Sie, dass dabei alle Dateien in
dem Verzeichnis überschrieben werden. Im Zweifel sichern Sie
besser in einem temporären Verzeichnis, oder geben Sie den
Verzeichnisnamen bei der Wiederherstellung an.Wiederherstellung mit tar in das
aktuelle Verzeichnis&prompt.root; tar xzvf /tmp/mybackup.tgzEs gibt dutzende Optionen, die in &man.tar.1; beschrieben
werden. Das Programm unterstützt auch die Verwendung von
Ausschlußmustern, um bestimmte Dateien von der Sicherung oder
Wiederherstellung von Verzeichnissen auszuschließen.Backup-SoftwarecpioUm bestimmte, aufgelistete Dateien und Verzeichnisse zu
sichern, ist &man.cpio.1; eine gute Wahl. Im Gegensatz zu
tar weiß cpio nicht
wie ein Verzeichnisbaum durchlaufen wird. Daher ist es auf
eine Liste von zu sichernden Dateien angewiesen.So kann beispielsweise eine Liste von Dateien mit
ls oder find erzeugt
werden. Dieses Beispiel erstellt eine rekursive Liste des
aktuellen Verzeichnisses, die dann über eine Pipe an
cpio übergeben wird, um eine Sicherung
namens /tmp/mybackup.cpio zu
erstellen.Rekursive Sicherung des aktuellen Verzeichnisses mit
ls und cpio&prompt.root; ls -R | cpio -ovF /tmp/mybackup.cpioBackup-SoftwarepaxpaxPOSIXIEEE&man.pax.1; ist ein Programm, welches versucht die
Funktionen von tar und
cpio zu kombinieren. Über die Jahre
hinweg sind die verschiedenen Versionen von
tar und cpio leicht
inkompatibel geworden. Daher hat &posix;
pax geschaffen, welches versucht viele
der unterschiedlichen cpio- und
tar-Formate zu lesen und zu schreiben,
außerdem einige neue, eigene Formate.Für die vorangegangenen Beispiele wäre ein äquivalenter
Aufruf von pax:Das aktuelle Verzeichnis mit pax
sichern&prompt.root; pax -wf /tmp/mybackup.pax .Bandmedien benutzenBandmedienObwohl sich Bandmedien mit der Zeit weiterentwickelt
haben, verwenden moderne Backup-Systeme in der Regel
Offsite-Backups in Verbindung
mit lokalen Wechseldatenträgern. &os; unterstützt alle
SCSI-Bandlaufwerke, wie etwa
LTO und DAT. Zusätzlich
gibt es begrenzte Unterstützung für SATA-
und USB-Bandlaufwerke.Für SCSI-Bandlaufwerke nutzt &os; den
&man.sa.4; Treiber, der die Schnittstellen
/dev/sa0, /dev/nsa0
und /dev/esa0 bereitstellt. Der Name des
physikalischen Geräts ist /dev/sa0.
Wird /dev/nsa0 benutzt, dann wird die
Backup-Anwendung nach dem Schreibvorgang das Band nicht
zurückspulen, was es ermöglicht, mehr als eine Datei auf das
Band zu schreiben. Die Verwendung von
/dev/esa0 wirft das Band aus, nachdem das
Gerät geschlossen wurde.&os; nutzt mt für die Steuerung der
Operationen des Bandlaufwerks, wie die Suche nach Dateien auf
einem Band, oder um Kontrollmarkierungen auf ein Band zu
schreiben. Beispielsweise können die ersten drei Dateien auf
einem Band erhalten bleiben, indem sie übersprungen werden,
bevor eine neue Datei auf das Band geschrieben wird&prompt.root; mt -f /dev/nsa0 fsf 3Dieses Werkzeug unterstützt viele Operationen. Weitere
Einzelheiten finden Sie in &man.mt.1;.Um eine Datei mit tar auf ein Band zu
schreiben, geben Sie den Namen des Bandlaufwerks und den
Dateinamen an:&prompt.root; tar cvf /dev/sa0 fileWiederherstellung von Dateien aus dem
tar-Archiv von Band in das aktuelle
Verzeichnis:&prompt.root; tar xvf /dev/sa0Benutzen Sie dump, um ein
UFS-Dateisystem zu sichern. Dieses
Beispiel sichert /usr, ohne danach das
Band zurückzuspulen:&prompt.root; dump -0aL -b64 -f /dev/nsa0 /usrInteraktive Wiederherstellung von Dateien aus einer
&man.dump.8;-Datei von Band in das aktuelle
Verzeichnis:&prompt.root; restore -i -f /dev/nsa0Backup-Software von DrittanbieternBackup-SoftwareDie &os; Ports-Sammlung enthält viele Programme von
Drittanbietern, die verwendet werden können um die zeitliche
Erstellung von Sicherungen zu planen, zu vereinfachen und
bequemer zu machen. Viele dieser Programme basieren auf dem
Client-Server-Modell und können benutzt werden, um die
Sicherung von einzelnen Systemen oder allen Rechnern in einem
Netzwerk zu automatisieren.Zu den bekannten Programmen gehören
Amanda,
Bacula,
rsync und
duplicity.Die Wiederherstellung in einem NotfallZusätzlich zu den regelmäßigen Sicherungen empfiehlt es
sich, die folgenden Schritte im Rahmen eines Notfallplans
durchzuführen.bsdlabelErstellen Sie einen Ausdruck der Ausgabe der folgenden
Kommandos:gpart showmore /etc/fstabdmesgLive-CDBewahren Sie diesen Ausdruck und eine Kopie des
Installationsmediums an einem sicheren Ort auf. Im Falle
einer Wiederherstellung im Notfall, starten Sie von dem
Installationsmedium und wählen Sie Live CD,
um eine Rettungs-Shell zu starten. Dieser Rettungsmodus kann
verwendet werden, um den aktuellen Stand des Systems
anzuzeigen, und wenn nötig, Festplatten zu formatieren und
Daten aus den Sicherungen wiederherzustellen.Das Installationsmedium für
&os;/&arch.i386; &rel2.current;-RELEASE enthält
keine Rettungs-Shell. Laden Sie für diese Version ein
Abbild der Livefs CD von ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/&arch.i386;/ISO-IMAGES/&rel2.current;/&os;-&rel2.current;-RELEASE-&arch.i386;-livefs.iso.Als nächstes testen Sie die Rettungs-Shell und die
Sicherungen. Dokumentieren Sie diesen Ablauf. Bewahren Sie
diese Notizen zusammen mit den Medien, den Ausdrucken und den
Sicherungen auf. Diese Notizen können Ihnen im Notfall helfen
eine versehentliche Zerstörung der Sicherungen zu verhindern,
während Sie unter Stress eine Wiederherstellung
durchführen.Als zusätzliche Sicherheitsvorkehrung kann jeweils die
letzte Sicherung an einem entfernten Standort aufbewahrt
werden. Dieser Standort sollte räumlich von den Computern und
Festplatten durch eine erhebliche Entfernung getrennt
sein.Speicherbasierte LaufwerkeMarcFonvieilleVerbessert und neu strukturiert von Neben physikalischen Laufwerken unterstützt &os;
auch speicherbasierte Laufwerke. Eine mögliche Verwendung für
ein speicherbasiertes Laufwerk ist der Zugriff auf ein
ISO-Dateisystem, jedoch ohne vorher
die Daten auf eine CD oder
DVD zu brennen und dann das Medium
einzuhängen.&os; verwendet den &man.md.4; Treiber um Unterstützung für
speicherbasierte Laufwerke bereitzustellen. Dieser Treiber ist
bereits im GENERIC-Kernel enthalten. Wenn
Sie eine angepasste Kernelkonfigurationsdatei verwenden, stellen
Sie sicher, dass folgende Zeile enthalten ist:device mdEin- und Aushängen von bestehenden AbbildernLaufwerkespeicherbasierteUm ein bestehendes Abbild eines Dateisystems einzuhängen,
verwenden Sie mdconfig zusammen mit dem
Namen der ISO-Datei und einer freien
Gerätenummer. Benutzen Sie dann diese Gerätenummer, um das
Abbild in einen existierenden Mountpunkt einzuhängen. Sobald
dies erledigt ist, erscheinen die Dateien des Abbildes
unterhalb des Mountpunktes. Dieses Beispiel wird
diskimage.iso an das speicherbasierte
Laufwerk /dev/md0 binden und dann in
/mnt einhängen:&prompt.root; mdconfig -f diskimage.iso -u 0
&prompt.root; mount /dev/md0/mntWenn keine Gerätenummer mit angegeben
ist, wird von &man.md.4; automatisch eine
ungenutzte Gerätenummer zugewiesen. Das zugewiesene Gerät
wird auf der Standardausgabe ausgegeben (zum Beispiel
md4). Weitere Informationen zu diesem
Kommando und dessen Optionen finden Sie in
&man.mdconfig.8;.Laufwerkespeicherbasiertes Laufwerk aushängenWenn ein speicherbasiertes Laufwerk nicht mehr in Gebrauch
ist, sollten seine belegten Ressourcen wieder an das System
zurückgegeben werden. Hängen Sie zuerst das Dateisystem aus,
dann verwenden Sie mdconfig, um die Platte
vom System zu trennen und die Ressourcen freizugeben.&prompt.root; umount /mnt
&prompt.root; mdconfig -d -u 0Um festzustellen, ob noch irgendwelche speicherbasierten
Laufwerke am System angeschlossen sind, benutzen Sie
mdconfig -l.Ein datei- oder speicherbasiertes Laufwerk
erzeugenLaufwerkespeicherbasierte&os; unterstützt auch speicherbasierte Laufwerke, bei
denen der verwendete Speicher entweder einer Festplatte, oder
einem Bereich im Arbeitsspeicher zugewiesen wird. Die erste
Methode ist gemeinhin als dateibasiertes Dateisystem, die
zweite als speicherbasiertes Dateisystem bekannt. Beide Typen
können mit mdconfig erzeugt werden.Um ein speicherbasiertes Dateisystem zu erstellen, geben
Sie den Typ swap sowie die gewünschte Größe
des Laufwerks an. Dieses Beispiel erzeugt ein 5 MB
großes Laufwerk an der Gerätenummer 1. Das
Laufwerk wird mit dem UFS-Dateisystem
formatiert, bevor es eingehängt wird:&prompt.root; mdconfig -a -t swap -s 5m -u 1
&prompt.root; newfs -U md1
/dev/md1: 5.0MB (10240 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 1.27MB, 81 blks, 192 inodes.
with soft updates
super-block backups (for fsck -b #) at:
160, 2752, 5344, 7936
&prompt.root; mount /dev/md1/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md1 4718 4 4338 0% /mntUm ein dateibasiertes Dateisystem zu erstellen,
muss zunächst ein Stück Speicher auf der Festplatte reserviert
werden. Dieses Beispiel erzeugt eine 5 KB große Datei
namens newimage:&prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k
5120+0 records in
5120+0 records outAls nächstes muss diese Datei an ein speicherbasiertes
Laufwerk gebunden, gelabelt und mit dem
UFS-Dateisystem formatiert werden. Danach
können Sie das Laufwerk einhängen und die Größe
überprüfen:&prompt.root; mdconfig -f newimage -u 0
&prompt.root; bsdlabel -w md0 auto
&prompt.root; newfs md0a
/dev/md0a: 5.0MB (10224 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 1.25MB, 80 blks, 192 inodes.
super-block backups (for fsck -b #) at:
160, 2720, 5280, 7840
&prompt.root; mount /dev/md0a /mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0a 4710 4 4330 0% /mntEs benötigt mehrere Befehle, um ein datei- oder
speicherbasiertes Dateisystem mit mdconfig
zu erstellen. &os; enthält auch mdmfs, das
ein speicherbasiertes Laufwerk automatisch konfigurieren,
formatieren und einhängen kann. Nachdem beispielsweise
newimage mit dd
erstellt wurde, hätte auch der folgende Befehl benutzt werden
können, anstelle der oben verwendeten Kommandos
bsdlabel, newfs und
mount:&prompt.root; mdmfs -F newimage -s 5m md0/mntUm hingegen ein speicherbasiertes Laufwerk mit
mdmfs zu erstellen, wird dieser Befehl
benutzt:&prompt.root; mdmfs -s 5m md1/mntWenn die Gerätenummer nicht angegeben wird, wählt
mdmfs automatisch ein ungenutztes
Gerät aus. Weitere Einzelheiten über mdmfs
finden Sie in &man.mdmfs.8;.Schnappschüsse von DateisystemenTomRhodesBeigetragen von Schnappschüssevon DateisystemenZusammen mit
Soft Updates bietet &os;
eine weitere Funktion: Schnappschüsse von Dateisystemen.UFS-Schnappschüsse sind Dateien, die ein Abbild eines
Dateisystems enthalten und müssen auf dem jeweiligen Dateisystem
erstellt werden. Pro Dateisystem darf es maximal
20 Schnappschüsse, die im Superblock vermerkt werden,
geben. Schnappschüsse bleiben erhalten, wenn das Dateisystem
abgehangen, neu eingehangen oder das System neu gestartet wird.
Wenn ein Schnappschuss nicht mehr benötigt wird, kann er
mit &man.rm.1; gelöscht werden. Es ist egal, in welcher
Reihenfolge Schnappschüsse gelöscht werden. Es kann allerdings
vorkommen, dass nicht der gesamte Speicherplatz wieder
freigegeben wird, da ein anderer Schnappschuss einen Teil der
entfernten Blöcke für sich beanspruchen kann.Das unveränderliche -Dateiflag
wird nach der Erstellung des Snapshots von &man.mksnap.ffs.8;
gesetzt. Durch die Verwendung von &man.unlink.1; ist es
allerdings möglich, einen Schnappschuss zu löschen.Schnappschüsse werden mit &man.mount.8; erstellt. Das
folgende Kommando legt einen Schnappschuss von
/var in
/var/snapshot/snap ab:&prompt.root; mount -u -o snapshot /var/snapshot/snap /varAlternativ kann der Schnappschuss auch mit
&man.mksnap.ffs.8; erstellt werden.&prompt.root; mksnap_ffs /var /var/snapshot/snapUm Schnappschüsse auf einem Dateisystem, beispielsweise
/var zu finden, kann man &man.find.1;
verwenden:&prompt.root; find /var -flags snapshotNachdem ein Schnappschuss erstellt wurde, können Sie
ihn für verschiedene Zwecke benutzen:Sie können den Schnappschuss für die
Datensicherung benutzen und ihn auf eine
CD oder ein Band schreiben.Die Integrität des Schnappschusses kann mit &man.fsck.8;
geprüft werden. Wenn das Dateisystem zum Zeitpunkt der
Erstellung des Schnappschusses in Ordnung war, sollte
&man.fsck.8; immer erfolgreich durchlaufen.Sie können den Schnappschuss mit &man.dump.8;
sichern. Sie erhalten dann eine konsistente Sicherung des
Dateisystems zu dem Zeitpunkt, der durch den Zeitstempel des
Schnappschusses gegeben ist. Der Schalter
von &man.dump.8; erstellt für die
Sicherung einen Schnappschuss und entfernt diesen am Ende
der Sicherung wieder.Sie können einen Schnappschuss in den
Verzeichnisbaum einhängen und sich dann den Zustand des
Dateisystems zu dem Zeitpunkt ansehen, an dem der
Schnappschuss erstellt wurde. Der folgende Befehl
hängt den Schnappschuss
/var/snapshot/snap ein:&prompt.root; mdconfig -a -t vnode -o readonly -f /var/snapshot/snap -u 4
&prompt.root; mount -r /dev/md4 /mntDer eingefrorene Stand des
/var-Dateisystems ist nun unterhalb von
/mnt verfügbar. Mit Ausnahme der früheren
Schnappschüsse, die als leere Dateien auftauchen, wird zu
Beginn alles so aussehen, wie zum Zeitpunkt der Erstellung des
Schnappschusses. Der Schnappschuss kann wie folgt abgehängt
werden:&prompt.root; umount /mnt
&prompt.root; mdconfig -d -u 4Weitere Informationen über Soft Updates und
Schnappschüsse von Dateisystemen sowie technische Artikel finden
Sie auf der
Webseite von Marshall Kirk McKusick.Disk QuotasAccountingPlattenplatzDisk QuotasDisk Quotas erlauben dem Administrator, den Plattenplatz
und/oder die Anzahl der Dateien eines Benutzers oder der
Mitglieder einer Gruppe, auf Dateisystemebene zu beschränken.
Dadurch wird verhindert, dass ein Benutzer oder eine Gruppe von
Benutzern den ganzen verfügbaren Plattenplatz belegt.Dieser Abschnitt beschreibt die Konfiguration von Disk
Quotas für UFS-Dateisysteme. Lesen Sie
, wenn Sie Disk Quotas auf einem
ZFS-Dateisystem einrichten möchten.Disk Quotas aktivierenPrüfen Sie zunächst, ob der &os;-Kernel Disk Quotas
unterstützt:&prompt.user; sysctl kern.features.ufs_quota
kern.features.ufs_quota: 1In diesem Beispiel zeigt die 1 an, das
Quotas unterstützt werden. Falls 0
ausgegeben wird, fügen Sie folgende Zeile in die
Kernelkonfigurationsdatei ein, und folgen Sie den Anweisungen
in um den Kernel zu
aktualisieren:options QUOTAAls nächstes aktivieren Sie Disk Quotas in
/etc/rc.conf:quota_enable="YES"Disk QuotasüberprüfenNormalerweise wird beim Booten die Integrität der Quotas
auf allen Dateisystemen mit &man.quotacheck.8;
überprüft. Dieses Programm stellt sicher, dass die
Quota-Datenbank mit den Daten auf einem Dateisystem
übereinstimmt. Dies ist allerdings ein zeitraubender Prozess,
der die Zeit, die das System zum Booten braucht, signifikant
beeinflusst. Eine Variable in
/etc/rc.config erlaubt es, diesen Schritt
zu überspringen:check_quotas="NO"Zuletzt muss noch /etc/fstab
bearbeitet werden, um die Plattenquotas auf Dateisystemebene
zu aktivieren. Um Quotas pro Benutzer für ein Dateisystem zu
aktivieren, geben Sie für dieses Dateisystem
im Feld Optionen von
/etc/fstab an. Zum Beispiel:/dev/da1s2g /home ufs rw,userquota 1 2Um Quotas für Gruppen einzurichten, verwenden
Sie . Um Quotas für Benutzer
und Gruppen einzurichten, trennen Sie die Optionen durch
Kommata:/dev/da1s2g /home ufs rw,userquota,groupquota 1 2Quota-Dateien werden standardmäßig im Rootverzeichnis
des Dateisystems unter quota.user und
quota.group abgelegt. Weitere
Informationen finden Sie in &man.fstab.5;. Es wird nicht
empfohlen, Quota-Dateien an anderen Stellen zu
speichern.Sobald die Konfiguration abgeschlossen ist, starten Sie
das System neu.
/etc/rc wird dann automatisch die
richtigen Kommandos aufrufen, um die Quota-Dateien für
alle in /etc/rc.conf definierten Quotas
anzulegen.Normalerweise brauchen die Kommandos
&man.quotacheck.8;, &man.quotaon.8; oder
&man.quotaoff.8; nicht von Hand aufgerufen werden,
obwohl man die entsprechenden Seiten im
Manual lesen sollte, um sich mit ihnen vertraut
zu machen.Setzen von Quota-LimitsDisk QuotasLimitsStellen Sie sicher, dass Quotas auch tatsächlich
aktiviert sind:&prompt.root; quota -vFür jedes Dateisystem, auf dem Quotas aktiviert sind,
sollte eine Zeile mit der Plattenauslastung und den
aktuellen Quota-Limits zu sehen sein.Mit edquota können nun
Quota-Limits zugewiesen werden.Mehrere Möglichkeiten stehen zur Verfügung, um Limits für
den Plattenplatz, den ein Benutzer oder eine Gruppe
verbrauchen kann, oder die Anzahl der Dateien, die angelegt
werden dürfen, festzulegen. Die Limits können auf dem
Plattenplatz (Block-Quotas), der Anzahl der Dateien
(Inode-Quotas) oder einer Kombination von beiden basieren.
Jedes Limit wird weiterhin in zwei Kategorien geteilt:
Hardlimits und Softlimits.HardlimitEin Hardlimit kann nicht überschritten werden.
Hat der Benutzer einmal ein Hardlimit erreicht, so kann er
auf dem betreffenden Dateisystem keinen weiteren Platz mehr
beanspruchen. Hat ein Benutzer beispielsweise ein Hardlimit
von 500 Kilobytes auf einem Dateisystem und benutzt davon
490 Kilobyte, so kann er nur noch 10 weitere Kilobytes
beanspruchen. Der Versuch, weitere 11 Kilobytes zu
beanspruchen, wird fehlschlagen.SoftlimitSoftlimits können für eine befristete Zeit überschritten
werden. Diese Frist beträgt in der Grundeinstellung eine
Woche. Hat der Benutzer das Softlimit über die Frist hinaus
überschritten, so wird das Softlimit in ein Hardlimit
umgewandelt und der Benutzer kann keinen weiteren Platz mehr
beanspruchen. Wenn er einmal das Softlimit unterschreitet,
wird die Frist wieder zurückgesetzt.Im folgenden Beispiel wird das Quota des Benutzerkonto
test bearbeitet.
Wenn edquota aufgerufen wird,
wird der in EDITOR definierte Editor
aufgerufen, um die Quota-Limts zu konfigurieren. Der
Standard-Editor ist vi.&prompt.root; edquota -u test
Quotas for user test:
/usr: kbytes in use: 65, limits (soft = 50, hard = 75)
inodes in use: 7, limits (soft = 50, hard = 60)
/usr/var: kbytes in use: 0, limits (soft = 50, hard = 75)
inodes in use: 0, limits (soft = 50, hard = 60)Für jedes Dateisystem, auf dem Quotas aktiv sind,
sind zwei Zeilen zu sehen. Eine repräsentiert die
Block-Quotas und die andere die Inode-Quotas. Um ein Limit zu
modifizieren, ändern Sie einfach den angezeigten Wert. Um
beispielsweise das Blocklimit von /usr
auf ein Softlimit von 500 und ein Hardlimit
von 600 zu erhöhen, ändern Sie die Zeile
wie folgt:/usr: kbytes in use: 65, limits (soft = 500, hard = 600)Die neuen Limits sind wirksam, sobald der Editor verlassen
wird.Manchmal ist es wünschenswert, die Limits für eine Reihe
von Benutzern zu setzen. Dazu weisen Sie zunächst einem
Benutzer das gewünschte Quota-Limit zu. Anschließend benutzen
Sie , um das Quota auf einen bestimmten
Bereich von Benutzer-IDs (UID) zu
duplizieren. Der folgende Befehl dupliziert die Quota-Limits
auf die UIDs 10000 bis
19999:&prompt.root; edquota -p test 10000-19999Weitere Informationen finden Sie in
&man.edquota.8;.Überprüfen von Quota-Limits und PlattennutzungDisk QuotasüberprüfenUm die Limits oder die Plattennutzung individueller
Benutzer und Gruppen zu überprüfen, kann &man.quota.1; benutzt
werden. Ein Benutzer kann nur die eigenen Quotas und die
Quotas der Gruppe, der er angehört untersuchen. Nur der
Superuser darf sich alle Limits ansehen. Mit &man.repquota.8;
erhalten Sie eine Zusammenfassung von allen Limits und der
Plattenausnutzung für alle Dateisysteme, auf denen Quotas
aktiv sind.In der Ausgabe von &man.quota.1; werden Dateisysteme, auf
denen ein Benutzer keinen Platz verbraucht, nicht angezeigt,
auch wenn diesem Quotas zugewiesen wurden. Benutzen Sie
um solche Dateisysteme ebenfalls
anzuzeigen. Das folgende Beispiel zeigt die Ausgabe von
quota -v für einen Benutzer, der
Quota-Limits auf zwei Dateisystemen besitzt:Disk quotas for user test (uid 1002):
Filesystem usage quota limit grace files quota limit grace
/usr 65* 50 75 5days 7 50 60
/usr/var 0 50 75 0 50 60grace periodIm Dateisystem /usr liegt der
Benutzer momentan 15 Kilobytes über dem Softlimit von 50
Kilobytes und hat noch 5 Tage seiner Frist übrig. Der Stern
* zeigt an, dass der Benutzer sein Limit
überschritten hat.Quotas über NFSNFSQuotas werden von dem Quota-Subsystem auf dem
NFS-Server erzwungen. Der
&man.rpc.rquotad.8; Daemon stellt quota die
Quota Informationen auf dem NFS-Client
zur Verfügung, so dass Benutzer auf diesen Systemen ihre
Quotas abfragen können.Sie aktivieren rpc.rquotad auf dem
NFS-Server, indem Sie das Zeichen
# auf folgender Zeile in
/etc/inetd.conf entfernen:rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotadAnschließend starten Sie inetd
neu:&prompt.root; service inetd restartPartitionen verschlüsselnLuckyGreenBeigetragen von shamrock@cypherpunks.toPartitionenverschlüsseln&os; bietet ausgezeichnete Möglichkeiten, Daten vor
unberechtigten Zugriffen zu schützen. Wenn das Betriebssystem
läuft, schützen Zugriffsrechte und vorgeschriebene
Zugriffskontrollen (MAC) (siehe ) die
Daten. Die Zugriffskontrollen des Betriebssystems schützen
allerdings nicht vor einem Angreifer, der Zugriff auf den
Rechner hat. Der Angreifer kann eine Festplatte in ein anderes
System einbauen und dort die Daten analysieren.Die für &os; verfügbaren kryptografischen Subsysteme,
GEOM Based Disk Encryption
(gbde) und geli sind in
der Lage, Daten auf Dateisystemen auch vor hoch motivierten
Angreifern zu schützen, die über erhebliche Mittel verfügen.
Dieser Schutz ist unabhängig von der Art und Weise, durch die
ein Angreifer Zugang zu einer Festplatte oder zu einem Rechner
erlangt hat. Im Gegensatz zu anderen Verschlüsselungsmethoden,
bei denen einzelne Dateien verschlüsselt werden, verschlüsseln
gbde und geli
transparent ganze Dateisysteme. Auf der Festplatte werden dabei
keine Daten im Klartext gespeichert.Dieses Kapitel zeigt, wie ein verschlüsseltes Dateisystem
unter &os; erstellt wird. Zunächst wird der Ablauf für
gbde beschrieben und anschließend
das gleiche Beispiel für geli.Plattenverschlüsselung mit
gbdeDas Ziel von &man.gbde.4; ist es, einen Angreifer vor eine
große Herausforderung zu stellen, um an die Daten einer
Festplatte zu gelangen. Falls jedoch der Rechner
kompromittiert wurde, während er im Betrieb war und das
Speichergerät aktiv verbunden war, oder wenn der Angreifer
eine gültige Passphrase kennt, bietet dieses System keinen
Schutz für die Daten der Festplatte. Daher ist es wichtig,
für die physische Sicherheit zu sorgen, während das System im
Betrieb ist. Außerdem muss die Passphrase für den
Verschlüsselungsmechanismus geschützt werden.&man.gbde.4; besitzt einige Funktionen um die Daten,
die in einem Sektor gespeichert sind, zu schützen. Es benutzt
128-Bit AES im
CBC-Modus, um die Daten eines Sektors zu
verschlüsseln. Jeder Sektor einer Festplatte wird mit einem
anderen AES-Schlüssel verschlüsselt.
Weitere Informationen zum kryptographischen Design und wie die
Schlüssel für einen Sektor aus der gegebenen Passphrase
ermittelt werden, finden Sie in &man.gbde.4;.&os; enthält ein Kernelmodul für
gbde, das wie folgt geladen werden
kann:&prompt.root; kldload geom_bdeWenn Sie einen angepassten Kernel verwenden, stellen Sie
sicher, dass folgende Zeile in der Kernelkonfigurationsdatei
enthalten ist:options GEOM_BDEDas folgende Beispiel beschreibt, wie eine Partition
auf einer neuen Festplatte verschlüsselt wird. Die
Partition wird in /private
eingehangen.Eine Partition mit gbde
verschlüsselnInstallieren der FestplatteInstallieren Sie die Festplatte wie in
beschrieben. Im Beispiel
wird die Partition /dev/ad4s1c
verwendet. Die Gerätedateien
/dev/ad0s1*
sind Standard-Partitionen des &os;-Systems.&prompt.root; ls /dev/ad*
/dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1
/dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c
/dev/ad0s1a /dev/ad0s1d /dev/ad4Verzeichnis für gbde-Lock-Dateien anlegen&prompt.root; mkdir /etc/gbdeDie Lock-Dateien sind für den Zugriff von
gbde auf verschlüsselte
Partitionen notwendig. Ohne die Lock-Dateien können
die Daten nur mit erheblichem manuellen Aufwand wieder
entschlüsselt werden (dies wird auch von der Software
nicht unterstützt). Jede verschlüsselte
Partition benötigt eine gesonderte Lock-Datei.Vorbereiten der gbde-PartitionEine von gbde benutzte
Partition muss einmalig initialisiert werden, bevor
sie benutzt werden kann. Das Programm öffnet eine Vorlage
im Standard-Editor, um verschiedene Optionen zu
konfigurieren. Setzen Sie sector_size
auf 2048, wenn Sie
UFS benutzen:&prompt.root; gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c.lock$FreeBSD: src/sbin/gbde/template.txt,v 1.1.36.1 2009/08/03 08:13:06 kensmith Exp $
#
# Sector size is the smallest unit of data which can be read or written.
# Making it too small decreases performance and decreases available space.
# Making it too large may prevent filesystems from working. 512 is the
# minimum and always safe. For UFS, use the fragment size
#
sector_size = 2048
[...]Sobald die Änderungen gespeichert werden, wird der
Benutzer zweimal aufgefordert, die zum Schutz der Daten
verwendete Passphrase einzugeben. Die Passphrase muss
beide Mal gleich eingegeben werden. Die Sicherheit der
Daten hängt allein von der Qualität der gewählten
Passphrase ab. Die Auswahl einer sicheren und leicht zu
merkenden Passphrase wird auf der Webseite
http://world.std.com/~reinhold/diceware.html
beschrieben.Bei der Initialisierung wird eine Lock-Datei für die
gbde-Partition erstellt. In
diesem Beispiel
/etc/gbde/ad4s1c.lock. Lock-Dateien
müssen die Dateiendung .lock aufweisen,
damit sie von /etc/rc.d/gbde, dem
Startskript von gbde, erkannt
werden.Lock-Dateien müssen immer zusammen mit den
verschlüsselten Dateisystemen gesichert werden. Ohne
die Lock-Datei können Sie allerdings nicht auf die
verschlüsselten Daten zugreifen.Einbinden der verschlüsselten Partition
in den Kernel&prompt.root; gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c.lockDieses Kommando fragt die Passphrase ab, die bei der
Initialisierung der verschlüsselten Partition eingegeben
wurde. Das neue verschlüsselte Gerät erscheint danach in
/dev als
/dev/device_name.bde:&prompt.root; ls /dev/ad*
/dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1
/dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c
/dev/ad0s1a /dev/ad0s1d /dev/ad4 /dev/ad4s1c.bdeDateisystem auf dem verschlüsselten Gerät
anlegenNachdem die verschlüsselte Partition im Kernel
eingebunden ist, kann ein Dateisystem erstellt werden.
Dieses Beispiel erstellt ein
UFS-Dateisystem mit aktivierten Soft
Updates. Achten Sie darauf, die Partition mit der
Erweiterung
*.bde
zu benutzen:&prompt.root; newfs -U -O2 /dev/ad4s1c.bdeEinhängen der verschlüsselten PartitionLegen Sie einen Mountpunkt für das
verschlüsselte Dateisystem an. Hängen Sie anschließend
das Dateisystem ein:&prompt.root; mkdir /private
&prompt.root; mount /dev/ad4s1c.bde /privateÜberprüfen des verschlüsselten
DateisystemsDas verschlüsselte Dateisystem sollte jetzt erkannt
und benutzt werden können:&prompt.user; df -H
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 1037M 72M 883M 8% /
/devfs 1.0K 1.0K 0B 100% /dev
/dev/ad0s1f 8.1G 55K 7.5G 0% /home
/dev/ad0s1e 1037M 1.1M 953M 0% /tmp
/dev/ad0s1d 6.1G 1.9G 3.7G 35% /usr
/dev/ad4s1c.bde 150G 4.1K 138G 0% /privateNach jedem Neustart müssen verschlüsselte
Dateisysteme dem Kernel wieder bekannt gemacht werden,
auf Fehler überprüft werden und eingehangen
werden. Für die dazu nötigen Schritte fügen Sie folgende
Zeilen in /etc/rc.conf hinzu:gbde_autoattach_all="YES"
gbde_devices="ad4s1c"
gbde_lockdir="/etc/gbde"Durch diese Argumente muss beim Systemstart auf der
Konsole die Passphrase eingegeben werden. Erst nach Eingabe
der korrekten Passphrase wird die verschlüsselte Partition
automatisch in den Verzeichnisbaum eingehängt. Weitere
Bootoptionen von gbde finden Sie
in &man.rc.conf.5;.sysinstall ist nicht
kompatibel mit
gbde-verschlüsselten Geräten.
Bevor sysinstall gestartet
wird, müssen alle *.bde Geräte vom
Kernel getrennt werden, da sonst der Kernel bei der
ersten Suche nach Geräten abstürzt. Um das verschlüsselte
Gerät aus dem Beispiel zu trennen, benutzen Sie das
folgende Kommando:&prompt.root; gbde detach /dev/ad4s1cPlattenverschlüsselung mit
geliDanielGerzoBeigetragen von Mit geli steht eine alternative
kryptografische GEOM-Klasse zur Verfügung.
Dieses Werkzeug unterstützt unterschiedliche Fähigkeiten und
verfolgt einen anderen Ansatz für die Verschlüsselung.
geli bietet die folgenden
Funktionen:Die Nutzung des &man.crypto.9;-Frameworks. Wenn das
System über kryptografische Hardware verfügt, wird diese
von geli automatisch verwendet.Die Unterstützung verschiedener kryptografischer
Algorithmen, wie AES, Blowfish, und
3DES.Die Möglichkeit, die root-Partition zu
verschlüsseln. Um auf die verschlüsselte
root-Partition zugreifen zu können, muss beim
Systemstart die Passphrase eingegeben werden.Erlaubt den Einsatz von zwei voneinander unabhängigen
Schlüsseln.Es ist durch einfache Sektor-zu-Sektor-Verschlüsselung
sehr schnell.Die Möglichkeit, Master-Keys zu sichern und
wiederherzustellen. Wenn ein Benutzer seinen Schlüssel
zerstört, kann er über seinen zuvor gesicherten
Schlüssel wieder auf seine Daten zugreifen.geli erlaubt es, Platten mit
einem zufälligen Einmal-Schlüssel einzusetzen,
was für Swap-Partitionen und
temporäre Dateisysteme interessant ist.Weitere Funktionen und Anwendungsbeispiele finden Sie in
&man.geli.8;.Das folgende Beispiel beschreibt, wie eine
Schlüsseldatei erzeugt wird, die als Teil des Master-Keys für
den Verschlüsselungs-Provider verwendet wird, der unter
/private in den Verzeichnisbaum
eingehängt wird. Die Schlüsseldatei liefert zufällige Daten,
die für die Verschlüsselung des Master-Keys benutzt werden.
Zusätzlich wird der Master-Key durch eine Passphrase
geschützt. Die Sektorgröße des Providers beträgt 4 KB.
Das Beispiel beschreibt, wie Sie einen
geli-Provider aktivieren, ein vom ihm
verwaltetes Dateisystem erzeugen, es mounten, mit ihm arbeiten
und wie Sie es schließlich wieder unmounten und den Provider
deaktivieren.Eine Partition mit geli
verschlüsselnLaden der
geli-UnterstützungDie Unterstützung für geli wird
über ein ladbares Kernelmodul zur Verfügung gestellt.
Damit das Modul automatisch beim Booten geladen wird,
fügen Sie folgende Zeile in
/boot/loader.conf ein:geom_eli_load="YES"Um das Modul direkt zu laden:&prompt.root; kldload geom_eliStellen Sie bei einer angepassten
Kernelkonfigurationsdatei sicher, dass diese Zeilen
enthalten sind:options GEOM_ELI
device cryptoErzeugen des Master-KeysDie folgenden Befehle erzeugen einen Master-Key
(/root/da2.key), der durch eine
Passphrase geschützt ist. Die Datenquelle für die
Schlüsseldatei ist /dev/random. Um
eine bessere Leistung zu erzielen beträgt die Sektorgröße
des Providers (/dev/da2.eli)
4 KB:&prompt.root; dd if=/dev/random of=/root/da2.key bs=64 count=1
&prompt.root; geli init -s 4096 -K /root/da2.key /dev/da2
Enter new passphrase:
Reenter new passphrase:Es ist nicht zwingend nötig, sowohl eine Passphrase
als auch eine Schlüsseldatei zu verwenden. Die
einzelnen Methoden können auch unabhängig
voneinander eingesetzt werden.Wird für die Schlüsseldatei
- angegeben, wird dafür die
Standardeingabe verwendet. Das folgende Kommando erzeugt
beispielsweise drei Schlüsseldateien:&prompt.root; cat keyfile1 keyfile2 keyfile3 | geli init -K - /dev/da2Aktivieren des Providers mit dem erzeugten
SchlüsselUm den Provider zu aktivieren, geben Sie die
Schlüsseldatei, den Namen des Laufwerks und die Passphrase
an:&prompt.root; geli attach -k /root/da2.key /dev/da2
Enter passphrase:Dadurch wird ein neues Gerät mit der Erweiterung
.eli angelegt:&prompt.root; ls /dev/da2*
/dev/da2 /dev/da2.eliDas neue Dateisystem erzeugenAls nächstes muss das Gerät mit dem
UFS-Dateisystem formatiert und an einen
vorhandenen Mountpunkt eingehängt werden:&prompt.root; dd if=/dev/random of=/dev/da2.eli bs=1m
&prompt.root; newfs /dev/da2.eli
&prompt.root; mount /dev/da2.eli /privateDas verschlüsselte Dateisystem sollte jetzt erkannt
und benutzt werden können:&prompt.root; df -H
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 248M 89M 139M 38% /
/devfs 1.0K 1.0K 0B 100% /dev
/dev/ad0s1f 7.7G 2.3G 4.9G 32% /usr
/dev/ad0s1d 989M 1.5M 909M 0% /tmp
/dev/ad0s1e 3.9G 1.3G 2.3G 35% /var
/dev/da2.eli 150G 4.1K 138G 0% /privateWenn Sie nicht mehr mit dem verschlüsselten Dateisystem
arbeiten und die unter /private
eingehängte Partition daher nicht mehr benötigen, sollten Sie
diese unmounten und den
geli-Verschlüsselungs-Provider wieder
deaktivieren:&prompt.root; umount /private
&prompt.root; geli detach da2.eli&os; verfügt über ein rc.d-Skript,
das dass Einhängen von verschlüsselten Geräten beim Booten
deutlich vereinfacht. Für dieses Beispiel, fügen Sie
folgende Zeilen in /etc/rc.conf
hinzu:geli_devices="da2"
geli_da2_flags="-p -k /root/da2.key"Dies konfiguriert /dev/da2 als
geli-Provider mit dem Master-Key
/root/da2.key. Das System wird den
Provider automatisch deaktivieren, bevor es heruntergefahren
wird. Während des Startvorgangs fordert das Skript die
Passphrase an, bevor der Provider aktiviert wird. Vor und
nach der Eingabeaufforderung für die Passphrase werden noch
weitere Kernelmeldungen angezeigt. Achten Sie sorgfältig
auf die Eingabeaufforderung zwischen den anderen Meldungen,
falls es zu Problemen beim Startvorgang kommt. Sobald die
richtige Passphrase eingegeben wurde, wird der Provider
aktiviert. Anschließend werden die Dateisysteme gemäß
/etc/fstab eingehängt. Lesen Sie
wenn Sie wissen möchten,
wie Sie ein Dateisystem konfigurieren, sodass es beim
booten automatisch gestartet wird.Den Auslagerungsspeicher verschlüsselnChristianBruefferGeschrieben von AuslagerungsspeicherverschlüsselnWie die Verschlüsselung von Partitionen, wird auch der
Auslagerungsspeicher verschlüsselt, um sensible Informationen
zu schützen. Stellen Sie sich eine Anwendung vor, die mit
Passwörtern umgeht. Solange sich diese Passwörter im
Arbeitsspeicher befinden, werden sie nicht auf die Festplatte
geschrieben und nach einem Neustart gelöscht. Falls &os; jedoch
damit beginnt Speicher auszulagern, um Platz für andere
Anwendungen zu schaffen, können die Passwörter unverschlüsselt
auf die Festplatte geschrieben werden. Die Verschlüsselung des
Auslagerungsspeichers kann in solchen Situationen Abhilfe
schaffen.Dieser Abschnitt zeigt die Konfiguration eines
verschlüsselten Auslagerungsspeichers mittels &man.gbde.8; oder
&man.geli.8;. In den Beispielen repräsentiert
/dev/ada0s1b die Swap-Partition.Konfiguration eines verschlüsselten
AuslagerungsspeichersSwap-Partitionen werden standardmäßig nicht verschlüsselt.
Sie sollten daher alle sensiblen Daten im Auslagerungsspeicher
löschen, bevor Sie fortfahren. Führen Sie folgenden Befehl
aus, um die Swap-Partition mit Zufallsdaten zu
überschreiben:&prompt.root; dd if=/dev/random of=/dev/ada0s1b bs=1mUm den Auslagerungsspeicher mit &man.gbde.8; zu
verschlüsseln, fügen Sie in /etc/fstab
das Suffix .bde an den Gerätenamen der
Swap-Partition hinzu:# Device Mountpoint FStype Options Dump Pass#
/dev/ada0s1b.bde none swap sw 0 0Wenn Sie &man.geli.8; benutzen, verwenden Sie stattdessen
das Suffix .eli, um den
Auslagerungsspeicher zu verschlüsseln:# Device Mountpoint FStype Options Dump Pass#
/dev/ada0s1b.eli none swap sw 0 0In der Voreinstellung verschlüsselt &man.geli.8; mit
dem AES-Algorithmus und einer
Schlüssellänge von 128 Bit. Diese Voreinstellungen sind in
der Regel ausreichend, können jedoch im Options-Feld in
/etc/fstab angepasst werden. Mögliche
Optionen sind:aalgoDer Algorithmus für die Prüfung der
Datenintegrität. Dieser wird benutzt um
sicherzustellen, dass die verschlüsselten Daten nicht
manipuliert wurden. Eine Liste der unterstützten
Algorithmen finden Sie in &man.geli.8;.ealgoDer Verschlüsselungsalgorithmus, der verwendet wird
um die Daten zu schützen. Eine Liste der unterstützten
Algorithmen finden Sie in &man.geli.8;.keylenDie Länge des Schlüssels für den
Verschlüsselungsalgorithmus. In &man.geli.8; können Sie
lesen, welche Schlüssellängen von welchem Algorithmus
unterstützt werden.sectorsizeDie Größe, in der die Datenblöcke aufgeteilt werden,
bevor sie verschlüsselt werden. Größere Blöcke erhöhen
die Leistung auf Kosten des Speicherverbrauchs. Die
empfohlene Größe beträgt 4096 Byte.Dieses Beispiel konfiguriert eine verschlüsselte
Swap-Partition mit dem Blowfish-Algorithmus, einer
Schlüssellänge von 128 Bit und einer Sektorgröße von
4 KB:# Device Mountpoint FStype Options Dump Pass#
/dev/ada0s1b.eli none swap sw,ealgo=blowfish,keylen=128,sectorsize=4096 0 0Überprüfung des verschlüsselten
AuslagerungsspeichersNachdem das System neu gestartet wurde, kann die korrekte
Funktion des verschlüsselten Auslagerungsspeichers mit
swapinfo geprüft werden.Wenn Sie &man.gbde.8; einsetzen, erhalten Sie eine
Meldung ähnlich der folgenden:&prompt.user; swapinfo
Device 1K-blocks Used Avail Capacity
/dev/ada0s1b.bde 542720 0 542720 0%Wenn Sie &man.geli.8; einsetzen, erhalten Sie hingegen
eine Ausgabe ähnlich der folgenden:&prompt.user; swapinfo
Device 1K-blocks Used Avail Capacity
/dev/ada0s1b.eli 542720 0 542720 0%Highly Available Storage
(HAST)DanielGerzoBeigetragen von FreddieCashMit Beiträgen von Pawel JakubDawidekMichael W.LucasViktorPeterssonBenedictReuschlingÜbersetzt von HASThigh availabilityHochverfügbarkeit ist eine der Hauptanforderungen von
ernsthaften Geschäftsanwendungen und hochverfügbarer Speicher
ist eine Schlüsselkomponente in solchen Umgebungen. Highly
Available STorage (HAST) ist ein Framework
in &os;, welches die transparente Speicherung der gleichen
Daten über mehrere physikalisch getrennte Maschinen ermöglicht,
die über ein TCP/IP-Netzwerk verbunden sind.
HAST kann als ein netzbasiertes RAID1
(Spiegel) verstanden werden und ist dem DRBD®-Speichersystem
der GNU/&linux;-Plattform ähnlich. In Kombination mit anderen
Hochverfügbarkeitseigenschaften von &os; wie
CARP, ermöglicht es HAST,
hochverfügbare Speichercluster zu bauen, die in der Lage sind,
Hardwareausfällen zu widerstehen.Die Hauptmerkmale von HAST sind:Es kann zur Maskierung von
I/O-Fehlern auf lokalen Festplatten
eingesetzt werden.Dateisystem-unabhängig, was es erlaubt, jedes von &os;
unterstützte Dateisystem zu verwenden.Effiziente und schnelle Resynchronisation: es werden
nur die Blöcke synchronisiert, die während der Ausfallzeit
eines Knotens geändert wurden.Es kann in einer bereits bestehenden Umgebung
eingesetzt werden, um zusätzliche Redundanz zu
erreichen.Zusammen mit CARP,
Heartbeat, oder anderen
Werkzeugen, ist es möglich, ein robustes und dauerhaftes
Speichersystem zu bauen.Nachdem Sie diesen Abschnitt gelesen haben, werden Sie
folgendes wissen:Was HAST ist, wie es funktioniert und
welche Eigenschaften es besitzt.Wie man HAST unter &os; aufsetzt und
verwendet.Wie man CARP und &man.devd.8;
kombiniert, um ein robustes Speichersystem zu bauen.Bevor Sie diesen Abschnitt lesen, sollten Sie:die Grundlagen von &unix; und &os; verstanden haben
().wissen, wie man Netzwerkschnittstellen und andere
Kernsysteme von &os; konfiguriert ().ein gutes Verständnis der &os;-Netzwerkfunktionalität
besitzen ().Das HAST-Projekt wurde von der &os;
Foundation mit Unterstützung der
OMCnet Internet Service GmbH und TransIP BV
gesponsert.HAST im EinsatzHAST bietet eine synchrone Replikation
auf Blockebene zwischen zwei Maschinen: einem
primary, auch bekannt als
master Knoten, sowie dem
secondary, oder slave
Knoten. Diese beiden Maschinen zusammen werden als Cluster
bezeichnet.Da HAST in einer
primär-sekundär-Konfiguration funktioniert, ist immer nur ein
Knoten des Clusters zu jeder Zeit aktiv. Der primäre Knoten,
auch active genannt, ist derjenige, der
alle I/O-Anfragen verarbeitet, die an die
HAST-Schnittstelle gesendet werden. Der
sekundäre Knoten wird automatisch vom primären Knoten aus
synchronisiert.Die physischen Komponenten des
HAST-Systems sind die lokale Platte am
Primärknoten und die entfernte Platte am
Sekundärknoten.HAST arbeitet synchron auf Blockebene,
was es für Dateisysteme und Anwendungen transparent macht.
HAST stellt gewöhnliche
GEOM-Provider in
/dev/hast/ für die Verwendung durch
andere Werkzeuge oder Anwendungen zur Verfügung. Es gibt
keinen Unterschied zwischen dem Einsatz von
HAST bereitgestellten Geräten und
herkömmlichen Platten oder Partitionen.Jede Schreib-, Lösch- oder Entleerungsoperation wird an
die lokale und über TCP/IP zu der entfernt
liegenden Platte gesendet. Jede Leseoperation wird von der
lokalen Platte durchgeführt, es sei denn, die lokale Platte
ist nicht aktuell oder es tritt ein
I/O-Fehler auf. In solchen Fällen wird die
Leseoperation an den Sekundärknoten geschickt.HAST versucht, eine schnelle
Fehlerbereinigung zu gewährleisten. Aus diesem Grund ist es
wichtig, die Synchronisationszeit nach dem Ausfall eines
Knotens zu reduzieren. Um eine schnelle Synchronisation zu
ermöglichen, verwaltet HAST eine Bitmap von
unsauberen Bereichen auf der Platte und synchronisiert nur
diese während einer regulären Synchronisation (mit Ausnahme
der initialen Synchronisation).Es gibt viele Wege, diese Synchronisation zu behandeln.
HAST implementiert mehrere
Replikationsarten, um unterschiedliche Methoden der
Synchronisation zu realisieren:memsync: Dieser Modus meldet
Schreiboperationen als vollständig, wenn die lokale
Schreiboperation beendet ist und der entfernt liegende
Knoten die Ankunft der Daten bestätigt hat, jedoch bevor
die Daten wirklich gespeichert wurden. Die Daten werden
auf dem entfernt liegenden Knoten direkt nach dem Senden
der Bestätigung gespeichert. Dieser Modus ist dafür
gedacht, Latenzen zu verringern und zusätzlich eine gute
Verlässlichkeit zu bieten. In der Voreinstellung wird
dieser Modus benutzt.fullsync: Dieser Modus meldet
Schreiboperationen als vollständig, wenn sowohl die
lokale, als auch die entfernte Schreiboperation
abgeschlossen wurde. Dies ist der sicherste und
zugleich der langsamste Replikationsmodus.async: Dieser Modus meldet
Schreiboperationen als vollständig, wenn lokale
Schreibvorgänge abgeschlossen wurden. Dies ist der
schnellste und gefährlichste Replikationsmodus. Er
sollte nur verwendet werden, wenn die Latenz zu einem
entfernten Knoten bei einer Replikation zu hoch ist
für andere Modi.HAST-KonfigurationDas HAST-Framework besteht aus mehreren
Komponenten:Dem &man.hastd.8;-Daemon, welcher für
Datensynchronisation verantwortlich ist. Wenn dieser
Daemon gestartet wird, wird automatisch
geom_gate.ko geladen.Dem &man.hastctl.8; Management-Werkzeug.Der Konfigurationsdatei &man.hast.conf.5;. Diese
Datei muss vorhanden sein, bevor
hastd gestartet wird.Alternativ lässt sich die
GEOM_GATE-Unterstützung in den Kernel
statisch einbauen, indem folgende Zeile zur
Kernelkonfigurationsdatei hinzugefügt wird. Anschließend muss
der Kernel, wie in beschrieben,
neu gebaut werden:options GEOM_GATEDas folgende Beispiel beschreibt, wie man zwei Knoten als
master-slave / primary-secondary mittels
HAST konfiguriert, um Daten zwischen diesen
beiden auszutauschen. Die Knoten werden als
hasta mit der IP-Adresse
172.16.0.1 und hastb mit
der IP-Adresse
172.16.0.2 bezeichnet. Beide Knoten
besitzen eine dedizierte Festplatte
/dev/ad6 mit der gleichen Größe für den
HAST-Betrieb. Der
HAST-Pool, manchmal auch Ressource genannt,
oder der GEOM-Provider in
/dev/hast/ wird als
test bezeichnet.Die Konfiguration von HAST wird in
/etc/hast.conf vorgenommen. Diese Datei
sollte auf beiden Knoten gleich sein. Die einfachste
Konfiguration ist folgende:resource test {
on hasta {
local /dev/ad6
remote 172.16.0.2
}
on hastb {
local /dev/ad6
remote 172.16.0.1
}
}Fortgeschrittene Konfigurationsmöglichkeiten finden Sie in
&man.hast.conf.5;.Es ist ebenfalls möglich, den Hostnamen in den
remote-Anweisungen zu verwenden, falls
die Rechner aufgelöst werden können und in
/etc/hosts, oder im lokalen
DNS definiert sind.Sobald die Konfiguration auf beiden Rechnern vorhanden
ist, kann ein HAST-Pool erstellt werden.
Lassen Sie diese Kommandos auf beiden Knoten ablaufen, um die
initialen Metadaten auf die lokale Platte zu schreiben und
starten Sie anschließend &man.hastd.8;:&prompt.root; hastctl create test
&prompt.root; service hastd onestartEs ist nicht möglich,
GEOM-Provider
mit einem bereits bestehenden Dateisystem zu verwenden, um
beispielsweise einen bestehenden Speicher in einen von
HAST verwalteten Pool zu konvertieren.
Dieses Verfahren muss einige Metadaten auf den Provider
schreiben und dafür würde nicht genug freier Platz zur
Verfügung stehen.Die Rolle eines HAST Knotens, primary
oder secondary, wird vom einem
Administrator, oder einer Software wie
Heartbeat, mittels
&man.hastctl.8; festgelegt. Auf dem primären Knoten
hasta geben Sie diesen Befehl ein:&prompt.root; hastctl role primary testGeben Sie folgendes Kommando auf dem sekundären Knoten
hastb ein:&prompt.root; hastctl role secondary testÜberprüfen Sie das Ergebnis mit hastctl
auf beiden Knoten:&prompt.root; hastctl status testÜberprüfen Sie die status-Zeile. Wird
hier degraded angezeigt, dann ist etwas mit
der Konfigurationsdatei nicht in Ordnung. Auf jedem Konten
sollte complete angezeigt werden, was
bedeutet, dass die Synchronisation zwischen den beiden Knoten
gestartet wurde. Die Synchronisierung ist abgeschlossen, wenn
hastctl status meldet, dass die
dirty-Bereiche 0 Bytes betragen.Der nächste Schritt ist, ein Dateisystem auf dem
GEOM-Provider anzulegen und dieses ins
System einzuhängen. Dies muss auf dem
primary-Knoten durchgeführt werden.
Die Erstellung des Dateisystems kann ein paar Minuten dauern,
abhängig von der Größe der Festplatte. Dieses Beispiel
erstellt ein UFS-Dateisystem auf
/dev/hast/test:&prompt.root; newfs -U /dev/hast/test
&prompt.root; mkdir /hast/test
&prompt.root; mount /dev/hast/test/hast/testSobald das HAST-Framework richtig
konfiguriert wurde, besteht der letzte Schritt nun darin,
sicherzustellen, dass HAST während des
Systemstarts automatisch gestartet wird. Fügen Sie diese
Zeile in /etc/rc.conf hinzu:hastd_enable="YES"Failover-KonfigurationDas Ziel dieses Beispiels ist, ein robustes
Speichersystem zu bauen, welches Fehlern auf einem
beliebigen Knoten widerstehen kann. Wenn der
primary-Knoten ausfällt, ist der
secondary-Knoten da, um nahtlos
einzuspringen, das Dateisystem zu prüfen, einzuhängen und
mit der Arbeit fortzufahren, ohne dass auch nur ein
einzelnes Bit an Daten verloren geht.Um diese Aufgabe zu bewerkstelligen, wird das
Common Address Redundancy
Protocol (CARP)
benutzt, welches ein automatisches Failover auf der
IP-Schicht ermöglicht.
CARP erlaubt es mehreren Rechnern im
gleichen Netzsegment, die gleiche
IP-Adresse zu verwenden. Setzen Sie
CARP auf beiden Knoten des Clusters
anhand der Dokumentation in auf.
In diesem Beispiel hat jeder Knoten seine eigene
Management IP-Adresse und die geteilte
IP-Adresse
172.16.0.254. Der primäre
HAST-Knoten des Clusters muss der
CARP-Masterknoten sein.Der HAST-Pool, welcher im vorherigen
Abschnitt erstellt wurde, ist nun bereit für den Export über
das Netzwerk auf den anderen Rechner. Dies kann durch den
Export über NFS oder
Samba erreicht werden, indem die
geteilte IP-Adresse
172.16.0.254 verwendet wird. Das
einzige ungelöste Problem ist der automatische Failover,
sollte der primäre Knoten einmal ausfallen.Falls die CARP-Schnittstelle
aktiviert oder deaktiviert wird, generiert das
&os;-Betriebssystem ein &man.devd.8;-Ereignis, was es
ermöglicht, Zustandsänderungen auf den
CARP-Schnittstellen zu überwachen. Eine
Zustandsänderung auf der
CARP-Schnittstelle ist ein Indiz dafür,
dass einer der Knoten gerade ausgefallen oder wieder
verfügbar ist. Diese Zustandsänderungen machen es möglich,
ein Skript zu starten, welches automatisch den HAST-Failover
durchführt.Um Zustandsänderungen auf der
CARP-Schnittstelle abzufangen, müssen
diese Zeilen in /etc/devd.conf auf
jedem Knoten hinzugefügt werden:notify 30 {
match "system" "IFNET";
match "subsystem" "carp0";
match "type" "LINK_UP";
action "/usr/local/sbin/carp-hast-switch master";
};
notify 30 {
match "system" "IFNET";
match "subsystem" "carp0";
match "type" "LINK_DOWN";
action "/usr/local/sbin/carp-hast-switch slave";
};Wenn auf dem System &os; 10 oder höher eingesetzt
wird, ersetzen Sie carp0 durch den
Namen der konfigurierten Schnittstelle für
CARP.Starten Sie &man.devd.8; auf beiden Knoten neu, um
die neue Konfiguration wirksam werden zu lassen:&prompt.root; service devd restartWenn die Schnittstelle
aktiviert oder deaktiviert wird, erzeugt das System eine
Meldung, was es dem &man.devd.8;-Subsystem ermöglicht, ein
automatisches Failover-Skript zu starten,
/usr/local/sbin/carp-hast-switch.
Weitere Informationen zu dieser Konfiguration finden Sie in
&man.devd.conf.5;.Es folgt ein Beispiel für ein automatisches
Failover-Skript:#!/bin/sh
# Original script by Freddie Cash <fjwcash@gmail.com>
# Modified by Michael W. Lucas <mwlucas@BlackHelicopters.org>
# and Viktor Petersson <vpetersson@wireload.net>
# The names of the HAST resources, as listed in /etc/hast.conf
resources="test"
# delay in mounting HAST resource after becoming master
# make your best guess
delay=3
# logging
log="local0.debug"
name="carp-hast"
# end of user configurable stuff
case "$1" in
master)
logger -p $log -t $name "Switching to primary provider for ${resources}."
sleep ${delay}
# Wait for any "hastd secondary" processes to stop
for disk in ${resources}; do
while $( pgrep -lf "hastd: ${disk} \(secondary\)" > /dev/null 2>&1 ); do
sleep 1
done
# Switch role for each disk
hastctl role primary ${disk}
if [ $? -ne 0 ]; then
logger -p $log -t $name "Unable to change role to primary for resource ${disk}."
exit 1
fi
done
# Wait for the /dev/hast/* devices to appear
for disk in ${resources}; do
for I in $( jot 60 ); do
[ -c "/dev/hast/${disk}" ] && break
sleep 0.5
done
if [ ! -c "/dev/hast/${disk}" ]; then
logger -p $log -t $name "GEOM provider /dev/hast/${disk} did not appear."
exit 1
fi
done
logger -p $log -t $name "Role for HAST resources ${resources} switched to primary."
logger -p $log -t $name "Mounting disks."
for disk in ${resources}; do
mkdir -p /hast/${disk}
fsck -p -y -t ufs /dev/hast/${disk}
mount /dev/hast/${disk} /hast/${disk}
done
;;
slave)
logger -p $log -t $name "Switching to secondary provider for ${resources}."
# Switch roles for the HAST resources
for disk in ${resources}; do
if ! mount | grep -q "^/dev/hast/${disk} on "
then
else
umount -f /hast/${disk}
fi
sleep $delay
hastctl role secondary ${disk} 2>&1
if [ $? -ne 0 ]; then
logger -p $log -t $name "Unable to switch role to secondary for resource ${disk}."
exit 1
fi
logger -p $log -t $name "Role switched to secondary for resource ${disk}."
done
;;
esacIm Kern führt das Skript die folgenden Aktionen durch,
sobald ein Knoten zum Master wird:Es ernennt den HAST-Pool als den
primären für einen gegebenen Knoten.Es prüft das Dateisystem, dass auf dem
HAST-Pool erstellt wurde.Es hängt den Pool ins System ein.Wenn ein Knoten zum Sekundären ernannt wird:Hängt es den HAST-Pool aus dem
Dateisystem aus.Degradiert es den HAST-Pool zum
sekundären.Dieses Skript ist nur ein Beispiel für eine mögliche
Lösung. Es behandelt
nicht alle möglichen Szenarien, die auftreten können und
sollte erweitert bzw. abgeändert werden, so dass z.B.
benötigte Dienste gestartet oder gestoppt werden.Für dieses Beispiel wurde ein
UFS-Dateisystem verwendet. Um die Zeit
für die Wiederherstellung zu verringern, kann ein
UFS mit Journal oder ein
ZFS-Dateisystem benutzt werden.Weitere detaillierte Informationen mit zusätzlichen
Beispielen können unter
http://wiki.FreeBSD.org/HAST abgerufen
werden.FehlerbehebungHAST sollte generell ohne Probleme
funktionieren. Jedoch kann es, wie bei jeder anderen
Software auch, zu gewissen Zeiten sein, dass sie sich nicht
so verhält wie angegeben. Die Quelle dieser Probleme kann
unterschiedlich sein, jedoch sollte als Faustregel
gewährleistet werden, dass die Zeit für alle Knoten im
Cluster synchron läuft.Für die Fehlersuche bei HAST sollte
die Anzahl an Debugging-Meldungen von &man.hastd.8; erhöht
werden. Dies kann durch das Starten von
hastd mit -d erreicht
werden. Diese Option kann mehrfach angegeben werden, um die
Anzahl an Meldungen weiter zu erhöhen. Sie sollten ebenfalls
die Verwendung von -F in Erwägung ziehen,
was hastd im Vordergrund startet.Auflösung des Split-brain-Zustandssplit-brain bezeichnet eine
Situation, in der beide Knoten des Clusters nicht in der
Lage sind, miteinander zu kommunizieren und dadurch beide
als primäre Knoten fungieren. Dies ist ein
gefährlicher Zustand, weil es beiden Knoten erlaubt ist,
Änderungen an den Daten vorzunehmen, die miteinander nicht
in Einklang gebracht werden können. Diese Situation muss
vom Systemadministrator manuell bereinigt werden.Der Administrator muss entscheiden, welcher Knoten die
wichtigeren Änderungen besitzt, oder die Zusammenführung
manuell durchführen. Anschließend kann
HAST die volle Synchronisation mit
dem Knoten durchführen, der die beschädigten Daten enthält.
Um dies zu tun, geben Sie folgende Befehle auf dem Knoten
ein, der neu synchronisiert werden muss:&prompt.root; hastctl role init test
&prompt.root; hastctl create test
&prompt.root; hastctl role secondary test
Index: head/de_DE.ISO8859-1/books/handbook/usb-device-mode/chapter.xml
===================================================================
--- head/de_DE.ISO8859-1/books/handbook/usb-device-mode/chapter.xml (nonexistent)
+++ head/de_DE.ISO8859-1/books/handbook/usb-device-mode/chapter.xml (revision 52143)
@@ -0,0 +1,404 @@
+
+
+
+
+
+ USB Gerätemodus
+
+
+ Übersicht
+
+
+
+
+
+ Edward Tomasz
+ Napierala
+
+
+
+ trasz@FreeBSD.org
+
+
+ Beigetragen von
+
+
+
+
+ Dieses Kapitel behandelt die Verwendung des USB Gerätemodus
+ und USB On-The-Go (USB OTG) unter &os;. Dazu
+ gehören virtuelle serielle Konsolen, virtuelle Netzwerkkarten
+ und virtuelle USB-Laufwerke.
+
+ Wenn die eingesetzte Hardware den USB-Gerätemodus oder
+ USB OTG unterstützt, kann &os;s
+ USB-Stack im Gerätemodus ausgeführt werden.
+ Solche Hardware wird häufig in eingebetteten Systeme verbaut.
+ Der Gerätemodus ermöglicht es dem Rechner verschiedene Arten von
+ USB-Geräteklassen darzustellen,
+ einschließlich serieller Schnittstellen, Netzwerkkarten und
+ Massenspeicher oder Kombinationen davon. Ein
+ USB-Host, beispielsweise ein Notebook oder
+ ein Desktop-Rechner, kann wie auf ein physisches
+ USB-Gerät darauf zugreifen.
+
+ Es gibt zwei grundlegende Möglichkeiten, wie die Hardware
+ den Gerätemodus bereitstellen kann: mit einem separaten
+ Client Modus, der nur den Gerätemodus
+ unterstützt, und mit einem USB-OTG-Port, der sowohl den
+ Geräte- als auch den Hostmodus bereitstellen kann. Bei
+ USB-OTG-Ports wechselt der USB-Stack automatisch zwischen
+ host- und geräteseitig, je nachdem, was an dem Port
+ angeschlossen ist. Wenn Sie ein USB-Gerät
+ wie einen Speicherstick an den Port anschließen, wechselt &os;
+ in den Hostmodus. Wenn Sie einen USB-Host
+ wie einen Computer anschließen, wechselt &os; in den
+ Gerätemodus. Client Ports arbeiten immer
+ im Gerätemodus.
+
+ Was &os; dem USB-Host präsentiert, hängt
+ von der sysctl-Variable hw.usb.template ab.
+ Einige Vorlagen bieten ein einzelnes Gerät, beispielsweise ein
+ serielles Terminal, andere bieten mehrere, die alle gleichzeitig
+ verwendet werden können. Ein Beispiel ist die Vorlage 10, die
+ ein Massenspeichergerät, eine serielle Konsole und eine
+ Netzwerkkarte bereitstellt. &man.usb.template.4; enthält eine
+ Liste der verfügbaren Werte.
+
+ Beachten Sie, dass in einigen Fällen, abhängig von der
+ Hardware und dem Betriebssystem des Hosts, die Änderung an der
+ Konfiguration nur dann bemerkt werden kann, wenn der Host
+ entweder physisch getrennt und wieder verbunden oder gezwungen
+ wird, den USB-Bus auf eine
+ systemspezifische Weise neu zu scannen. Wenn &os; auf dem Host
+ läuft, kann &man.usbconfig.8; reset
+ verwendet werden. Dies muss auch nach dem Laden von
+ usb_template.ko geschehen, wenn der
+ USB-Host bereits an der
+ USB OTG-Buchse angeschlossen war.
+
+ Nachdem Sie dieses Kapitel gelesen haben, werden
+ Sie wissen:
+
+
+
+ wie man den USB Gerätemodus unter
+ &os; einrichtet.
+
+
+
+ wie man die virtuelle serielle Schnittstelle unter
+ &os; konfiguriert.
+
+
+
+ wie man sich mit der virtuellen seriellen Schnittstelle
+ von verschiedenen Betriebssystemen aus verbindet.
+
+
+
+
+
+ Virtuelle serielle
+ USB-Ports
+
+
+ Konfiguration des USB-Gerätemodus für
+ serielle Ports
+
+ Die virtuellen seriellen Ports werden durch die
+ Vorlagen 3, 8 und 10 unterstützt. Beachten Sie, dass
+ Vorlage 3 mit Microsoft Windows 10 ohne spezielle Treiber
+ und INF-Dateien funktioinert. Andere Host-Betriebssysteme
+ arbeiten mit allen drei Vorlagen. Die beiden Kernelmodule
+ &man.usb.template.4; und &man.umodem.4; müssen geladen
+ werden.
+
+ Um die seriellen Ports im
+ USB-Gerätemodus zu aktivieren, fügen Sie
+ folgenden Zeilen in
+ /etc/ttys hinzu:
+
+ ttyU0 "/usr/libexec/getty 3wire" vt100 onifconsole secure
+ttyU1 "/usr/libexec/getty 3wire" vt100 onifconsole secure
+
+ Danach fügen Sie folgende Zeilen in
+ /etc/devd.conf hinzu:
+
+ notify 100 {
+ match "system" "DEVFS";
+ match "subsystem" "CDEV";
+ match "type" "CREATE";
+ match "cdev" "ttyU[0-9]+";
+ action "/sbin/init q";
+};
+
+ Laden Sie die Konfiguration neu, falls &man.devd.8;
+ bereits läuft:
+
+ &prompt.root; service devd restart
+
+ Stellen Sie sicher, dass die notwendigen Module geladen
+ sind und die richtige Vorlage beim Booten gesetzt ist. Fügen
+ Sie dazu folgende Zeilen in
+ /boot/loader.conf ein:
+
+ umodem_load="YES"
+hw.usb.template=3
+
+ Um das Modul zu laden und die Vorlage ohne Neustart zu
+ aktivieren, verwenden Sie:
+
+ &prompt.root; kldload umodem
+&prompt.root; sysctl hw.usb.template=3
+
+
+
+ &os; mit der seriellen Schnittstelle im
+ USB-Gerätemodus verbinden
+
+ Um eine Verbindung zu einer Karte herzustellen, die so
+ konfiguriert ist, dass sie serielle Ports im
+ USB-Gerätemodus bereitstellt, schließen
+ Sie den USB-Host, beispielsweise einen
+ Laptop, an den USB OTG- oder
+ USB-Client-Port der Karte an. Verwenden
+ Sie pstat -t auf dem Host, um die
+ Terminalzeilen aufzulisten. Am Ende der Liste sollten Sie
+ einen seriellen USB-Anschluss sehen,
+ zum Beispiel ttyU0. Um die Verbindung zu
+ öffnen, benutzen Sie:
+
+ &prompt.root; cu -l /dev/ttyU0
+
+ Nach mehrmaligem Drücken der Enter-Taste
+ erscheint ein Anmeldeprompt.
+
+
+
+ macOS mit der seriellen Schnittstelle im
+ USB-Gerätemodus verbinden
+
+ Um eine Verbindung zu einer Karte herzustellen, die so
+ konfiguriert ist, dass sie serielle Ports im
+ USB-Gerätemodus bereitstellt, schließen
+ Sie den USB-Host, beispielsweise einen
+ Laptop, an den USB OTG- oder
+ USB-Client-Port der Karte an. Um die
+ Verbindung zu öffnen, benutzen Sie:
+
+ &prompt.root; cu -l /dev/cu.usbmodemFreeBSD1
+
+
+
+ Linux mit der seriellen Schnittstelle im
+ USB-Gerätemodus verbinden
+
+ Um eine Verbindung zu einer Karte herzustellen, die so
+ konfiguriert ist, dass sie serielle Ports im
+ USB-Gerätemodus bereitstellt, schließen
+ Sie den USB-Host, beispielsweise einen
+ Laptop, an den USB OTG- oder
+ USB-Client-Port der Karte an. Um die
+ Verbindung zu öffnen, benutzen Sie:
+
+ &prompt.root; minicom -D /dev/ttyACM0
+
+
+
+ Windows 10 mit der seriellen Schnittstelle im
+ USB-Gerätemodus verbinden
+
+ Um eine Verbindung zu einer Karte herzustellen, die so
+ konfiguriert ist, dass sie serielle Ports im
+ USB-Gerätemodus bereitstellt, schließen
+ Sie den USB-Host, beispielsweise einen
+ Laptop, an den USB OTG- oder
+ USB-Client-Port der Karte an. Um die
+ Verbindung zu öffnen, benötigen Sie ein Terminalprogramm mit
+ Unterstützung für serielle Schnittstellen, zum Beispiel
+ PuTTY. Um den von &windows;
+ verwendeten COM-Port zu ermitteln, starten Sie den
+ Geräte-Manager und erweitern Sie
+ Ports (COM & LPT). Dort sehen Sie einen
+ Namen wie USB Serial Sevice (COM4). Starten
+ Sie das Terminalprogramm Ihrer Wahl, zum Beispiel
+ PuTTY. Im Dialog von
+ PuTTY setzen Sie den
+ Connection type auf Serial und
+ notieren im Feld Serial line den ermittelten
+ COM-Namen. Danach klicken Sie auf Open.
+
+
+
+
+ Netzwerkkarten im
+ USB-Gerätemodus
+
+ Virtuelle Netzwerkkarten werden durch die Vorlagen 1, 8 und
+ 10 unterstützt. Beachten Sie, dass keine dieser Vorlagen mit
+ &windows; funktioniert. Andere Host-Betriebssysteme arbeiten
+ mit allen drei Vorlagen. Die Kernelmodule
+ &man.usb.template.4; und &man.if.cdce.4; müssen
+ geladen sein.
+
+ Stellen Sie sicher, dass die notwendigen Module geladen
+ sind und die richtige Vorlage beim Booten gesetzt ist. Fügen
+ Sie dazu folgende Zeilen in
+ /boot/loader.conf ein:
+
+ if_cdce_load="YES"
+hw.usb.template=1
+
+ Um das Modul zu laden und die Vorlage ohne Neustart zu
+ aktivieren, verwenden Sie:
+
+ &prompt.root; kldload if_cdce
+&prompt.root; sysctl hw.usb.template=1
+
+
+
+ Virtuelle USB-Speichergeräte
+
+
+ &man.cfumass.4; ist ein
+ USB-Gerätetreiber, der seit
+ &os; 12.0 verfügbar ist.
+
+
+ Virtuelle Speichergeräte werden durch die Vorlagen 0 und 10
+ unterstützt. Die Kernelmodule &man.usb.template.4; und
+ &man.cfumass.4; müssen geladen sein. &man.cfumass.4; ist die
+ Schnittstelle zum CTL-Subsystem, das auch für
+ iSCSI- oder Fibre-Channel-Targets benutzt
+ wird. Auf dem Host können Initiatioren von
+ USB-Massenspeichern nur auf eine einzige
+ LUN, LUN 0
+ zugreifen.
+
+
+ Konfiguration von USB-Massenspeicher
+ Targets mit dem cfumass-Startskript
+
+ Der einfachste Weg, ein schreibgeschütztes
+ USBSpeicherziel einzurichten, ist die
+ Verwendung des cfumass rc-Skripts.
+ Kopieren Sie einfach die Dateien, die dem
+ USB-Host präsentiert werden sollen, in das
+ Verzeichnis /var/cfumass und fügen Sie
+ diese Zeile in /etc/rc.conf ein:
+
+ cfumass_enable="YES"
+
+ Um das Ziel ohne Neustart zu konfigurieren, führen Sie
+ diesen Befehl aus:
+
+ &prompt.root; service cfumass start
+
+ Im Gegensatz zur seriellen und Netzwerkfunktionalität
+ sollte die Vorlage in /boot/loader.conf
+ nicht auf 0 oder 10 gesetzt werden, da die
+ LUN vor dem Setzen der Vorlage
+ konfiguriert werden muss. Das cfumass
+ rc-Skript setzt beim Start automatisch die richtige
+ Vorlage.
+
+
+
+ USB-Massenspeicher mit anderen
+ Werkzeugen konfigurieren
+
+ Der Rest dieses Kapitels enthält eine detaillierte
+ Beschreibung der Konfiguration ohne die Verwendung des
+ cfumass rc-Skripts. Dies ist
+ beispielsweise notwendig, wenn man eine beschreibbare
+ LUN zur Verfügung stellen will.
+
+ Im Gegensatz zu iSCSI ist es bei
+ USB-Massenspeichern nicht zwingend
+ erforderlich, dass der &man.ctld.8; Daemon läuft. Es
+ gibt zwei Möglichkeiten, das Target zu konfigurieren:
+ &man.ctladm.8; oder &man.ctld.8;. Beide erfordern, dass das
+ Kernelmodul cfumass.ko geladen ist.
+ Das Modul kann manuell geladen werden:
+
+ &prompt.root; kldload cfumass
+
+ Wenn cfumass nicht im Kernel
+ integriert ist, kann /boot/loader.conf
+ angepasst werden, damit das Modul beim Booten geladen
+ wird:
+
+ cfumass_load="YES"
+
+ Eine LUN kann ohne den
+ &man.ctld.8; Daemon erstellt werden:
+
+ &prompt.root; ctladm create -b block -o file=/data/target0
+
+ Dies stellt den Inhalt des Abbilds von
+ /data/target0 als LUN
+ auf dem USB-Host dar. Die Datei muss vor
+ der Ausführung des Befehls vorhanden sein. Um die
+ LUN beim Systemstart zu konfigurieren,
+ muss das Kommando in /etc/rc.local
+ eingetragen werden.
+
+ &man.ctld.8; kann auch benutzt werden, um
+ LUNs zu verwalten. Dazu erstellen Sie eine
+ /etc/ctl.conf und fügen eine Zeile in
+ /etc/rc.conf hinzu, um sicherzustellen,
+ dass &man.ctld.8; beim Booten automatisch gestartet wird.
+ Danach kann der Daemon gestartet werden.
+
+ Es folgt ein Beispiel einer einfachen Konfiguration für
+ /etc/ctl.conf. Eine ausführliche
+ Beschreibung der Optionen finden Sie
+ in &man.ctl.conf.5;.
+
+ target naa.50015178f369f092 {
+ lun 0 {
+ path /data/target0
+ size 4G
+ }
+}
+
+ Dieses Beispiel erstellt ein einzelnes Target
+ mit einer einzigen LUN.
+ naa.50015178f369f092 ist eine
+ Gerätekennung, die aus 32 zufälligen
+ Hexadezimalziffern besteht.
+ path definiert den absoluten Pfad zu einer
+ Datei oder eines zvol, welches die
+ LUN als Speicher nutzen kann. Diese Datei
+ muss vor dem Start von &man.ctld.8; existieren. Die zweite
+ Zeile ist optional und definiert die Größe
+ der LUN.
+
+ Damit der &man.ctld.8; Daemon beim Booten gestartet wird,
+ muss diese Zeile in /etc/rc.conf
+ hinzugefügt werden:
+
+ ctld_enable="YES"
+
+ Sie können &man.ctld.8; mit diesem Befehl direkt
+ starten:
+
+ &prompt.root; service ctld start
+
+ Der &man.ctld.8; Daemon liest beim Start
+ /etc/ctl.conf. Wenn diese Datei nach dem
+ Start des Daemons bearbeitet wird, müssen die Änderungen neu
+ geladen werden, damit sie sofort wirksam werden:
+
+ &prompt.root; service ctld reload
+
+
+
Property changes on: head/de_DE.ISO8859-1/books/handbook/usb-device-mode/chapter.xml
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+FreeBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/sgml
\ No newline at end of property