[ << ]
[ < ]
[ Hauptseite ]
[ > ]
[ >> ]
4. Vorbereiten der Festplatte(n)
Inhalt:
4.a. Einführung in Block Devices
Block Devices
Wir werden einen guten Einblick in die Festplatten bezogenen Aspekte von Gentoo
Linux und Linux im allgemeinen, inklusive Linux Dateisystemen, Partitionen und
Block Devices erhalten. Dann, sobald Sie mit den Vor- und Nachteilen von
Festplatten und Dateisystemen vertraut sind, werden Sie durch den Prozess
des Partitionierens und der Dateisystemerstellung für Ihre Gentoo Linux
Installation geführt.
Zu Beginn werden wir Ihnen Block Devices vorstellen. Das berühmteste
Block Device ist wahrscheinlich das, welches das erste Laufwerk in einem
Linux System repräsentiert, namentlich /dev/sda. SCSI- und
Serial-ATA-Laufwerke erhalten beide Namen mit /dev/sd*; selbst
IDE-Laufwerke werden mit dem neuen libata-Framework im Kernel mit einem
/dev/sd* Namen versehen. Wenn Sie noch das alte Geräte-Framework
verwenden wird Ihr erstes IDE-Laufwerk /dev/hda sein.
Das obige Block Device repräsentiert eine abstrakte Schnittstelle zur
Festplatte. Benutzerprogramme können dieses Block Device benutzen, um Ihre
Festplatte anzusprechen, ohne sich darum zu kümmern, ob Ihre Festplatten IDE,
SCSI oder irgendetwas anderes sind. Das Programm kann den Speicherplatz auf der
Festplatte einfach als eine Anhäufung von zusammenhängenden, beliebig
zugreifbaren 512-Byte Blöcken ansprechen.
Partitionen
Obwohl es theoretisch möglich ist eine ganze Festplatte zu nutzen, um Ihr Linux
System zu beherbergen, wird dies in der Praxis so gut wie nie gemacht.
Stattdessen werden komplette Festplatten Block Devices in kleinere, besser
verwaltbare Block Devices unterteilt. Auf den meisten Systemen werden sie
Partitionen genant. Andere Architekturen benutzen ähnliche Techniken,
welche Slices genannt werden.
Die erste Partition auf der ersten SCSI Festplatte ist /dev/sda1,
die zweite /dev/sda2 und so weiter.
Die dritte Partition auf SUN Systemen ist als ein spezielles "Whole Disk" Slice
vorgesehen. Diese Partition muss kein Dateisystem enthalten.
Wenn Sie an das DOS Partitionsschema gewöhnt sind, sollten Sie beachten, dass
SUN Disklabels keine "Primären" und "Erweiterten" Partitionen haben. Anstelle
dessen sind pro Festplatte 8 Partitionen möglich, die dritte ist als "Whole
Disk" reserviert.
4.b. Erstellung eines Partitionsschemas
Standard Partitionsschema
Wenn Sie nicht daran interessiert sind ein Partitionsschema für Ihr System zu
erstellen liefert Ihnen die folgende Tabelle einen passenden Anfangspunkt für
die meisten Systeme.
Beachten Sie, dass eine separate /boot Partition für SPARC
nicht generell empfohlen ist, da dies die Bootloader Konfiguration
erschwert.
| Partition |
Dateisystem |
Größe |
Mount-Punkt |
Beschreibung |
| /dev/sda1 |
ext4 |
<2 GB |
/ |
Root-Partition. Für SPARC64-Systeme mit älteren OBP-Versionen muss
diese kleiner als 2 GB und die erste Partition auf der Festplatte
sein.
|
| /dev/sda2 |
swap |
512 MB |
none |
Swap-Partition. Zum Bootstrappen und für größere Compile-Vorgänge. Ein
Minimum von 512 MB RAM (inklusive Swap) ist erforderlich.
|
| /dev/sda3 |
none |
Whole disk |
none |
Whole Disk Partition. (Benötigt auf SPARC Systemen.) |
| /dev/sda4 |
ext4 |
mindestens 2 GB |
/usr |
/usr Partition. Programme werden hier installiert. Per default wird diese
Partition auch für Portage Daten genutzt, die etwa 500 MB, ohne
Quellpakete, belegen.
|
| /dev/sda5 |
ext4 |
mindestens 1 GB |
/var |
/var Partition. Wird genutzt für von Programmen erstellten Daten. Per
default benutzt Portage diese Partition als temporären Speicher während
des Kompilierens. Größere Anwendungen wie Mozilla und OpenOffice.org
können mehr als 1 GB temporären Speicher während des Kompilierens
benötigen.
|
| /dev/sda6 |
ext4 |
Restlicher Platz |
/home |
/home Partition. Platz für die Home-Verzeichnisse der Benutzer. |
4.c. Benutzung von fdisk zur Partitionierung Ihrer Festplatte
Die folgenden Teile erklären, wie das bereits beschriebene
Partitionslayout-Beispiel erstellt wird:
| Partition |
Beschreibung |
| /dev/sda1 |
/ |
| /dev/sda2 |
swap |
| /dev/sda3 |
whole disk slice |
| /dev/sda4 |
/usr |
| /dev/sda5 |
/var |
| /dev/sda6 |
/home |
Passen Sie das Partitionslayout an Ihre Vorstellungen an. Beachten Sie, dass die
Root-Partition bei älteren Systemen vollständig innerhalb der 2 GB des Laufwerks
sein muss. Es gibt weiterhin ein 15 Partitionen Limit bei SCSI und SATA.
Starten von fdisk
Starten Sie fdisk mit Ihrer Festplatte als Argument.
Befehlsauflistung 3.1: Starten von fdisk |
# fdisk /dev/sda
|
Sie sollten vom fdisk Prompt begrüßt werden:
Befehlsauflistung 3.2: Der fdisk Prompt |
Command (m for help):
|
Um die verfügbaren Partitionen anzuzeigen, drücken Sie p:
Befehlsauflistung 3.3: Auflisten verfügbarer Partitionen |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda1 0 488 499712 83 Linux native
/dev/sda2 488 976 499712 82 Linux swap
/dev/sda3 0 8635 8842240 5 Whole disk
/dev/sda4 976 1953 1000448 83 Linux native
/dev/sda5 1953 2144 195584 83 Linux native
/dev/sda6 2144 8635 6646784 83 Linux native
|
Beachten Sie das Sun Disk Label in der Ausgabe. Wenn dieses fehlt,
benutzt die Festplatte die DOS-Partitionierung, nicht die Sun Partitionierung.
In diesem Fall benutzen Sie s um sicherzustellen, dass die Festplatte
eine Sun-Partitionstabelle hat.
Befehlsauflistung 3.4: Erstellen eines Sun Disklabel |
Command (m for help): s
Building a new sun disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
Drive type
? auto configure
0 custom (with hardware detected defaults)
a Quantum ProDrive 80S
b Quantum ProDrive 105S
c CDC Wren IV 94171-344
d IBM DPES-31080
e IBM DORS-32160
f IBM DNES-318350
g SEAGATE ST34371
h SUN0104
i SUN0207
j SUN0327
k SUN0340
l SUN0424
m SUN0535
n SUN0669
o SUN1.0G
p SUN1.05
q SUN1.3G
r SUN2.1G
s IOMEGA Jaz
Select type (? for auto, 0 for custom): 0
Heads (1-1024, default 64):
Using default value 64
Sectors/track (1-1024, default 32):
Using default value 32
Cylinders (1-65535, default 8635):
Using default value 8635
Alternate cylinders (0-65535, default 2):
Using default value 2
Physical cylinders (0-65535, default 8637):
Using default value 8637
Rotation speed (rpm) (1-100000, default 5400): 10000
Interleave factor (1-32, default 1):
Using default value 1
Extra sectors per cylinder (0-32, default 0):
Using default value 0
|
Sie finden Korrekte Werte in der Dokumentation zu Ihrem Laufwerk. Die 'auto
configure' Option funktioniert im Normalfall nicht.
Löschen existierender Partitionen
Es ist nun Zeit alle existierenden Partitionen zu löschen. Dazu
geben Sie d ein und drücken Enter. Sie werden dann nach einer
Partitionsnummer gefragt, die Sie löschen möchten. Um eine bereits existierende
/dev/sda1 zu löschen, würden Sie folgendes eingeben:
Befehlsauflistung 3.5: Löschen einer Partition |
Command (m for help): d
Partition number (1-4): 1
|
Nachfolgend gehen wir davon aus, dass Sie alle existierenden Partitionen löschen
möchten. Drücken Sie p um sich alle verfügbaren Partitionen anzeigen zu
lassen und d um eine davon zu löschen. Wenn Sie glauben einen Fehler
gemacht zu haben, drücken Sie sofort q. fdisk ändert die
Partitionstabelle nicht sofort, behält aber die Änderungen im Speicher. Nur wenn
Sie w drücken werden Ihre vorgenommenen Änderungen auch gespeichert.
Nachdem Sie alle Partitionen gelöscht haben, sollte Ihre Partitionstabelle
ähnlich wie folgende aussehen:
Befehlsauflistung 3.6: Ansicht einer leeren Partitionstabelle |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda3 0 8635 8842240 5 Whole disk
|
Erstellen der Root Partition
Zum Schluss müssen sie noch die Root Partition erstellen. Dazu drücken
Sie n um eine Partition zu erstellen, dann drücken Sie 1 um
die Partition zu erstellen. Wenn Sie nach dem letzten Zylinder gefragt werden,
geben Sie +512M ein, um eine Partition in der Größe von 512 MB
zu erstellen. Stellen Sie sicher, dass die Root-Partition vollständig innerhalb
der ersten 2 GB des Laufwerkes liegt.
Befehlsauflistung 3.7: Erstellen einer Root Partition |
Command (m for help): n
Partition number (1-8): 1
First cylinder (0-8635): (press Enter)
Last cylinder or +size or +sizeM or +sizeK (0-8635, default 8635): +512M
|
Wenn Sie nun p eingeben sehen Sie das folgende Partitionslayout:
Befehlsauflistung 3.8: Anzeige des Partitionslayout |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda1 0 488 499712 83 Linux native
/dev/sda3 0 8635 8842240 5 Whole disk
|
Erstellen einer Swap-Partition
Nun erstellen Sie die Swap-Partition. Dazu drücken Sie n um
eine Partition zu erstellen, dann 2 um die zweite Partition,
dev/sda2 in unserem Fall, anzulegen. Wenn Sie nach dem ersten
Zylinder gefragt werden, drücken Sie Enter. Wenn Sie nach dem letzten Zylinder
gefragt werden, tippen Sie +512M um eine Partition mit einer Größe von
512 MB zu erstellen. Nachdem Sie dies getan haben, müssen Sie mit t den
Partitionstyp festlegen und dann 82 um den Partitionstyp als "Linux Swap"
festzulegen. Nachdem Sie diese Schritte abgeschlossen haben, drücken Sie
p und Sie erhalten eine Partitionstabelle, die dieser recht ähnlich
schaut:
Befehlsauflistung 3.9: Auflistung verfügbarer Partitionen |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda1 0 488 499712 83 Linux native
/dev/sda2 488 976 499712 82 Linux swap
/dev/sda3 0 8635 8842240 5 Whole disk
|
Erstellen der /usr, /var und /home Partitionen
Zum Schluss müssen sie noch die /usr, /var und /home Partitionen erstellen.
Wie vorhin drücken Sie n um eine Partition zu erstellen, dann drücken Sie
4 um die dritte Partition, dev/sda4 in unserem Fall,
anzulegen. Wenn Sie nach dem ersten Zylinder gefragt werden, drücken Sie Enter.
Wenn Sie nach dem letzten Zylinder gefragt werden, geben Sie +2048M ein,
um eine 2 GB große Partition zu erstellen, Wiederholen Sie diesen Schritt für
sda5 und sda6, jeweils mit den gewünschten Größen.
Sie erhalten eine Partitionstabelle, die dieser recht ähnlich sieht:
Befehlsauflistung 3.10: Auflistung der vollständigen Partitionstabelle |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda1 0 488 499712 83 Linux native
/dev/sda2 488 976 499712 82 Linux swap
/dev/sda3 0 8635 8842240 5 Whole disk
/dev/sda4 976 1953 1000448 83 Linux native
/dev/sda5 1953 2144 195584 83 Linux native
/dev/sda6 2144 8635 6646784 83 Linux native |
Speichern und fdisk beenden
Um Ihre Partitionstablle zu sichern und fdisk zu beenden, geben Sie
w ein:
Befehlsauflistung 3.11: Speichern und Beenden von fdisk |
Command (m for help): w
|
Nachdem Ihre Partitionen nun erstellt sind, können Sie mit dem
Erstellen der Dateisysteme fortfahren.
4.d. Erstellen der Dateisysteme
Einleitung
Jetzt sind Ihre Partitionen erstellt, so dass es nun an der Zeit ist
Dateisysteme anzulegen. Wenn Sie mit dem zufrieden sind, was wir Ihnen
vorschlagen, dann fahren Sie mit Dateisystem
auf einer Partition anlegen fort. Wenn nicht, lesen Sie weiter, um
ein wenig mehr über Dateisysteme zu lernen ...
Dateisysteme
Verschiedene Dateisysteme sind verfügbar, einige sind als stabil auf der
SPARC-Architektur bekannt. Zum Beispiel sind ext2, ext3 und ext4 als gut
funktionierend bekannt. Andere Dateisysteme funktionieren eventuell nicht
korrekt.
ext2 ist das erprobte und wahre Linux Dateisystem, unterstützt aber keine
Metadaten-Journalisierung, was bedeutet, dass routinemäßige Überprüfungen des
Dateisystem beim Booten ziemlich zeitaufwändig sein können. Es gibt mittlerweile
eine Auswahl an journalisierenden Dateisystemen neuerer Generation, die die
Konsistenzchecks sehr schnell erledigen und dadurch im Vergleich mit den
nicht-journalisierenden Gegenstücken vorzuziehen sind. Jounalisierende
Dateisysteme verhindern lange Verzögerungen beim Booten, wenn sich das
Dateisystem in einem inkonsistenten Zustand befindet. Wenn Sie vorhaben, Gentoo
auf einer sehr kleinen Platte (weniger als 4GB) zu installieren, dann müssen Sie
ext2 anweisen, genügend Inodes zu reservieren, wenn Sie das Dateisystem
erstellen. Die Applikation mke2fs verwendet die Einstellung
"bytes-per-inode", um zu berechnen, wie viele Inodes ein Dateisystem haben
sollte. Durch Verwenden von mke2fs -T small /dev/<device>
vervierfacht sich die Anzahl an Inodes für ein gegebenes Dateisystem in der
Regel, da sich die "bytes-per-inode" von 16kB auf 4kB pro Inode reduzieren. Sie
können dies noch weiter tunen durch Verwenden von
mke2fs -i <Verhältnis> /dev/<device>.
ext3 ist die journalisierte Version des ext2-Dateisystem. Es liefert
Metadaten-Journalisierung für schnelle Wiederherstellung, sowie andere
verbesserte Journalisierungs-Modi wie "Full Data"- und "Ordered
Data"-Journalisierung. Es verwendet einen HTree-Index der in fast allen
Situation zu einer hohen Performance führt. Kurz, ext3 ist ein sehr gutes und
verlässliches Dateisystem. Wenn Sie vorhaben, Gentoo auf einer sehr kleinen
Platte (weniger als 4GB) zu installieren, dann müssen Sie ext2 anweisen,
genügend Inodes zu reservieren, wenn Sie das Dateisystem erstellen. Die
Applikation mke2fs verwendet die Einstellung
"bytes-per-inode", um zu berechnen, wie viele Inodes ein Dateisystem haben
sollte. Durch Verwenden von mke2fs -j -T small /dev/<device>
vervierfacht sich die Anzahl an Inodes für ein gegebenes Dateisystem in der
Regel, da sich die "bytes-per-inode" von 16kB auf 4kB pro Inode reduzieren. Sie
können dies noch weiter tunen durch Verwenden von
mke2fs -j -i <Verhältnis> /dev/<device>.
ext4 ist ein Dateisystem, das basierend auf ext3 erstellt wurde und neue
Features sowie Performance-Verbesserungen mit sich bringt. Zusätzlich wurden
Größenbeschränkungen entfernt und nur mäßige Änderungen am Format auf der
Platte vorgenommen. ext4 unterstützt Laufwerke mit einer Größe von bis zu 1 EB
und eine maximale Dateigröße von 16 TB. Anstelle der klassischen
Bitmap-Block-Allokation von ext2/3, verwendet ext4 Extents, die
die Performance bei großen Dateien verbessert und Fragmentierung reduziert. Ext4
bietet zudem ausgeklügeltere Blockallokationsalgorithmen (verzögerte Allokation
und Multiblock-Allokation), was es dem Dateisystemtreiber erlaubt, das Layout
der Daten auf der Platte zu optimieren. Das ext4-Dateisystem ist ein Kompromiss
zwischen produktionssnaher Code-Stabilität und dem Wunsch, Erweiterungen zu
einem fast ein Jahrzehnt altem Dateisystem einzuführen. Ext4 ist das empfohlene
universell einsetzbare Dateisystem für alle Plattformen.
Eine Partition mit einem Dateisystem formatieren
Um ein Dateisystem auf einer Partition oder einem Volume zu erstellen, gibt es
für jedes Dateisystem Tools:
| Dateisystem |
Befehl |
| ext2 |
mkfs.ext2 |
| ext3 |
mkfs.ext3 |
| ext4 |
mkfs.ext4 |
Um zum Beispiel die Root Partition (/dev/sda1 in unserem Beispiel)
als ext2 und die /usr, /var, und /home
Partitionen (/dev/sda4, 5 und 6 in
unserem Beispiel) als ext3 zu erstellen, benutzen Sie:
Befehlsauflistung 4.1: Eine Partition mit einem Dateisystem formatieren |
# mkfs.ext2 /dev/sda1
# mkfs.ext4 /dev/sda4
# mkfs.ext4 /dev/sda5
# mkfs.ext4 /dev/sda6
|
Aktivieren der Swap-Partition
mkswap ist das Kommando, mit dem Sie die Swap-Partition initialisieren:
Befehlsauflistung 4.2: Erstellen der Swap Signatur |
# mkswap /dev/sda2
|
Um die Swap-Partition zu aktivieren, benutzen Sie swapon:
Befehlsauflistung 4.3: Aktivieren der Swap-Partition |
# swapon /dev/sda2
|
Erstellen und aktivieren Sie jetzt Ihre Swap-Partition mit den eben augelisteten
Befehlen.
4.e. Mounten
Nachdem Ihre Partitionen nun initialisiert sind und ein Dateisystem beinhalten,
ist es an der Zeit diese Partitionen zu mounten. Benutzen Sie das mount
Kommando. Vergessen Sie nicht die notwendigen Mount Verzeichnisse für jede
erstellte Partition anzulegen. Als Beispiel mounten wir die Root- und die
Boot-Partition:
Befehlsauflistung 5.1: Mounten von Partitionen |
# mount /dev/sda1 /mnt/gentoo
# mkdir /mnt/gentoo/usr
# mount /dev/sda4 /mnt/gentoo/usr
# mkdir /mnt/gentoo/var
# mount /dev/sda5 /mnt/gentoo/var
# mkdir /mnt/gentoo/home
# mount /dev/sda6 /mnt/gentoo/home
|
Notiz:
Wenn Sie /tmp auf eine separate Partition legen möchten, stellen
Sie sicher, dass Sie die Berechtigungen nach dem mounten ändern:
chmod 1777 /mnt/gentoo/tmp. Dies gilt auch für /var/tmp.
|
Sie müssen auch noch das proc Dateisystem (ein virtuelles Interface zum Kernel)
auf /proc mounten. Zunächst müssen wir jedoch alle Dateien auf der
Partition ablegen.
Fahren Sie mit der Installation der Gentoo
Installationsdateien fort.
[ << ]
[ < ]
[ Hauptseite ]
[ > ]
[ >> ]
Die Inhalte dieses Dokuments sind, sofern nicht explizit
anders genannt, unter der Creative Commons -
Namensnennung / Weitergabe Lizenz lizenziert. Die Gentoo Name and Logo
Usage Guidelines treffen zu.
|