Жесткий диск не обнаружен на ранней стадии автоматической установки

Я делаю автоматическую установку Ubuntu-14.04-сервера с USB-накопителем и preseed файл на разных типах серверов (HP Proliant ML110, ML310, ML350). это preseed файл содержит несколько правил, включая конфигурацию partman-auto это автоматизирует (настраиваемое) разбиение жесткого диска сервера.

  • На серверах ML110 и ML310, в начале процесса установки (до partman запускается), жесткий диск находится в /dev/sda и USB-накопитель занимает /dev/sdb, Поэтому я уточняю d-i partman-auto/disk string /dev/sda в моем preseed файл, и разделение применяется на жестком диске сервера. Все отлично работает

  • Но на серверах ML350, в начале процесса установки, основного жесткого диска нет/dev/sd*и USB-накопитель /dev/sda, Это всего лишь несколько шагов спустя, что жесткий диск обнаруживается... в /dev/sdb, Поэтому мое правило в preseed файл больше не действителен и partman испортить мой USB-накопитель.

Этот очень раздражающий факт поднимает два вопроса:

  1. Почему основной жесткий диск не отображается на устройствах в начале процесса установки?
  2. Как я мог заставить основной жесткий диск обнаружиться (и заставить его взять /dev/sda) или, если я не могу, как я могу с уверенностью выяснить, на каком /dev/sdX основной жесткий диск будет.

Я пытался добавить dmraid=true в настройках ядра это не сработало. Я тоже пытался добавить pci=conf1 (найдено здесь) но безуспешно.

2 ответа

Решение

Даже если в presed/early_command жесткий диск еще не был обнаружен, я обнаружил, что в partman/early_command, это!

Поэтому я сделал команду, которая устанавливает partman-auto/disk параметр debian-installer с правильным именем устройства, проверено в тот момент.

Для получения дополнительной информации об этой запятой см. Автоматическая установка с preseed - предоставьте пользовательское устройство partman-auto

После перехода от старого драйвера CCISS к драйверу HPSA контроллеры HP Smart Array теперь используют обычную подсистему блочных устройств SCSI. Следовательно, схема именования устройств /dev/sdX,

Использование USB-ключа изменяет перечисление устройства, поскольку USB-устройство присутствует до RAID-контроллера (вы загружаетесь с него). Таким образом, USB-ключ становится /dev/sda и первый RAID-контроллер HP Smart Array является /dev/sdb,

Современные операционные системы Linux используют метки разделов или UUID, поэтому имя устройства не будет иметь значения при первой загрузке ( после удаления USB-ключа).

Разница между вашими платформами может заключаться в том, что ML110 и ML310 (вы не указали поколения) не используют контроллеры Smart Array или имеют другой класс устройств RAID.

ML350 имеет надлежащий контроллер Smart Array, поэтому поведение, которое вы видите, вполне ожидаемо.

Используйте другой файл preseed или попробуйте другой подход к развертыванию, если это возможно.

Другие вопросы по тегам