What is cciss in linux

ОПИСАНИЕ¶

Замечание: Данный устаревший драйвер был удалён из ядра версии 4.14; в новых ядрах его заменяет hpsa(4).

cciss — это блочный драйвер для старых контроллеров RAID HP Smart Array.

Параметры¶

cciss_allow_hpsa=1: этот параметр запрещает драйверу cciss пробовать управлять контроллерами, которыми может управлять драйвер hpsa(4). Другими словами, этим параметром драйвер cciss будет ограничен следующими контроллерами:

 
Smart Array 5300
Smart Array 5i
Smart Array 532
Smart Array 5312
Smart Array 641
Smart Array 642
Smart Array 6400
Smart Array 6400 EM
Smart Array 6i
Smart Array P600
Smart Array P400i
Smart Array E200i
Smart Array E200
Smart Array E200i
Smart Array E200i
Smart Array E200i
Smart Array E500

Поддерживаемое оборудование¶

Драйвер cciss поддерживает следующие платы Smart Array:

 
Smart Array 5300
Smart Array 5i
Smart Array 532
Smart Array 5312
Smart Array 641
Smart Array 642
Smart Array 6400
Smart Array 6400 U320 Expansion Module
Smart Array 6i
Smart Array P600
Smart Array P800
Smart Array E400
Smart Array P400i
Smart Array E200
Smart Array E200i
Smart Array E500
Smart Array P700m
Smart Array P212
Smart Array P410
Smart Array P410i
Smart Array P411
Smart Array P812
Smart Array P712m
Smart Array P711m

Особенности настройки¶

Для настройки контроллеров HP Smart Array используйте HP Array Configuration Utility (hpacuxe(8) или hpacucli(8)) или Offline ROM-based Configuration Utility (ORCA), которую можно запустить из ROM Smart Array при старте машины.

ФАЙЛЫ¶

Узлы устройства¶

Ниже приведена схема именования устройств:

104 cciss0
105 cciss1
106 cciss2
105 cciss3
108 cciss4
109 cciss5
110 cciss6
111 cciss7

 
b7 b6 b5 b4 b3 b2 b1 b0
|----+----| |----+----|
| |
| +-------- Идентификатор раздела (0=всё устройство,
1-15 раздел)
|
+-------------------- Номер логического тома

Порядок именования устройств:

/dev/cciss/c0d0 Controller 0, disk 0, whole device
/dev/cciss/c0d0p1 Controller 0, disk 0, partition 1
/dev/cciss/c0d0p2 Controller 0, disk 0, partition 2
/dev/cciss/c0d0p3 Controller 0, disk 0, partition 3
/dev/cciss/c1d1 Controller 1, disk 1, whole device
/dev/cciss/c1d1p1 Controller 1, disk 1, partition 1
/dev/cciss/c1d1p2 Controller 1, disk 1, partition 2
/dev/cciss/c1d1p3 Controller 1, disk 1, partition 3
Читайте также:  404 Not Found

Файлы в /proc¶

В файлах /proc/driver/cciss/cciss1+ содержится информация о настройке каждого контроллера. Пример:

$ cd /proc/driver/cciss $ ls -l total 0 -rw-r--r-- 1 root root 0 2010-09-10 10:38 cciss0 -rw-r--r-- 1 root root 0 2010-09-10 10:38 cciss1 -rw-r--r-- 1 root root 0 2010-09-10 10:38 cciss2 $ cat cciss2 cciss2: HP Smart Array P800 Controller Board ID: 0x3223103c Firmware Version: 7.14 IRQ: 16 Logical drives: 1 Current Q depth: 0 Current # commands on controller: 0 Max Q depth since init: 1 Max # commands on controller since init: 2 Max SG entries since init: 32 Sequential access devices: 0 cciss/c2d0: 36.38GB RAID 0

Файлы в /sys¶

/sys/bus/pci/devices//ccissX/cXdY/model Модель логического устройства Y контроллера X со страницы 0 SCSI INQUIRY. /sys/bus/pci/devices//ccissX/cXdY/rev Версия логического устройства Y контроллера X со страницы 0 SCSI INQUIRY. /sys/bus/pci/devices//ccissX/cXdY/unique_id Серийный номер логического устройства Y контроллера X со страницы 83 SCSI INQUIRY. /sys/bus/pci/devices//ccissX/cXdY/vendor Производитель логического устройства Y контроллера X со страницы 0 SCSI INQUIRY. /sys/bus/pci/devices//ccissX/cXdY/block:cciss!cXdY Символьная ссылка на /sys/block/cciss!cXdY. /sys/bus/pci/devices//ccissX/rescan При записи в этот файл драйвер повторно сканирует контроллер для обнаружения новых, удалённых или изменённых логических дисков. /sys/bus/pci/devices//ccissX/resettable Значение 1 в файле показывает, что параметр ядра «reset_devices=1» (используемый kdump) был принят данным контроллером. Значение 0 показывает, что параметр ядра «reset_devices=1» принят не был. Некоторые модели Smart Array не способны принять этот параметр. /sys/bus/pci/devices//ccissX/cXdY/lunid 8-байтовый LUN ID, используемый для адресации логического устройства Y контроллера X. /sys/bus/pci/devices//ccissX/cXdY/raid_level Уровень RAID логического устройства Y контроллера X. /sys/bus/pci/devices//ccissX/cXdY/usage_count Счётчик использования (число открытий) логического устройства Y контроллера X.

Поддержка ленточных устройств SCSI и устройств смены носителя¶

