Лучшая система размещения статей
 Добавить в избранное |  Сделать стартовой 
Поиск По Сайту
Навигация
     Главная
     Форум
     Новости
     Обзор новостей
     Гостевая
     Статьи
     Файлы
     Магазин
     Пользователи
     Контакты
     О Проекте
     Карта Сайта
Вход
Логин:

Пароль:


Запомнить меня
Вам нужно Авторизоваться.
Забыли Пароль?
Регистрация
Атестат
Подписка на новости: Подписаться

К вопросу о горячей замене IDE HDD в Linux 2.4

Источник: www.opennet.ru
Добавлено: 2006-03-04 15:06:01

В последнее время приходится часто работать с аппаратурой, поддерживающей аппаратную замену (это на серверах), а вот с горячей заменой на персональных компьютерах плотно сталкиваться не приходилось. Тем не менее, опишу сам процесс.

В наличии имеется linux-box с установленным slackware 9.1; ядро, используемое по умолчанию - bare.z, версия - Linux version 2.4.22 (root@midas) (gcc version 3.2.3) #6 Tue Sep 2 17:43:01 PDT 2003;

Информация об оборудовании :
bash-2.05b$ /sbin/lspci
00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03)
00:07.0 ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 02)
00:0c.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 08)
00:0e.0 Ethernet controller: Standard Microsystems Corp [SMC] 83C170QF (rev 06)
01:01.0 VGA compatible controller: S3 Inc. Savage 4 (rev 04)
Используемые драйвера:
bash-2.05b$ cat /proc/ide/drivers
ide-scsi version 0.93
ide-floppy version 0.99.newide
ide-cdrom version 4.59-ac1
ide-disk version 1.17
ide-default version 0.9.newide
bash-2.05b$
Теперь непосредственно об IDE-дисках, которые использовались.
hda: QUANTUM FIREBALLlct15 20, ATA DISK drive - это системный диск
hdb: FX4824T, ATAPI CD/DVD-ROM drive - это понятно, кто такой (подключен к тому же каналу, что и системный диск)
hdd: QUANTUM FIREBALL_TM3200A, ATA DISK drive - а это уже переносной диск, который непосредственно и участвовал в эксперименте.
Итак, делаем паузу для заявления.
В IDE-дисках ATA-стандарта НЕ ПРЕДУСМОТРЕНО горячее подключение, поэтому вся отвественность за порчу оборудования лежит на Вас.
Однако, при грамотном подходе, можно (а иногда - нужно) использовать горячее подключение. Необходимо помнить последовательность операций:
подключается шлейф свободного канала
подключается питание к диску горячей замены
производится сканирование шины
монтируется нужный раздел
производим запись с/на нужный раздел/накопитель
размонтируется раздел
отключается шина/дерегистрация канала
отключается питание от диска горячей замены
отключается шлейф
Рассмотрим данный процесс более подробно.

Первые 2 пункта освещать подробно не имеет смысла, остановимся на следующем, третьем пункте.

Что же означает понятие "сканирование шины"? При старте системы, ядро производит опрос устройств, сидящих на IDE-каналах (это порты 0x1f0, 0x170).

При исправных устройствах система получает от них паспорта, на основе которых и делается вывод об их геометрии, названии, UDMA-свойствах и т.д.

Если бы мы при старте задали параметры "ide0=noprobe", то сканирование первого IDE-канала не было произведено. Зачем это нужно? Во-первых, при наличии неисправного IDE-диска, который подключен к боксу, загрузиться проблематично, а именно нельзя. Во-вторых, как в нашем случае, есть возможность подключить дополнительный диск на ходу. Поэтому не будем привязывать систему к конкретному HDD, а потребуем пропускать сканирование.

Можно этого и не делать, а приступить сразу к сканированию.

Для этого нам потребуется пакет hdparm. Поехали!
/usr/sbin/hdparm -R 0x170 0 0 /dev/hda
Означает зарегистрировать IDE-интерфейс по порту 0x170 для устройства /dev/hda. Обращаю ваше внимание, что для меня самого любопытно будет узнать, почему именно таким образом происходит инициализация второго канала. В итоге в /var/log/syslog появляются строчки:
Jan 6 19:16:49 ab kernel: hdd: QUANTUM FIREBALL_TM3200A, ATA DISK drive
Jan 6 19:16:49 ab kernel: ide1 at 0x170-0x177,0x376 on irq 15
Jan 6 19:16:49 ab kernel: hdd: attached ide-disk driver.
Т.е. определился подключенный диск. Отлично. Едем дальше.
/usr/sbin/hdparm -z /dev/hdd
Обновили содержание разделов. Дальше дело техники - монтируется необходимое устройство, производится запись и т.д.

Что же касается пункта #7, то, по желанию, можно производить дерегистрацию канала, а можно и не производить. Не забывайте при этом последовательность действий.

P.S. Стоит отметить следующее - использовалось стандартное ядро, манипуляции с модулями ide-disk производить не обязательно.

Понравилась статья? Поделись с друзьями!
Facebook Опубликовать в LiveJournal Tweet This


Оглавление   |  ?? ????

Оглавление        Вернуться к Статье

Скачай CMS сейчас!
Текущая версия системы управления сайтом WebCodePortalSystem:
v.7.1.00
Скачать CMS v.7.1.00
Обновление с версии 6.2.01

Сайт разработчика:
Новые бета версии

На Сайте
Гостей: 11
Пользователей: 0


10 новых статей
Наши Партнеры


Copyright WebCode-Command © 2003-2012
Работает под управлением WebCodePortalSystem v. 6.2.01
Rambler's Top100