Bootvorgang mit Virtualbox

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
guennid

Bootvorgang mit Virtualbox

Beitrag von guennid » 21.08.2016 15:25:48

Ich habe hier in jessie mit sysvinit neben dem Standard-Kern 3.16. einige Eigenbau-Kerne. Virtualbox läuft nur mit dem Standard-Kern und das ist auch so gewollt.. Kann ich das System bei Verwendung eines Eigenbau-Kerns daran hindern, beim Booten vergeblich zu versuchen, Kernel-Module für Virtualbox zu bauen?

Grüße Günther

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Bootvorgang mit Virtualbox

Beitrag von smutbert » 21.08.2016 15:38:34

Vielleicht in /usr/src/virtualbox-4.3.36/dkms.conf autoinstall auf no setzen (ich weiß es nicht, ich habe mir nur die Liste der Dateien des Pakets Debianvirtualbox-dkms angesehen und da ist mir diese Datei ins Auge gesprungen)?

edit:
hab jetzt nicht aufgepasst, ob das dieselbe Version ist, die du haben könntest (4.3.36), aber du weißt was gemeint ist.

guennid

Re: Bootvorgang mit Virtualbox

Beitrag von guennid » 21.08.2016 16:09:30

smutbert hat geschrieben:hab jetzt nicht aufgepasst, ob das dieselbe Version ist, die du haben könntest (4.3.36), aber du weißt was gemeint ist.
Hmm, nicht wirklich. Die Virtualbox (5.1.2) ist ein deb vom Orakel direkt. Ein /usr/src/virtualbox-* gibt.s nicht. Es gibt dort vboxhost-5.1.2, welches ein link ist auf das Verzeichnis /usr/share/virtualbox/src/vboxhost, in dem es wieder 'ne Menge Unterverzeichnisse gibt. Muss ich da durch?

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Bootvorgang mit Virtualbox

Beitrag von smutbert » 21.08.2016 21:19:51

Mit den Paketen von Oracle hatte ich noch nichts zu tun. Ich habe sie mir nur kurz angesehen und es scheinen einige Skripte /etc/init.d/vbox* installiert zu werden, die für das Bauen (und Laden?) der Module verantwortlich sind.
(Anders als bei den virtualbox-Paketen von Debian, bei denen dkms das übernimmt.)

Findest du vielleicht in /etc/default/virtualbox passende Optionen oder gibts die Datei bei dir gar nicht?

Als letzte Maßnahme bliebe sonst immer noch die Möglichkeit den Teil mit dem Bauen der Module lahmzulegen. Am Beispiel der /etc/init.d/vboxdrv.sh (ich hoffe ich habe die Pfade und Namen richtig erraten):

Code: Alles auswählen

…
start()
{
    begin_msg "Starting VirtualBox services" console
    # Create udev rule and USB device nodes.
    ## todo Wouldn't it make more sense to install the rule to /lib/udev?  This
    ## is not a user-created configuration file after all.
    ## todo Do we need a udev rule to create /dev/vboxdrv[u] at all?  We have
    ## working fall-back code here anyway, and the "right" code is more complex
    ## than the fall-back.  Unnecessary duplication?
    install_device_node_setup "$GROUP" "$DEVICE_MODE" "$INSTALL_DIR"
    if [ -d /proc/xen ]; then
        failure "Running VirtualBox in a Xen environment is not supported"
    fi
    if ! running vboxdrv; then
        if ! rm -f $DEVICE; then
            failure "Cannot remove $DEVICE"
        fi
        if ! $MODPROBE vboxdrv > /dev/null 2>&1; then
            setup
            if ! $MODPROBE vboxdrv > /dev/null 2>&1; then
                failure "modprobe vboxdrv failed. Please use 'dmesg' to find out why"
            fi
        fi
…
Hier wird also versucht das Modul zu laden
if ! $MODPROBE vboxdrv > /dev/null 2>&1; then
und wenn das scheitert, wird setup() aufgerufen, das das Modul dann baut bzw. versucht zu bauen. Du könntest also das nachfolgende
setup
durch
true
ersetzen.

Eventuell verlierst du dadurch aber den Komfort, dass die virtualbox-Module für neue Kernel automatisch gebaut werden.

Möglicherweise gibt es da noch andere Module, die ebenfalls eigene, ganz ähnlich aufgebaute Skripte im System installieren...

guennid

Re: Bootvorgang mit Virtualbox

Beitrag von guennid » 22.08.2016 12:58:05

Danke für den Tipp!

Unter /etc/default ist nichts von virtualbox. Ich werde mal die "letzte" Möglichkeit ausprobieren. Ich habe zwischenzeitlich einfach die beim Booten zu ladenden Module per rcconf abgeschaltet (bei zwei von vieren ging das). Das ergab zwar das gewünschte Boot-Verhalten, aber dann startet die Box auch mit dem Standard-Kern nicht mehr. Insofern wäre die "letzte" Möglichkeit schon angenehmer. Mit dem Ausfall des automatischen Baus der Module für neue Kerne kann ich gut leben.

Grüße, Günther

Antworten