os-prober не находит окна в Intel Softraid
Фон:
У меня есть рабочий стол со следующей конфигурацией диска:
- Ubuntu 20.04 на одном SSD
- Windows 10 в Intel RST Raid на 2 твердотельных накопителях
ОС устанавливаются в режиме UEFI
Проблема:
Пробник ОС не находит установку Windows на Intel RST Raid, несмотря на возможность монтирования раздела с файлами EFI. Он отлично находит файлы Ubuntu EFI. После дальнейшего изучения того, почему я наткнулся на строки 31-35 и строку отладки, появившуюся в журналах. После запуска команды udevadm в условном режиме она выплевывается.
/devices/virtual/block/md126/md126p1
Это означает, что он не будет искать файлы EFI в этом разделе, потому что это виртуальный диск.
Обходной путь
Открытым
/usr/lib/os-probes/mounted/05efi
в vim и закомментируйте строку 34. Это позволяет os-prober правильно находить файлы Windows EFI и правильно заполнять меню в grub, теперь машина может успешно загружать Windows и Ubuntu из grub.
Вопрос
Я знаю, что весь код написан по какой-то причине, и это было помещено здесь в какой-то момент. Мне интересно:
- Есть ли причина, по которой я не должен просто закомментировать это (или сделать его умнее, проверив «md» в пути с помощью grep)?
- Возможно ли, что у меня что-то не так настроено в mdadm, и поэтому он отображается как виртуальное устройство? Моя конфигурация mdadm выглядит следующим образом:
# mdadm.conf
#
# !NB! Run update-initramfs -u after updating this file.
# !NB! This will ensure that initramfs has an uptodate copy.
#
# Please refer to mdadm.conf(5) for information about this file.
#
# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers
# automatically tag new arrays as belonging to the local system
HOMEHOST <system>
# instruct the monitoring daemon where to send mail alerts
MAILADDR root
# definitions of existing MD arrays
ARRAY metadata=imsm UUID=ef7f02c0:f0d35b35:760ba725:f4c93763
ARRAY /dev/md/SSDRaid container=ef7f02c0:f0d35b35:760ba725:f4c93763 member=0 UUID=d3be1bc0:8dd0f96d:f53e5af5:4974fe26
# This configuration was auto-generated on Sat, 01 May 2021 20:33:32 -0500 by mkconf
1 ответ
Я тоже столкнулся с этой проблемой на своем ноутбуке. У меня есть MSI GT60, и он поставляется с 1 SSD и 1 HDD с завода, однако он имеет 3 порта MSATA и предназначен для приема до 3 устройств MSATA в RAID1/0 (рекламируется как дисковая производительность до 1500 МБ/с).
При этом используется обычный программный/чипсетный RAID-массив Intel с чипсетом C220 (я полагаю, что он называется RST).
Intel RST поддерживается драйвером mdraid в Linux. Это единственное решение, которое я нашел, при котором Windows и Linux могут договориться о RAID.
Я взломал скрипт os-prober, как советовали выше, когда установил F32 на эту машину, однако я нашел лучшее решение после обновления F34.
Поскольку у меня есть 1 жесткий диск для Linux, я просто скопировал каталоги Microsoft и MSI из файловой системы RAID EFI в файловую систему EFI на жестком диске, os-prober прекрасно находит эти загрузчики EFI, и Windows загружается без проблем.
Если у вас есть возможность хранить файлы загрузчика EFI на обычном устройстве, это предпочтительное решение, пока решение не будет добавлено в os-prober для Intel RST.