"Unable to locate package linux-modules-extra-7.0.0-1017-azure" on GitHub's Ubuntu runners
A step that installs linux-modules-extra-$(uname -r) before a modprobe stops at apt. Since image 20261018 the ubuntu-24.04 image boots kernel 7.0.0-1017-azure instead of 6.17.0-1022-azure, and ubuntu-26.04, which ubuntu-latest is moving to, has a 7.0 kernel too. Ubuntu is retiring the separate linux-modules-extra package (Ubuntu's announcement, July 2025), and for the 7.0 azure kernels it publishes none, in 24.04 or in 26.04. The modules it used to hold are now in linux-modules-7.0.0-1017-azure, which comes with the kernel.
What it looks like
E: Unable to locate package linux-modules-extra-7.0.0-1017-azure E: Couldn't find any package by glob 'linux-modules-extra-7.0.0-1017-azure' E: Couldn't find any package by regex 'linux-modules-extra-7.0.0-1017-azure' ##[error]Process completed with exit code 100.
The version in the message is the kernel the job booted, so a newer image can show another 7.0 version, such as 7.0.0-1019-azure. A re-run no longer helps: the runner-images maintainers said on November 3 that the latest 24.04 image, 20261101.360, has the same kernel.
Where the reports came from
- OpenZFS:
qemu-x86jobs failed at "Setup QEMU" on image 20261018.339.1, before anything was built (openzfs #19492). - A CAN bus library that loads
vcanfor its tests (gocan #108), and ZeroC Ice's Bluetooth job onubuntu-24.04-arm, which loadshci_vhci(ice #6876). - The reports on runner-images were closed as expected behaviour: the modules "now ship in
linux-modules, which is already installed with the kernel" (runner-images #15026, #15111).
Fix: install the extras only on older kernels, then load the module
- name: Load the vcan module
run: |
kernel="$(uname -r)"
if (( ${kernel%%.*} < 7 )); then
sudo apt-get update
sudo apt-get install --yes "linux-modules-extra-${kernel}"
fi
sudo modprobe vcan
This is the check the runner-images maintainers suggest, with the modprobe you already had after it. On a 7.0 kernel it skips apt, and modprobe finds the module in linux-modules. On an image that still has 6.17 it installs the extras as before. Another way is to run modprobe first and install the extras only if it fails.
For a script that names the package directly, such as a setup script in your repository, apply the same check there. Pinning ubuntu-24.04 does not help: that is one of the images with the new kernel.
Telling it apart
- Print
uname -r. A 7.x kernel with this message is this change. The 6.17 azure kernel still has its extras package, so on a 6.x kernel runsudo apt-get updatebefore the install. - The modules are on disk:
modinfo vcan(or the module you need) prints its file under/lib/modules/$(uname -r)/. - If
modprobethen says "Module ... not found", that module is not built for this azure kernel. Ubuntu's file list shows what the package holds (linux-modules-7.0.0-1017-azure).
Other 26.04 failures
- "conda: command not found" on Ubuntu 26.04: the image has no Miniconda and
CONDAis empty, so steps that add$CONDA/binto the PATH, as GitHub's starter workflow and Microsoft's Azure Pipelines guide do, find no conda; install it with setup-miniconda or Miniforge. - ansible-test 2.22 and devel: "mount -o remount,rw /sys/fs/cgroup/ && pkill sleep" returned exit status 1: on the 7.0 azure kernel of the 24.04 and 26.04 images the default test container often fails to start, and re-runs rarely help; run those jobs on
ubuntu-22.04. - "MongoDB cannot start: Linux kernel versions 6.19 and newer": mongo:8.0 and mongo:8.3 read the 7.0 azure kernel of the 24.04 and 26.04 images as 7.0.0 and exit at startup; use mongo:9.0, or
ubuntu-22.04until 8.0.37 and 8.3.16. - BPF on syscalls:sys_enter_* on GitHub's Ubuntu runners: kernel 7.0.0-1017-azure, on the 24.04 and 26.04 images, runs these programs on one CPU only, so eBPF tests lose events without an error;
ubuntu-22.04is not affected. - PyCQA/bandit-action on Ubuntu 26.04: the action sets up Python 3.8 (3.9 on v1.0.1) with no input to change it, and setup-python has builds for 26.04 only from 3.10; run Bandit in your own steps.
- Docker-in-Docker on Ubuntu 26.04: the legacy iptables modules are not loaded, so a dockerd inside a container that uses
iptables-legacy, such as the dev container docker-in-docker feature:2or:3, fails with "can't initialize iptables table `nat'"; move the feature to:4or load the modules on the runner. - apt on Ubuntu 26.04: renamed and removed packages.
- "coreutils: unknown program": most core tools are uutils.
See failed jobs from IntelliJ IDEA
Pipeline Inbox for GitHub Actions Workflows, a plugin by Lesstep for JetBrains IDEs 2024.1 or later, lists the runs of all your repositories in an IDE tool window, with their jobs and steps, and your current branch's runs are in the status bar. Reading is free; re-running failed jobs, cancelling, running workflows and reviewing deployments are Pro (US$1.50 a month, with a 30-day trial).
Get it on JetBrains Marketplace
GitHub and GitHub Actions are trademarks of GitHub, Inc.; Ubuntu is a trademark of Canonical Ltd.; Linux is the registered trademark of Linus Torvalds; IntelliJ IDEA is a trademark of JetBrains s.r.o. This page is not affiliated with, sponsored or endorsed by GitHub, Inc., Canonical, the Linux Foundation or JetBrains.
More: "The ubuntu-latest label will migrate to Ubuntu 26" · apt on Ubuntu 26.04 · GitHub Actions plugins for IntelliJ IDEA compared · 日本語