Автоматическая установка Ubuntu с USB-накопителя - неправильно смонтирована

Я делаю автоматическую установку Ubuntu-14.04-сервера с USB-накопителем на серверах другого типа (HP Proliant ML110, ML310, ML350).

В некоторых случаях USB-накопитель неправильно установлен на /media вместо /cdrom, останавливая процесс установки с помощью следующего сообщения:

[Определить и смонтировать CD-ROM ]

Ваш установочный компакт-диск не может быть смонтирован. Это, вероятно, означает, что CD-ROM не был в приводе. Если это так, вы можете вставить его еще раз.

Мне удалось определить некоторые случаи, когда эта ошибка возникает:

  • на ML110 и ML310: когда жесткий диск пуст
  • на ML350 Gen9: даже если жесткий диск разделен.

Я думаю, что это исходит от debian-installer что на ранней стадии установки пытается смонтировать раздел с первого диска на /media, А затем монтирует USB-накопитель в /cdrom,

В вышеупомянутых случаях жесткий диск обнаруживается позже в процессе установки, делая USB-накопитель первым и, следовательно, устанавливая его на /media а не на /cdrom,

Для людей, для которых ручное вмешательство не является проблемой, я нашел обходной путь, который я опишу в ответе ниже. Но для автоматической установки это не решение.

Можем ли мы заставить установщик смонтировать USB-накопитель в определенном месте?

2 ответа

Для людей, для которых ручное вмешательство не является проблемой, вот простая процедура.

  1. Откройте другой терминал tty2 или же tty3 нажав alt+F2 или же alt+F3 и нажмите enter
  2. Отключите USB-накопитель от /media:

    umount /media/

  3. Определите USB-накопитель sdX в списке устройств (sda, sdb, sdc…)

    ls -l /sys/block/sd* | grep usb

  4. Подключите USB-накопитель к /cdrom

    mount /dev/sdX /cdrom

  5. Вернитесь к главному терминалу tty1 нажав alt+F1 и нажмите yes повторить попытку установки "CD-ROM".

Как уже упоминалось в вопросе, это обходной путь, который не является решением для автоматической установки.

Я столкнулся с той же проблемой и, наконец, по счастливой случайности натолкнулся на набор слайдов, которые позволили мне автоматизировать это, и было сопутствующее хранилище кода с полным файлом preseed. https://github.com/uweplonus/adia-install/blob/master/initrd/preseed.cfg#L3

Многие люди предлагают использовать preseed/early_command umount /media/* но это не сработало в течение достаточно долгого времени из-за того, что предварительная часть запускается по сравнению с разделением.

Правильный способ сделать это состоит в том, чтобы добавить следующее в любой файл preseed, на который ссылается команда загрузки.

d-i partman/early_command string \ USBDEV=$(list-devices usb-partition | sed "s/\(.*\)./\1/");\ BOOTDEV=$(list-devices disk | grep -v "$USBDEV" | head -1);\ debconf-set partman-auto/disk $BOOTDEV;\ debconf-set grub-installer/bootdev $BOOTDEV; \ umount /media;

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