Bug#940801: missing virtio block Kernel Objects
On Mon, Sep 23, 2019 at 05:51:33PM +0200, Fred Boiteux wrote:
> Hello Steve,
>
>[ I don't know if I have to CC: to the bug report, so not doing it, please
>feel free to correct me ]
[ re-adding the CC :-) ]
>I'm trying to install a Debian 10 Buster on a VM, booted by network boot,
>hosted on a [Debian] system without Internet access, so I try to give Debian
>Installer all stuff it need from a local HTTP mirror. The installer starts
>fine, but can't detect [virtual] disk and thus can't partition it. It seems
>the virtio_blk module isn't loaded, and I'm trying to find where it should be
>found and loaded by the installer…
Right.
So, let me explain the setup we have. There are different instances of
initramfs created for different needs, and they contain different
things.
1. netboot initramfs
This is designed to be booted from the network. It includes the
core of the installer. It includes a small-ish subset of kernel
modules, basically just what's needed to configure network devices
and then go and download all the other bits (filesystems, block
device drivers, more installer modules, etc.) from a Debian mirror.
If you're using a netboot setup, you will need to include a full
set of udebs from a Debian mirror in a place where the installer
can find them. An extra constraint for the network installer here
is that the kernel module udebs you provide must match *exactly*
the version of the kernel that you have booted. This is a thing
that often bites people, hence I mention it.
The initramfs here directly includes the contents of *some* of the
udebs, so it will not need to fetch them separately.
2. CD/DVD/USB initramfs
This is designed to be booted from a disk-like device. It includes
the core of the installer. It includes a small-ish subset of kernel
modules, basically just what's needed to locate, configure and
mount block devices so it can go and find the rest of the needed
components (network drivers, more installer modules, etc.) from
those block devices.
If you're using a Debian-provided CD/DVD/USB based installer, then
you will already have all the udebs that are needed to go with it,
as part of that CD/DVD/USB image. The version constraint for the
module udebs is still there, but you (normally) don't need to worry
about this as you have a complete set of things in one place.
Again, the initramfs here directly includes the contents of some of
the udebs so we do *not* include those udebs in the CD/DVD/USB
image, to save space - we don't need two copies, after all. This
includes the "scsi" storage drivers and a few others.
So, this is why you haven't found the virtio modules on the contents
of the DVD image you're using. You'll probably need to grab the rest
of the udebs from a network mirror and share those separately. Look
for
pool/main/l/linux-signed-amd64/scsi-modules-4.19.0-6-amd64-di_4.19.67-2_amd64.udeb
for current buster for amd64, for example.
I hope that helps to explain?
--
Steve McIntyre, Cambridge, UK. steve@einval.com
< liw> everything I know about UK hotels I learned from "Fawlty Towers"
Reply to: