Служба входа в консоль не может работать при попытке эмуляции Solaris 11.4 на операционной системе FreeBSD версии 14.1.

Вопрос или проблема

Я пытаюсь загрузить Solaris 11.04, используя qemu или UEFI на операционной системе FreeBSD версии 14.1, с использованием следующих параметров:

qemu-system-x86_64 -name guest=s11x64,debug-threads=on \
-machine pc,usb=off \
-cpu kvm64,hv_relaxed,hv_time,hv_synic \
-m 8G -smp 2,sockets=2,cores=1,threads=1 -nodefaults -no-shutdown \
-drive file=/bhyve/Files/ISO/sol-11_4-text-x86.iso,format=raw \
-drive file=/mnt/zroot2/zroot2/bhyve/img/Solaris/solaris114.img,format=raw \
-global PIIX4_PM.disable_s3=1 \
-global PIIX4_PM.disable_s4=1 \
-device ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x4.0x7 \
-device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x4 \
-device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x4.0x1 \
-device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x4.0x2 \
-device VGA,id=video0,vgamem_mb=32,bus=pci.0,addr=0x2 \
-netdev tap,id=mynet0,ifname=tap4,script=no,downscript=no \
-device e1000,netdev=mynet0,mac=52:55:00:d1:55:01 \
-device ich9-ahci,id=sata \
-drive if=pflash,format=raw,readonly=on,file=/usr/local/share/edk2-qemu/QEMU_UEFI_CODE-x86_64.fd \

Как вы можете видеть ниже, это почти сработало, но еще нет. Думаю, не хватает только нескольких параметров:

SunOS Release 5.11 Version 11.4.0.15.0 64‐bit
Copyright (c) 1983, 2018, Oracle and/or its affiliates. Все права защищены.
Перемонтирование корня на чтение/запись
Поиск устройств ...
Подготовка образа к использованию
Не удалось смонтировать носитель
Запрос режима обслуживания системы
(Смотрите /lib/svc/share/README для получения дополнительной информации.)
Службы консольного входа не могут работать

Введите имя пользователя для обслуживания системы (control‑d для пропуска): █

В то время как это полностью работало, используя BIOS вместо UEFI:

/usr/local/bin/qemu-system-x86_64 \
-L /usr/local/share/qemu/ -name guest=s11x64,debug-threads=on \
-machine pc,usb=off -cpu kvm64,hv_relaxed,hv_time,hv_synic \
-m 8192 -smp 2,sockets=2,cores=1,threads=1 \
-nodefaults -global kvm-pit.lost_tick_policy=delay -no-shutdown \
-global PIIX4_PM.disable_s3=1 \
-global PIIX4_PM.disable_s4=1 -boot strict=on \
-device ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x4.0x7 \
-device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x4 \
-device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x4.0x1 \
-device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x4.0x2 \
-device VGA,id=video0,vgamem_mb=32,bus=pci.0,addr=0x2 \
-hda /mnt/zroot2/zroot2/bhyve/img/Solaris/solaris114.img \
-boot d --cdrom /bhyve/Files/ISO/sol-11_4-text-x86.iso \
-netdev tap,id=mynet0,ifname=tap3,script=no,downscript=no \
-device e1000,netdev=mynet0,mac=52:55:00:d1:55:01 \
SunOS Release 5.11 Version 11.4.0.15.0 64‐bit
Copyright (c) 1983, 2018, Oracle and/or its affiliates. Все права защищены.
Перемонтирование корня на чтение/запись
Поиск устройств ...
Подготовка образа к использованию
Образ успешно смонтирован
USB клавиатура
 1. Арабский                        15. Корейский
 2. Бельгийский                     16. Латиноамериканский
 3. Бразильский                     17. Норвежский
 4. Канадский-билингвальный        18. Португальский
 5. Канадский-французский          19. Русский
 6. Датский                        20. Испанский
 7. Голландский                    21. Шведский
 8. Дворяк                        22. Швейцарский-французский
 9. Финский                       23. Швейцарский-немецкий
10. Французский                   24. Традиционный-китайский
11. Немецкий                      25. ТурецкийQ
12. Итальянский                   26. Британо-английский
13. Японский-тип6               27. Американский-английский
14. Японский
Чтобы выбрать раскладку клавиатуры, введите номер [по умолчанию 27]:█

