Edera requires the machine on which it is installed use UEFI. Currently edera-check does not call this out if the machine uses BIOS.
Steps to Reproduce
Setup a throwaway EC2 Instance with Ubuntu using BIOS
Setup
export AWS_PROFILE=<yourProfile>
export AWS_REGION=us-east-1
export KEY_NAME=<yourKeyInAWS>
SG_ID=$(aws ec2 create-security-group \
--group-name edera-check-test \
--description "throwaway SG for edera-check testing" \
--query 'GroupId' --output text)
aws ec2 authorize-security-group-ingress --group-id $SG_ID --protocol tcp --port 22 --cidr $(curl -s ifconfig.me)/32
AMI_ID=$(aws ec2 describe-images \
--owners 099720109477 \
--filters "Name=name,Values=ubuntu/images/hvm-ssd-gp3/ubuntu-noble-24.04-amd64-server-*" \
"Name=state,Values=available" \
--query 'sort_by(Images,&CreationDate)[-1].ImageId' --output text)
SNAP_ID=$(aws ec2 describe-images --image-ids $AMI_ID --query 'Images[0].BlockDeviceMappings[0].Ebs.SnapshotId' --output text)
MY_SNAP_ID=$(aws ec2 copy-snapshot \
--source-region $AWS_REGION \
--source-snapshot-id $SNAP_ID \
--description "legacy-bios AMI test" \
--query 'SnapshotId' --output text)
aws ec2 wait snapshot-completed --snapshot-ids $MY_SNAP_ID
LEGACY_AMI_ID=$(aws ec2 register-image \
--name "ubuntu-noble-legacy-bios-test" \
--architecture x86_64 \
--virtualization-type hvm \
--root-device-name /dev/sda1 \
--ena-support \
--boot-mode legacy-bios \
--block-device-mappings "DeviceName=/dev/sda1,Ebs={SnapshotId=$MY_SNAP_ID,VolumeType=gp3,DeleteOnTermination=true}" \
--query 'ImageId' --output text)
aws ec2 wait image-available --image-ids $LEGACY_AMI_ID
INSTANCE_ID=$(aws ec2 run-instances \
--image-id $LEGACY_AMI_ID \
--instance-type m5.large \
--key-name $KEY_NAME \
--security-group-ids $SG_ID \
--block-device-mappings 'DeviceName=/dev/sda1,Ebs={VolumeSize=20,VolumeType=gp3,DeleteOnTermination=true}' \
--tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=edera-check-bios-test}]' \
--query 'Instances[0].InstanceId' --output text)
aws ec2 wait instance-running --instance-ids $INSTANCE_ID
EC2_IP=$(aws ec2 describe-instances --instance-ids $INSTANCE_ID --query 'Reservations[0].Instances[0].PublicIpAddress' --output text)
echo "AMI $LEGACY_AMI_ID was created"
echo "Snapshot $MY_SNAP_ID was created"
echo "Instance $INSTANCE_ID is ready"
echo "ssh -i ~/.ssh/$KEY_NAME ubuntu@$EC2_IP"
Dependencies
sudo apt-get update && sudo apt-get install -y docker.io nftables
sudo systemctl start docker
sudo usermod -aG docker $USER
Teardown
aws ec2 terminate-instances --instance-ids $INSTANCE_ID
aws ec2 wait instance-terminated --instance-ids $INSTANCE_ID
aws ec2 deregister-image --image-id $LEGACY_AMI_ID
aws ec2 delete-snapshot --snapshot-id $MY_SNAP_ID
aws ec2 delete-security-group --group-id $SG_ID
Logs
$ sudo ls /sys/firmware/efi
ls: cannot access '/sys/firmware/efi': No such file or directory
$ sudo dmesg | grep efi
[ 0.023381] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1910969940391419 ns
[ 4.364426] systemd[1]: Starting modprobe@efi_pstore.service - Load Kernel Module efi_pstore...
$ docker pull ghcr.io/edera-dev/edera-check:stable > /dev/null 2>&1
$ docker run --pull always --pid host --privileged ghcr.io/edera-dev/edera-check:stable preinstall
Collecting information about the current host as part of locally-generated preinstall report.
The information collected will remain on this host.
Running Group System Checks [Required] - System requirement checks
• Supported Docker Runtime: Passed
• Enough Memory: Passed
• Enough Disk Space for /usr: Passed
• Enough Disk Space for /var/lib: Passed
• Enough Disk Space for /boot: Passed
• 'nft' Binary Present: Passed
• Package Manager Binary Present: Passed
• 'grub-mkconfig' Binary Present: Passed
• Service Manager Binary Present: Passed
• Basic Linux Utility Binaries Present: Passed
[+] System Checks: Passed
Running Group Kernel Checks [Required] - Kernel requirement checks
• Host Has Necessary Modules: Passed
[+] Kernel Checks: Passed
Running Group IOMMU Checks [Optional] - IOMMU capability checks
• IOMMU Support: Failed: no hardware IOMMU detected
[!] PVH and some host device support not available on this system
[!] IOMMU Checks: Failed [Optional]
Running Group PVH Checks [Optional] - PVH capability checks
• PVH Support: Failed: Hardware Virtualization Disabled
[!] PVH feature may not be available on this system
[!] PVH Checks: Failed [Optional]
Running Group NUMA Checks [Advisory] - NUMA capability checks
• IOMMU Support: Passed
[+] NUMA Checks: Passed
Running Group System Info Recorder [Advisory] - Record system information for reporting purposes
• Captured lspci -vvv: Passed
• Captured dmidecode: Passed
• Captured /proc/cpuinfo: Passed
• Captured /proc/cmdline: Passed
• Captured /boot/grub/grub.cfg: Passed
• Captured boot/config-6.17.0-1019-aws: Passed
• Record current host kernel loaded modules: Passed
• Captured /proc/meminfo: Passed
• Captured /proc/vmstat: Passed
• Captured /proc/slabinfo: Passed
• Captured /proc/mounts: Passed
• Captured /proc/self/mountinfo: Passed
• Captured nftables ruleset: Passed
• Captured network links: Passed
• Captured network routes: Passed
• Captured network neighbours: Passed
[+] System Info Recorder: Passed
[*] All Done! Report saved: /tmp/edera-preinstall-report-ip-172-31-40-228-20260730-153318.tar.gz
Edera requires the machine on which it is installed use UEFI. Currently edera-check does not call this out if the machine uses BIOS.
Steps to Reproduce
Setup a throwaway EC2 Instance with Ubuntu using BIOS
Setup
Dependencies
Teardown
Logs