Резервный загрузчик находится EFI/BOOT/bootx64.efi
на системном разделе EFI (ESP). Последнее, что я проверял, это то, где FreeBSD по умолчанию хранит свой загрузчик. Это немного странно и потенциально невнимательно для других ОС - если бы каждая ОС использовала имя резервного файла загрузчика, они все попрали бы друг над другом, как в BIOS. (Одним из преимуществ EFI является то, что он явно поддерживает произвольно большое количество файлов загрузчика, что позволяет избежать этой проблемы BIOS.)
В любом случае у вас есть несколько вариантов:
- Переименуйте загрузчик FreeBSD или его каталог. Если вы переименуете
EFI/BOOT
ESP вEFI/FreeBSD
, вы должны увидеть изменение его значка в rEFInd. Точно так же, если переименоватьEFI/BOOT/bootx64.efi
вEFI/BOOT/freebsd.efi
, вы должны увидеть его изменения значка. Обе эти опции имеют то преимущество, что некоторые будущие ОС или утилиты смогут установить собственный резервный загрузчик без перегрузки загрузчика FreeBSD; но по той же причине, если обновление пакета FreeBSD приводит к установке улучшенного загрузчика FreeBSD, оно будет отображаться как новая резервная запись в rEFInd, и запись со значком FreeBSD в rEFInd не будет обновляться. Вам нужно будет вручную скопировать или переименовать новый загрузчик так же, как вы делали оригинал, чтобы применить обновление. - Применение значка к резервному загрузчику. Существует довольно много способов применить значки к резервному загрузчику без переименования или перемещения, как описано здесь в документации по rEFInd. Самый простой, вероятно, будет скопировать
EFI/refind/icons/os_freebsd.png
наEFI/BOOT/bootx64.png
на ESP. (То есть, чтобы дать файлу значка то же имя, что и у самого загрузчика, но с.png
расширением.) Обратите внимание, что этот подход приведет к уязвимости: если кто-то решит использовать резервное имя файла загрузчика, ваша установка FreeBSD будет не загружаться до тех пор, пока вы не переустановите загрузчик FreeBSD. OTOH, обновления для загрузчика FreeBSD должны применяться без проблем.
Обратите внимание, что для обеих этих опций требуется доступ к ESP. Этот раздел не монтируется по умолчанию в OS X, но mountesp
скрипт, который поставляется с rEFInd, будет монтировать его и сообщать вам, где он монтируется. Я не знаю, если FreeBSD монтирует ESP по умолчанию. Если нет, вам нужно смонтировать его с помощью mount_msdosfs
команды, если я правильно запомнил имя команды. Вам нужно будет указать параметры для определения ESP и точки монтирования.
Создание раздела загрузки вручную, как вы пытаетесь сделать, также может сработать; но тогда вам нужно будет либо скрыть автоматически обнаруженные загрузчики, либо создать запись для OS X, тоже. Создание раздела загрузки вручную требует относительно глубокого понимания файлов загрузчика EFI, а также синтаксиса этих разделов загрузки. Как я уже говорил, гораздо проще переименовать загрузчик или добавить файл значков.