Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Azure Linux 3.0 ISO Image Fails to Install Baremetal #10972

Open
timothymiskell opened this issue Nov 7, 2024 · 2 comments
Open

Azure Linux 3.0 ISO Image Fails to Install Baremetal #10972

timothymiskell opened this issue Nov 7, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@timothymiskell
Copy link

Describe the bug
When attempting to install Azure Linux 3.0 baremetal on our next-gen platforms we are not able to boot the platform after the installer completes.

To Reproduce
Steps to reproduce the behavior:

  1. Download the Azure Linux 3.0 ISO from https://aka.ms/azurelinux-3.0-x86_64.iso .
  2. Install the ISO baremetal and allow the installer to complete.
  3. Reboot the platform.
  4. Observe that the system fails to boot into the drive and displays the error message: "Failed to create boot loader".

Expected behavior
The system should boot into the drive with the installed Azure Linux 3.0 image.

Screenshots

@timothymiskell timothymiskell added the bug Something isn't working label Nov 7, 2024
@zcobol
Copy link

zcobol commented Nov 9, 2024

@timothymiskell if your next-gen platform has builtin uefi shell start into the shell and inspect the /boot partition. Using automatic partitioning the installer creates two partitions. The first one is the ESP partition, and the 2nd is the rootfs using all the remaining space on the storage device. You can see the partitioning in the attendedconfig.json:

 "Disks": [
  {
   "PartitionTableType": "gpt",
   "MaxSize": 0,
   "TargetDisk": {
    "Type": "path",
    "Value": "/dev/nvme1n1"
   },
   "Artifacts": null,
   "Partitions": [
    {
     "FsType": "fat32",
     "Type": "",
     "TypeUUID": "",
     "ID": "esp",
     "Name": "esp",
     "End": 9,
     "Start": 1,
     "Flags": [
      "esp",
      "boot"
     ],
     "Artifacts": null
    },
    {
     "FsType": "ext4",
     "Type": "",
     "TypeUUID": "",
     "ID": "rootfs",
     "Name": "rootfs",
     "End": 0,
     "Start": 9,
     "Flags": null,
     "Artifacts": null
    }
   ]

Since your installation fails to boot inspect the /boot directory. The structure should look like this:

/boot
├── System.map-6.6.51.1-5.azl3
├── System.map-6.6.57.1-2.azl3
├── config-6.6.51.1-5.azl3
├── config-6.6.57.1-2.azl3
├── dracut
├── efi
│   ├── EFI
│   │   └── BOOT
│   │       ├── bootx64.efi
│   │       └── grubx64.efi
│   └── boot
│       └── grub2
│           └── grub.cfg
├── grub2
│   ├── grub.cfg
│   └── grubenv
├── initramfs-6.6.51.1-5.azl3.img
├── initramfs-6.6.57.1-2.azl3.img
├── tboot-syms
├── tboot.gz
├── vmlinuz-6.6.51.1-5.azl3
└── vmlinuz-6.6.57.1-2.azl3

7 directories, 15 files

Notice there are two kernels with the 2nd one added after running dnf upgrade. I used an old-gen platform (two years old hardware!) and after the ISO installation the system booted as expected. core and full installation were tried and worked every time.

@ohault
Copy link

ohault commented Dec 3, 2024

This baremetal question is really crutial as well as running Azure Linux 3.0 to run natively on Raspberry PI

At least Yocto and/or simpler toolchains for embedded should be adopted (as well as for Windows Embedded)

We already have this not so old example from Microsoft with Azure Sphere, see
https://static.sched.com/hosted_files/ossna19/91/Crossover_ELC2019.pdf

Anyone insterrested in trying to this guide https://gchamp20.github.io/Building-Distro-Rpi with Azure Linux 3.0 ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants