La soluzione che ho usato alla fine ruotava attorno alla creazione di due dischi virtuali (prestito e idea di Alex) da collegare a Impostazioni> Archiviazione> Controller SATA.
Ho usato la VirtualBox
GUI per creare un VMDK 128M per contenere l'MBR e un /dev/sda1
essere il /boot
.
L'altro VMDK che ho creato in precedenza da un volume logico LVM è diventato virtuale /dev/sdb
(senza partizioni).
Ho caricato un ISO di installazione gentoo nel CD-ROM virtuale della VM (Impostazioni> Archiviazione> Controller IDE) e sono partito da quello. Una volta che l'ambiente di installazione di Gentoo era attivo e funzionante, sono stato in grado di partizionare /dev/sda
e creare il /dev/sda1
/boot
filesystem e copiare il kernel e altri file dall'host di origine. Non ho partizionato /dev/sdb
perché conteneva già il filesystem di root che avevo costruito prima.
Ho montato /dev/sdb
e il /boot
secondo Preparing the Disks e truccato alcuni dei filesystem virtuali secondo il montaggio dei filesystem necessari . Con i filesystem preparati potrei chroot e iniziare a riconfigurare la VM per tenere conto delle differenze tra i dischi della macchina di origine e i dischi della VM.
Ho dovuto aggiornare /etc/lilo.conf
all'interno della VM per usare boot=/dev/sda
e root=/dev/sdb
.
Allo stesso modo /etc/fstab
necessitava di modifiche poiché l'host di origine utilizzava molte partizioni individuali (uno stile che era andato in disgrazia nel decennio successivo) e la VM aveva solo /dev/sdb
per root e /dev/sda1
per /boot
.
Ho anche dovuto ricompilare il kernel con il supporto per il ahci
modulo sata e e1000
Ethernet. La macchina sorgente è molto vecchia.
Un difetto di questo processo è che ho dovuto partizionare il virtuale sda
all'interno di una VM in esecuzione. Non so se esiste un processo che mi consenta di partizionare il VMDK e riempire le sue partizioni con filesystem e dati senza avviare la VM che lo utilizza.
Non sono sicuro di quali problemi sarebbero sorti se avessi tentato di ricompilare il kernel guest usando il sistema operativo host e un chroot invece di ricompilare all'interno di una VM (che avrebbe comunque richiesto l'uso dell'ISO di installazione gentoo).
Non potevo usare un ISO live di Debian perché a un certo punto del processo di avvio lo schermo si trasformava in strisce colorate di personaggi. Presumo che ci sia qualche incompatibilità con la scheda video virtuale ed è stato più semplice ottenere gentoo che spalare tutte le discussioni relative a quel bug per testare tutte le soluzioni suggerite.