sd

Autres langues

Langue: ru

Version: Чтв Дек 17 10:15:53 1992 (fedora - 25/11/07)

Section: 4 (Pilotes et protocoles réseau)

ИМЯ

sd - драйвер для дисковых накопителей SCSI

КРАТКАЯ СВОДКА

#include <linux/hdreg.h> /* для HDIO_GETGEO */ #include <linux/fs.h> /* для BLKGETSIZE и BLKRRPART */

КОНФИГУРАЦИЯ

Название блочного устройства имеет форму: sdlp, где l~-- буква, определяющая физический диск, а p~-- число, определяющее раздел на этом жёстком диске. Зачастую номер раздела p опускается, если устройство соответствует всему диску.

Диски SCSI имеют старший номер устройства 8, а младший номер устройства в форме (16 * номер_диска) + номер_раздела, где номер_диска~-- номер физического диска в порядке обнаружения системой, а partition_number определяется следующим образом:

раздел 0 -- это весь диск
разделы 1-4 -- первичные разделы DOS
разделы 5-8 -- расширенные (или логические) разделы DOS

Например, /dev/sda будет иметь старший номер 8, младший 0, и относиться к целому первому SCSI-диску в системе; /dev/sdb3 будет иметь старший номер 8, младший 19, и относиться к третьему первичному разделу DOS на втором SCSI-диске в системе.

На данный момент предоставляется доступ только к блочным устройствам. Устройства с прямым доступом (raw devices) ещё не реализованы.

ОПИСАНИЕ

Доступны следующие вызовы ioctl:
HDIO_GETGEO
Возвращает параметры диска от BIOS в следующей структуре:
 struct hd_geometry {
       unsigned char heads;
       unsigned char sectors;
       unsigned short cylinders;
       unsigned long start;
 };
 

Указатель на эту структуру передаётся как аргумент ioctl(2).

Информация, возвращаемая в аргументе, является геометрией диска как это понимается в DOS! Это не есть физическая геометрия диска. Однако, она используется при формировании таблицы разделов на диске и необходима для удобной работы fdisk(1),efdisk(1), и lilo(1). Если информация о геометрии недоступна, все возвращаемые параметры будут равны нулю.

BLKGETSIZE
Возвращает размер устройства в секторах. Параметром ioctl(2) должен быть указатель на long.
BLKRRPART
Приводит к перечитыванию таблицы разделов SCSI диска. В параметрах не нуждается.

Также поддерживаются вызовы ioctl, описанные в scsi(4). Если параметр ioctl(2) необходим и равен NULL, то ioctl() возвратит -EINVAL.

ФАЙЛЫ

/dev/sd[a-h]: целое устройство
/dev/sd[a-h][0-8]: отдельные блочные разделы

СМОТРИ ТАКЖЕ

scsi(4)