sd(4) Device Drivers Manual sd(4)

ИМЯ

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

СИНТАКСИС

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

НАСТРОЙКА

Эти блочные устройства именуются согласно следующему формату: sdlp, где l — буква, обозначающая физический накопитель, а p — номер раздела на этом физическом накопителе. Часто номер раздела p бывает пропущен, тогда устройство соответствует полностью всему накопителю.

Файлам устройств дисков SCSI присвоен старший номер 8, а младшие номера устройств рассчитываются как (16 * номер_накопителя) + номер_раздела, где номер_накопителя — это номер физического накопителя в порядке обнаружения, а номер_раздела:

раздел 0 — накопитель полностью
partitions 1–4 are the DOS "primary" partitions
partitions 5–8 are the DOS "extended" (or "logical") partitions

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

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

ОПИСАНИЕ

Доступны следующие вызовы ioctl:

Возвращает параметры диска из 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). Если информация о геометрии диска недоступна, все поля структуры равны нулю.
Возвращает размер устройства в секторах. Параметр ioctl(2) должен быть указателем на long.
Заставляет перечитать таблицы разделов на диске SCSI. Используется без параметра.
Также поддерживаются операции SCSI через ioctl(2). Если ioctl(2) требуется параметр и он равен NULL, то ioctl(2) завершается ошибкой EINVAL.

ФАЙЛЫ

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

ПЕРЕВОД

Русский перевод этой страницы руководства был сделан Alexander Golubev <fatzer2@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Hotellook, Nikita <zxcvbnm3230@mail.ru>, Spiros Georgaras <sng@hellug.gr>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.

5 февраля 2023 г. Linux man-pages 6.05.01