Я запускаю Ubuntu с USB-флешки.
Мой ноутбук не поддерживает загрузку с моей ExpressCard (и не имеет никаких портов USB3, кроме тех, которые я добавил через ExpressCard).
Я использую Grub 2.0x, который Ubuntu 14.04 установил на мое USB-устройство, с которого я загружаюсь через порты USB 2.0.
У меня есть еще одно USB-устройство, подключенное к моей карте USB 3 Expresscard. На нем установлен xenserver 5.6.
Я хотел бы загрузить grub через USB 2, а затем загрузить xenserver с моей карты USB 3. Однако grub не видит жесткий диск.
Я пробовал insmod ahci, ohci и ata. Безуспешно. USB-накопитель никогда не виден из портов USB 3.
Если я запускаю lspci, я вижу в списке хост-контроллер USB 3.
Как мне загрузиться с флэш-накопителя USB 3 через ExpressCard и Grub?
Я читал о dracut и видел некоторые инструкции для NEC и USB 3, пересоздавая initrd, как мне кажется. Однако Ubuntu не очень хорошо работает с dracut. Если я его загружу, он сломает initramfs, как мне кажется, что вызовет всевозможный хаос.
Мне не обязательно использовать Ubuntu. Я думал стереть Ubu и поставить Centos, чтобы попробовать опцию dracut. Однако мне интересно, смогу ли я решить эту проблему с помощью Grub. У меня есть дядя, который сказал, что, возможно, мне нужно скомпилировать Grub 2 с некоторыми модулями драйверов, но я не видел таких опций, когда компилировал его. Я видел способ установить Grub с опцией --install-modules=ata, ahci и т. д. Я не уверен, насколько это отличается от обычной команды insmod, но выбор ahci сломал мои конфигурации Grub (из-за перемаркировки моих дисков 'ls' на устройства (ahci)).
Другой вариант — попробовать использовать kexec в уже загруженном ядре, которое видит устройство, но у меня это не очень получилось. Система выдавала kernel panic.
решение1
Ваш внутренний порт ExpressCard получает питание при загрузке? У меня нет, он получает питание только после загрузки ОС... по крайней мере, он поддерживает горячее подключение и горячую замену и отлично работает в Linux.
Но при загрузке не повезло, так как у него нет питания!
Боюсь, что единственным способом будет загрузить микроядро, которое его запитает (подключит электричество), а затем выполнить холодную перезагрузку с другим ядром, поддерживающим ExpressCard... и то, и другое может храниться на любом другом носителе, с которого может загружаться система BIOS / UEFI.
Я оставил попытки несколько лет назад.