Установка Fedora CoreOS 39 на Hyper-V

  1. Скачивание со страницы Fedora CoreOS | The Fedora Project виртуального диска для Hyper-V https://builds.coreos.fedoraproject.org/prod/streams/stable/builds/39.20240210.3.0/x86_64/fedora-coreos-39.20240210.3.0-hyperv.x86_64.vhdx.zip
  2. Создание виртуальной машины в директории E:\Hyper-V\Fedora CoreOS под именем “Fedora CoreOS” поколения 2 с подсоединением к ней скачанного виртуального диска (здесь и далее также использовалась документация отсюда https://docs.fedoraproject.org/ru/fedora-coreos/provisioning-hyperv/).
  3. В параметрах виртуальной машины в разделе “Безопасность” включение безопасной загрузки с центром сертификации Microsoft UEFI.
    Важно: пока не запускать виртуальную машину.
  4. Со страницы https://github.com/containers/libhvee/releases/tag/v0.7.0 скачивание kvpctl https://github.com/containers/libhvee/releases/download/v0.7.0/kvpctl-x86_64.exe.zip (на момент написания этого текста последняя версия утилиты). Распаковка содержимого архива в директорию виртуальной машины.
  5. Создание хэша пароля с помощью команды
    openssl passwd -1
  6. Создание SSH ключа с помощью команды (эта команда создаёт два файла: id_rsa и id_rsa.pub)
    ssh-keygen -t rsa
  7. В директории виртуальной машины создание файла Fedora CoreOS.ign с данными (об этом формате написано здесь https://coreos.github.io/ignition/)
    {
      "ignition": { "version": "3.0.0" },
      "passwd": {
        "users": [
          {
            "groups": ["sudo"],
            "name": "herman",
            "passwordHash": "$1$05lRdmIn$XLjWme3OdQ7f4hLxgICQ9.",
            "sshAuthorizedKeys": [
              "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDRQMkTlhUxF2MaEvisjG/Icq8mfozvOFPQCbpNR/f2rz4+7CIr2oEqFHoG9mG8FUzUiadeBHMk+0bNfrQbh8u3fi0192JEdRnhqxTb63ngUt/05ALnsCS/jVPQnGGQi6FV6qbnDOgLbk3ltYJPDA5oF2nAbwiaF+tDmwztLmiUfZrKd84m/5hMguCHzu9E5CPBZU6tioWpWEnK06obymgldqR0iGTXiyBpgMRn/ZIzBFM8tTIjVA30ZcxNbVcvy1mShYxNxeafeUGPpnvBDAtM/Qa6sjN93yjJoJMReZPFqz5MkqFiwr7KknPNueb3Q8OWSD4zxB2EytKshAl2za3Xf9Ne0MpWuiHY1I1jDhdxLl7wfd3VaO2cLYRyilKuH2C9S7nC8BJKY0wqNVo25Y3crnECRPDuZEqKy2z5QMheJx44268fte/XSvyRLVp/U4uemZrD6by8D5X0Ps4P96oYSSSL8az72OOea1qDsXLYJR/wCp1XHuMvq+2KtJzDDv0= [email protected]"
            ]
          }
        ]
      }
    }

    в котором
    passwordHash – это результат работы утилиты openssl из пункта 5
    sshAuthorizedKeys – это содержимое файла id_rsa.pub из пункта 6.

  8. Экспорт данных в виртуальную машину (под администратором)
    "E:\Hyper-V\Fedora CoreOS\kvpctl" "Fedora CoreOS" add-ign "E:\Hyper-V\Fedora CoreOS\Fedora CoreOS.ign"
  9. Первый запуск виртуальной машины.
  10. Логин под пользователем, задание пароля для root и другие настройки, как статический адрес, если необходимо.
  11. Остановка виртуальной машины и увеличение размера vhdx файла до необходимых размеров (в начале его размер 10 ГБ). При необходимости преобразование его из динамического диска в фиксированный.
  12. На виртуальном диске 4 партишина. О них можно почитать здесь Disk Layout. Увеличивается четвёртый партишин
    sudo growpart /dev/sda 4
    sudo reboot
    sudo mount -o remount,rw /sysroot
    sudo xfs_growfs /dev/sda4
    sudo reboot
  13. Проверка
    sudo lsblk -f