Драйвер поддерживает устройства SCSI с последовательным доступом и смены носителя, и автоматически создаёт соответствующие узлы устройств (например, /dev/st0, /dev/st1 и т. д.; подробней смотрите в st(4)). Чтобы использовать ленточные устройства SCSI с контроллером Smart Array 5xxx в настройках ядра нужно включить «SCSI tape drive support for Smart Array 5xxx» и «SCSI support».

Также заметим, что драйвер не привлекает ядро SCSI во время инициализации. Драйвер должен динамически задействовать ядро SCSI через запись в файловой системе /proc, которую (/proc/driver/cciss/cciss*) «блочная» часть драйвера создаёт во время работы. Так сделано потому, что на момент инициализации драйвера ядро SCSI ещё может быть не инициализировано (так как драйвер — блочный) и попытка зарегистрировать его в ядре SCSI в этом случае вызывала бы зависание. Это лучше всего выполнять из сценария инициализации (обычно, в /etc/init.d, но в разных дистрибутивах по-разному). Пример:

for x in /proc/driver/cciss/cciss7* do 
echo "engage scsi" > $x done

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

Читайте также:  How to run makefile linux

Также заметим, что если устройства с последовательным доступом или смены носителя не обнаружены, то ядро SCSI не привлекается из показанного выше сценария.

Ленточные устройства SCSI, подключаемые во время работы (hot plug)¶

Поддерживается подключение ленточных устройств SCSI без выключения машины. Драйвер cciss должен быть уведомлён об изменениях на шине SCSI. Это можно сделать через файловую систему /proc. Пример:

echo «rescan» > /proc/scsi/cciss0/1

1. Опросить адаптер об изменениях на физических шинах SCSI и/или управляемой петли (arbitrated loop) fibre channel; 2. Определить все новые или удалённые устройства с последовательным доступом или смены носителя;

Драйвер выводит сообщения о добавленных или удалённых устройствах, а также контроллер, шину, назначение и lun каждого используемого устройства. Также, драйвер уведомляет промежуточный слой SCSI об этих изменениях.

Заметим, что по соглашению об именовании кроме имени драйвера, записи файловой системы /proc содержат номер (например, «cciss0» вместо «cciss», как вы могли бы ожидать).

Замечание: драйвер cciss на промежуточном слое SCSI представляет в виде устройств SCSI только устройства с последовательным доступом и смены носителя. Устройства для физических дисков SCSI не представляются на промежуточном слое SCSI. Дисковые устройства представляются ядром как логические устройства, который контроллер массива собрал из частей физических дисков. Логические устройства представляются на блочном уровне (не на промежуточном слое SCSI). Это важно для драйвера — не дать прямой доступ ядру к физическим дискам, так как устройства используются контроллером массива для сборки логических устройств.

Обработка ошибок SCSI для ленточных устройств и устройств смены носителя¶

Промежуточный слой Linux SCSI предоставляет порядок (protocol) обработки ошибок, который запускается, если команда SCSI выполнилась с ошибкой определённое количество раз (которое может зависеть от команды). Драйвер cciss следует этому порядку с некоторыми изменениями. Обычный порядок состоит из четырёх шагов:

  • Устройству указывается прервать работу команды.
  • Если это не сработало, устройство сбрасывается (reset).
  • Если это не сработало, сбрасывается шина SCSI.
  • Если это не сработало, сбрасывается адаптер шины узла.
Читайте также:  Создать папку linux mkdir

Как драйвер SCSI, cciss является блочным и только ленточные устройства и устройства смены носителя представлены на промежуточном уровне SCSI. Кроме этого, в отличие от более простых драйверов SCSI, дисковый ввод-вывод продолжается через блочную часть во время процесса восстановления после ошибки SCSI. Поэтому драйвер cciss выполняет только первые два шага: прерывание команды и сброс устройства. Также заметим, что большинству ленточных устройств не поможет прерывание команды и, иногда, они даже не подчиняются этой команде, хотя очень редко. Если команда не может быть прервана и устройство не может быть сброшено, то устройство переводится в неактивный режим (offline).

Если событие обработки ошибок возникло и ленточное устройство успешно сброшено или последняя команда успешно прервана, то ленточное устройств может всё ещё продолжать не позволять выполнять ввод-вывод, пока какая-нибудь команда не поместит ленточное устройство в известное положение. Как правило, вы должны перемотать ленту (например, командной mt -f /dev/st0 rewind) перед тем как продолжить ввод-вывод снова в ленточное устройство, которое было сброшено.

СМ. ТАКЖЕ¶

hpsa(4), cciss_vol_status(8), hpacucli(8), hpacuxe(8)

http://cciss.sf.net, Documentation/blockdev/cciss.txt и файл Documentation/ABI/testing/sysfs-bus-pci-devices-cciss в дереве исходного кода ядра Linux

ЗАМЕЧАНИЯ¶

Эта страница является частью проекта Linux man-pages версии 5.10. Описание проекта, информацию об ошибках и последнюю версию этой страницы можно найти по адресу https://www.kernel.org/doc/man-pages/.

ПЕРЕВОД¶

Русский перевод этой страницы руководства был сделан Azamat Hackimov , Dmitriy S. Seregin , Dmitry Bolkhovskikh , Katrin Kutepova , Yuri Kozlov и Иван Павлов

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

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

Source file: cciss.4.ru.gz (from manpages-ru 4.18.1-1~bpo11+1)
Source last updated: 2023-04-16T06:11:30Z
Converted to HTML: 2023-04-30T15:50:02Z

Источник

Оцените статью
Adblock
detector