Ответ или решение

Проблема с запуском Solaris 11.4 на FreeBSD 14.1 с использованием QEMU и UEFI

При попытке загрузить Solaris 11.4 на FreeBSD 14.1 с использованием QEMU и UEFI, вы столкнулись с ошибкой, связанной с консольными службами, приводящей к невозможности работы сервисов входа в систему. Давайте разберём возможные причины данной проблемы и предложим решения, которые помогут вам успешно запустить Solaris в вашей виртуальной среде.

1. Анализ ошибки

Ошибка, которую вы видите:

Console login service(s) cannot run

указывает на то, что консольные службы, необходимые для полноценной работы системы, не могут быть запущены. Это может быть связано с неправильной конфигурацией виртуальной машины или проблемами с доступом к устройствам.

2. Разница между UEFI и BIOS

Как вы уже заметили, установка успешно проходит при использовании BIOS, но сталкивается с проблемами в режиме UEFI. UEFI требует более аккуратной настройки, особенно в части эмуляции оборудования и передаче управляющих функций. Важно обеспечить правильную настройку всех необходимых параметров для корректной работы консольных и сетевых служб.

3. Рекомендации по исправлению

a) Проверьте образ ISO и жесткого диска

Убедитесь, что образ ISO и диск, на который вы устанавливаете Solaris, корректны и доступны. Вы можете протестировать доступность образа ISO через командные утилиты, такие как md5 или sha256, для проверки контрольных сумм.

b) Настройка UEFI

Убедитесь, что вы используете правильный файл UEFI. Вы указали:

-drive if=pflash,format=raw,readonly=on,file=/usr/local/share/edk2-qemu/QEMU_UEFI_CODE-x86_64.fd

Убедитесь, что файл UEFI действительно существует и корректно загружается. В некоторых случаях может помочь использование другого образа UEFI.

c) Обновление параметров QEMU

Некоторые параметры вашей команды QEMU могут быть адаптированы для улучшения совместимости с Solaris. Вот примеры настроек, которые вы можете изменить или добавить:

  • Измените -cpu kvm64 на -cpu host для использования более полной эмуляции функция процессора, что может помочь в случае совместимости.
  • Добавьте опцию -boot menu=on, чтобы упростить отладку процесса загрузки.
  • Проверьте следующие параметры; добавление или изменение их значений может повлиять на вашу ситуацию:
    -global ICH9-LPC.enable_s3=0
    -global ICH9-LPC.enable_s4=0

d) Проверка конфигурации сети

Неверная конфигурация сетевых устройств также может вызывать подобные ошибки. Убедитесь, что сетевой интерфейс правильно настроен и доступен системе. Попробуйте отключить его, если он не нужен, или провести диагностику с помощью утилит, таких как ifconfig.

4. Тестирование

После внесения изменений проверьте работоспособность с помощью следующей команды:

qemu-system-x86_64 -name guest=s11x64,debug-threads=on -machine pc,usb=off \
-cpu host -m 8G -smp 2,sockets=2,cores=1,threads=1 -nodefaults -no-shutdown \
-drive file=/bhyve/Files/ISO/sol-11_4-text-x86.iso,format=raw \
-drive file=/mnt/zroot2/zroot2/bhyve/img/Solaris/solaris114.img,format=raw \
-device ich9-ahci,id=sata \
-boot d -drive if=pflash,format=raw,readonly=on,file=/usr/local/share/edk2-qemu/QEMU_UEFI_CODE-x86_64.fd \
-netdev tap,id=mynet0,ifname=tap4,script=no,downscript=no \
-device e1000,netdev=mynet0,mac=52:55:00:d1:55:01

Заключение

Проблемы с консольным входом при загрузке Solaris 11.4 на QEMU с UEFI на FreeBSD 14.1 могут быть довольно сложными, но правильная диагностика и корректные настройки могут свести их к минимуму. Оптимизировав параметры эмуляции и убедившись в целостности используемых образов, вы можете достичь успешной установки и запуска операционной системы.

Оцените материал
Добавить комментарий

Капча загружается...