sd - Treiber für SCSI-Platten
#include <linux/hdreg.h> /* für HDIO_GETGEO */
#include <linux/fs.h> /* für BLKGETSIZE und BLKRRPART */
Der Name für das blockorientierte Gerät hat die Form:
sdlp. Darin gibt
l das physikalische Laufwerk und
p die Partitionsnummer darauf an. Die Partitionsnummer wird
weggelassen, wenn das ganze Laufwerk angesprochen werden soll.
SCSI-Platten haben eine Haupt-Gerätenummer (Major Device Number) von 8
und eine Neben-Gerätenummer (Minor Device Number) der Form (16 *
Laufwerksnummer) +
Partitionsnummer. Die
Laufwerksnummer
entspricht der Nummer des physikalischen Laufwerks in der Reihenfolge der
Erkennung. Die
Partitionsnummer wird wie folgt angegeben:
- •
- Partition 0 ist das ganze Laufwerk;
- •
- Partition 1…4 sind die
»primären« DOS-Partitionen;
- •
- Partition 5…8 sind »erweiterte« (oder
»logische«) DOS-Partitionen.
Beispielsweise ist für
/dev/sda Major 8, Minor 0 und bezieht sich
auf das gesamte erste SCSI-Laufwerk im System.
/dev/sdb3 hat Major 8,
Minor 19 und bezieht sich auf die dritte »primäre«
DOS-Partition des zweiten SCSI-Laufwerkes im System.
Derzeit werden nur blockorientierte Geräte unterstützt. Direkter
Gerätezugriff ist noch nicht implementiert.
Die folgenden Aufrufe von
ioctl(2) werden unterstützt:
- HDIO_GETGEO
- Liefert die BIOS-Plattenparameter in der folgenden
Struktur:
struct hd_geometry {
unsigned char heads;
unsigned char sectors;
unsigned short cylinders;
unsigned long start;
};
- Ein Zeiger auf diese Struktur wird als Parameter an
ioctl(2) übergeben.
- Die in diesem Parameter gelieferten Informationen
entsprechen der Plattengeometrie des Laufwerkes, wie sie von DOS
verstanden wird! Diese Geometrie entspricht nicht der
physikalischen Geometrie des Laufwerks. Sie werden bei der Erstellung der
Partitionstabelle des Laufwerks verwendet und betreffen die Programme
fdisk(1), efdisk(1) und lilo(8). Wenn die Geometrie
nicht ermittelt werden kann, wird für alle Parameter Null
zurückgegeben.
- BLKGETSIZE
- Ergibt die Gerätegröße in Sektoren.
Der Parameter für ioctl(2) sollte ein Zeiger auf eine
Variable des Datentyps long sein.
- BLKRRPART
- Erzwingt ein erneutes Lesen der Partitionstabelle der
SCSI-Platte. Keine Parameter erforderlich.
- Die SCSI ioctl(2)-Operationen werden ebenfalls
unterstützt. Wird der ioctl(2)-Parameter benötigt und
dieser ist NULL, so schlägt ioctl(2) mit dem Fehler
EINVAL fehl.
- /dev/sd[a-h]
- das ganze Gerät
- /dev/sd[a-h][0-8]
- individuelle Partitionen
Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze
<
[email protected]>, Norbert Kümin <
[email protected]>
und Martin Eberhard Schauer <
[email protected]> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU
General Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
Sie bitte eine E-Mail an die
Mailingliste
der Übersetzer