Я выполняю автоматическую установку Ubuntu-14.04-server с 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-накопитель.
Этот очень досадный факт вызывает два вопроса:
/dev/sda
) или если я не могу, как я могу с уверенностью узнать, /dev/sdX
основной жесткий диск будет.Я пытался добавить dmraid=true
в параметрах ядра это не сработало. Я тоже пытался добавить pci=conf1
(нашел Вот) но безуспешно.
После перехода от старого драйвера 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 или попробуйте другой подход к развертыванию, если это возможно.
Даже если в presed/early_command
жесткий диск еще не обнаружился, я обнаружил, что в partman/early_command
, это!
Поэтому я сделал команду, которая устанавливает partman-auto/disk
параметр debian-installer
с правильным правильным именем устройства, проверенным в данный момент.
Для получения дополнительной информации об этой команде см. Автоматическая установка с preseed - отдайте пользовательское устройство partman-auto