FreeBSD identifiziert Dateien anhand eines Dateinamens. In
Dateinamen wird zwischen Groß- und Kleinschreibung
unterschieden: readme.txt
und
README.TXT
bezeichnen daher zwei
verschiedene Dateien. FreeBSD benutzt keine Dateiendungen, um den
Typ der Datei zu bestimmen, egal ob es sich um ein Programm, ein
Dokument oder um andere Daten handelt.
Dateien werden in Verzeichnissen gespeichert. In einem Verzeichnis können sich keine oder hunderte Dateien befinden. Ein Verzeichnis kann auch andere Verzeichnisse enthalten und so eine Hierarchie von Verzeichnissen aufbauen, die die Ablage von Daten erleichtert.
In Dateinamen werden Verzeichnisse durch einen
Schrägstrich (/
,
Slash) getrennt. Wenn z.B.
das Verzeichnis foo
ein Verzeichnis
bar
enthält, in dem sich die Datei
readme.txt
befindet, lautet der
vollständige Name der Datei (oder der
Pfad zur Datei)
foo/bar/readme.txt
. Beachten Sie, dass
sich dies von Windows® unterscheidet, wo der
\
(Backslash
für die Trennung von Datei- und Verzeichnisnamen verwendet wird.
FreeBSD benutzt keine Laufwerkbuchstaben oder Laufwerknamen im
Pfad. Beispielsweise würde man unter FreeBSD nicht
c:\foo\bar\readme.txt
eingeben.
Verzeichnisse und Dateien werden in einem Dateisystem gespeichert. Jedes Dateisystem besitzt genau ein Wurzelverzeichnis, das so genannte Root-Directory. Dieses Wurzelverzeichnis kann weitere Verzeichnisse enthalten. Ein Dateisystem wird als Wurzeldateisystem festgelegt, und jedes weitere Dateisystem wird unter dem Wurzeldateisystem eingehangen. Daher scheint jedes Verzeichnis, unabhängig von der Anzahl der Platten, auf der selben Platte zu liegen.
Betrachten wir die drei Dateisysteme A
,
B
und C
. Jedes
Dateisystem besitzt ein eigenes Wurzelverzeichnis, das zwei
andere Verzeichnisse enthält: A1
,
A2
, B1
,
B2
, C1
und
C2
.
Das Wurzeldateisystem soll A
sein.
ls(1) zeigt darin die beiden Verzeichnisse
A1
und A2
an.
Der Verzeichnisbaum sieht wie folgt aus:
Ein Dateisystem wird in einem Verzeichnis eines anderen
Dateisystems eingehangen. Wir hängen nun das Dateisystem
B
in das Verzeichnis
A1
ein. Das Wurzelverzeichnis von
B
ersetzt nun das Verzeichnis
A1
und die Verzeichnisse des Dateisystems
B
werden sichtbar:
Jede Datei in den Verzeichnissen
B1
oder B2
kann
über den Pfad /A1/B1
oder
/A1/B2
erreicht werden. Dateien aus dem
Verzeichnis /A1
sind jetzt verborgen.
Wenn das Dateisystem B
wieder
abgehangen wird
(umount), erscheinen die
verborgenen Dateien wieder.
Wenn das Dateisystem B
unter dem
Verzeichnis A2
eingehangen würde, sähe der Verzeichnisbaum
so aus:
Die Dateien des Dateisystems B
wären
unter den Pfaden /A2/B1
und
/A2/B2
erreichbar.
Dateisysteme können übereinander eingehangen werden. Der
folgende Baum entsteht, wenn im letzten Beispiel das
Dateisystem C
in das Verzeichnis
B1
des Dateisystems
B
eingehangen wird:
C
könnte auch im Verzeichnis
A1
eingehangen
werden:
Sie können sogar mit nur einem großen Dateisystem auskommen. Dies hat mehrere Nachteile und einen Vorteil.
Die Dateisysteme können mit unterschiedlichen
Optionen (mount options)
eingehangen werden. Beispielsweise kann das
Wurzeldateisystem schreibgeschützt eingehangen werden,
sodass es für Benutzer nicht möglich ist, versehentlich
kritische Dateien zu editieren oder zu löschen.
Von Benutzern beschreibbare Dateisysteme
wie /home
können mit der Option nosuid
eingehangen werden, wenn sie von anderen Dateisystemen
getrennt sind. Die SUID- und
GUID-Bits verlieren auf solchen
Dateisystemen ihre Wirkung und die Sicherheit des
Systems kann dadurch erhöht werden.
Die Lage von Dateien im Dateisystem wird, abhängig vom Gebrauch des Dateisystems, automatisch von FreeBSD optimiert. Ein Dateisystem mit vielen kleinen Dateien, die häufig geschrieben werden, wird anders behandelt als ein Dateisystem mit wenigen großen Dateien. Mit nur einem Dateisystem ist diese Optimierung unmöglich.
In der Regel übersteht ein FreeBSD-Dateisystem auch einen Stromausfall. Allerdings kann ein Stromausfall zu einem kritischen Zeitpunkt das Dateisystem beschädigen. Wenn die Daten über mehrere Dateisysteme verteilt sind, lässt sich das System mit hoher Wahrscheinlichkeit noch starten. Dies erleichtert das Zurückspielen von Datensicherungen.
Dateisysteme haben eine festgelegte Größe. Es kann passieren, dass Sie eine Partition vergrößern müssen. Dies ist nicht leicht: Sie müssen die Daten sichern, das Dateisystem vergrößert anlegen und die gesicherten Daten zurückspielen.
FreeBSD kennt den Befehl growfs(8), mit dem man Dateisysteme im laufenden Betrieb vergrößern kann.
Dateisysteme befinden sich in Partitionen (damit sind
nicht die normalen MS-DOS®-Partitionen gemeint). Jede
Partition wird mit einem Buchstaben von a
bis h
bezeichnet und kann nur ein
Dateisystem enthalten. Dateisysteme können daher über ihren
Mount-Point, den Punkt an dem sie eingehangen sind, oder
den Buchstaben der Partition, in der sie liegen, identifiziert
werden.
FreeBSD benutzt einen Teil der Platte für den Swap-Bereich, um virtuellen Speicher zur Verfügung zu stellen. Dadurch kann der Rechner Anwendungen mehr Speicher zur Verfügung stellen als tatsächlich eingebaut ist. Wenn der Speicher knapp wird, kann FreeBSD nicht benutzte Daten in den Swap-Bereich auslagern. Die ausgelagerten Daten können später wieder in den Speicher geholt werden (dafür werden dann andere Daten ausgelagert).
Für einige Partitionen gelten besondere Konventionen:
Partition | Konvention |
---|---|
a | Enthält normalerweise das Wurzeldateisystem. |
b | Enthält normalerweise den Swap-Bereich. |
c | Ist normalerweise genauso groß wie die Slice in der
die Partition liegt. Werkzeuge, die auf der kompletten
Slice arbeiten, wie ein Bad-Block-Scanner, können so die
c -Partition benutzen. Für gewöhnlich
wird in dieser Partition kein Dateisystem
angelegt. |
d | Früher hatte die d -Partition
eine besondere Bedeutung. Heute ist dies nicht mehr
der Fall und die Partition d kann
wie jede andere Partition auch verwendet
werden. |
In FreeBSD werden Festplatten in Slices, welche in Windows® als Partitionen bekannt sind, aufgeteilt und von 1 bis 4 durchnummeriert. Diese werden dann in Partitionen unterteilt, welche wiederum Dateisysteme enthalten und mit Buchstaben benannt werden.
Die Slice-Nummern werden mit vorgestelltem
s
hinter den Gerätenamen gestellt:
„da0s1“ ist die erste Slice
auf dem ersten SCSI-Laufwerk. Auf einer
Festplatte gibt es höchstens vier Slices. In einer Slice des
passenden Typs kann es weitere logische Slices geben. Diese
erweiterten Slices werden ab fünf durchnummeriert:
„ada0s5“ ist die erste
erweiterte Slice auf einer SATA-Platte. Diese Geräte werden
von Dateisystemen benutzt, die sich in einer kompletten Slice
befinden müssen.
Slices, „dangerously dedicated“-Festplatten
und andere Platten enthalten Partitionen, die mit Buchstaben
von a
bis h
bezeichnet
werden. Der Buchstabe wird an den Gerätenamen gehangen:
„da0a“ ist die
a
-Partition des ersten
da
-Laufwerks. Dieses Laufwerk ist
„dangerously dedicated“.
„ada1s3e“ ist
die fünfte Partition in der dritten Slice der zweiten
SATA-Platte.
Schließlich wird noch jede Festplatte des Systems eindeutig bezeichnet. Der Name einer Festplatte beginnt mit einem Code, der den Typ der Platte bezeichnet. Es folgt eine Nummer, die angibt, um welche Festplatte es sich handelt. Anders als bei Slices werden Festplatten von Null beginnend durchnummeriert. Gängige Festplatten-Namen sind in Tabelle 4.3, „Laufwerk-Codes“ aufgeführt.
Wenn Sie eine Partition angeben, beinhaltet das den
Plattennamen, s
, die Slice-Nummer und den
Buchstaben der Partition. Einige Beispiele finden Sie in
Beispiel 4.12, „Namen von Platten, Slices und Partitionen“.
Der Aufbau einer Festplatte wird in Beispiel 4.13, „Aufteilung einer Festplatte“ dargestellt.
Bei der Installation von FreeBSD legen Sie Slices auf der Festplatte an, erstellen Partitionen für FreeBSD innerhalb der Slice, erstellen ein Dateisystem oder Auslagerungsbereiche und entscheiden, welche Dateisysteme wo eingehangen werden.
Laufwerkstyp | Gerätename |
---|---|
SATA- und IDE-Festplatten | ada oder
ad |
SCSI-Festplatten und USB-Speichermedien | da |
SATA- und IDE-CD-ROM-Laufwerke | cd oder
acd |
SCSI-CD-ROM-Laufwerke | cd |
Diskettenlaufwerke | fd |
Verschiedene proprietäre CD-ROM-Laufwerke | mcd für Mitsumi
CD-ROM und scd
für Sony CD-ROM |
SCSI-Bandlaufwerke | sa |
IDE-Bandlaufwerke | ast |
RAID-Laufwerke | Beispiele sind aacd für
Adaptec® AdvancedRAID, mlxd für
Mylex®, amrd für AMI MegaRAID®,
idad für Compaq Smart RAID,
twed für 3ware® RAID. |
Name | Bedeutung |
---|---|
ada0s1a | Die erste Partition (a )
in der ersten Slice (s1 ) der
ersten SATA-Festplatte
(ada0 ). |
da1s2e | Die fünfte Partition (e )
der zweiten Slice (s2 ) auf
der zweiten SCSI-Festplatte
(da1 ). |
Das folgende Diagramm zeigt die Sicht von FreeBSD auf die
erste SATA-Festplatte des Systems. Die
Platte soll 250 GB groß sein und eine 80 GB große
Slice (MS-DOS®-Partitionen) sowie eine 170 GB große
Slice enthalten. Die erste Slice enthält ein Windows®
NTFS-Dateisystem
(C:
), die zweite Slice enthält eine
FreeBSD-Installation. Die FreeBSD-Installation in diesem Beispiel
verwendet vier Datenpartitionen und einen
Auslagerungsbereich.
Jede der vier Partitionen enthält ein Dateisystem. Das
Wurzeldateisystem ist die a
-Partition.
In der d
-Partition befindet sich
/var
und in der
f
-Partition befindet sich
/usr
. Die
c
-Partition bezieht sich auf die gesamte
Slice und wird nicht für gewöhnliche Partitionen
verwendet.
Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an
<de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an
<de-bsd-translators@de.FreeBSD.org>.