• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

VirtualBox startet nicht mehr - Findet Kernel nicht

MatzUp

Hacker
OpenSuse 11.1
VirtualBox 3.0.4 nonOS

Hallo, mein VirtualBox startet nach einem Kernel-Update nicht mehr.
Beim starten gab es diese Fehlermeldung:
Code:
~> VirtualBox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (2.6.27.29-0.1-default) or it failed to
         load. Please recompile the kernel module and install it by

           sudo /etc/init.d/vboxdrv setup

         You will not be able to start VMs until this problem is fixed.
WARNING: The compilation of the vboxdrv.ko kernel module failed during the
         installation for some reason. Starting a VM will not be possible.
         Please consult the User Manual for build instructions.
/usr/bin/VirtualBox: line 72: /usr/lib/virtualbox/VirtualBox: Keine Berechtigung
/usr/bin/VirtualBox: line 72: exec: /usr/lib/virtualbox/VirtualBox: cannot execute: Erfolg

Nach der Eingabe von sudo /etc/init.d/vboxdrv setup kam das:
Code:
# /etc/init.d/vboxdrv setup
Stopping VirtualBox kernel module                                                                                                                                                             done
Removing old VirtualBox netadp kernel module                                                                                                                                                  done
Removing old VirtualBox netflt kernel module                                                                                                                                                  done
Removing old VirtualBox kernel module                                                                                                                                                         done
Recompiling VirtualBox kernel module                                                                                                                                                          failed
  (Look at /var/log/vbox-install.log to find out what went wrong)

Danach schaute ich in das Logfile welches einem Aufschluss geben sollte:
Code:
Makefile:174: *** Error: unable to find the include directory for your current Linux kernel. Specify KERN_INCL=<directory> and run Make again.  Stop.

Ich habe jedoch keine Ahnung wo ich den Pfad für den Kernel finden soll und wo ich diesen Eintagen soll.
Weiß jemand Rat?
 

stefan.becker

Advanced Hacker
"rpm -qa | grep kernel"

sagt was?

Vermutlich, dass du durch ein Online Update verschiedene Versionen hast von kernel-default und kernel-source. Bring alles mit kernel* (außer linux-kernel-headers) auf den gleichen Stand, dann klappt das auch.
 
OP
M

MatzUp

Hacker
Code:
kernel-default-extra-2.6.27.29-0.1.1
linux-kernel-headers-2.6.27-2.28
kernel-default-base-2.6.27.29-0.1.1
kernel-default-2.6.27.29-0.1.1

Jedoch gibt es nur von linux-kernel-headers die eine Version. Sonst sind alle gleich...
 
OP
M

MatzUp

Hacker
Unter Kernel-Sources finde ich nichts. Auch nicht so ein ähnliches Paket.
Wie nennt sich das genau? Müsste eigendlich doch in den Standard-Repos drin sein oder?
 
OP
M

MatzUp

Hacker
Na sicher doch. :???: Hab nach "kernel-sources" gesucht und nicht nach "kernel-source" :/

Habs installiert und nach einem erneuten "/etc/init.d/vboxdrv setup" Eingabe, gab es wieder ein fail.
Ein Blick in die Log-Datei sagt mir diesmal nichts was ich verstehe:
Code:
make KBUILD_VERBOSE=1 -C /lib/modules/2.6.27.29-0.1-default/build SUBDIRS=/tmp/vbox.9 SRCROOT=/tmp/vbox.9 modules
make -C ../../../linux-2.6.27.29-0.1 O=/usr/src/linux-2.6.27.29-0.1-obj/i386/default/. modules
make -C /usr/src/linux-2.6.27.29-0.1-obj/i386/default \
        KBUILD_SRC=/usr/src/linux-2.6.27.29-0.1 \
        KBUILD_EXTMOD="/tmp/vbox.9" -f /usr/src/linux-2.6.27.29-0.1/Makefile \
        modules
/usr/src/linux-2.6.27.29-0.1/scripts/gcc-version.sh: line 25: gcc: command not found
/usr/src/linux-2.6.27.29-0.1/scripts/gcc-version.sh: line 26: gcc: command not found
make[3]: gcc: Command not found
test -e include/linux/autoconf.h -a -e include/config/auto.conf || (            \
        echo;                                                           \
        echo "  ERROR: Kernel configuration is invalid.";               \
        echo "         include/linux/autoconf.h or include/config/auto.conf are missing.";      \
        echo "         Run 'make oldconfig && make prepare' on kernel src to fix it.";  \
        echo;                                                           \
        /bin/false)
mkdir -p /tmp/vbox.9/.tmp_versions ; rm -f /tmp/vbox.9/.tmp_versions/*
make -f /usr/src/linux-2.6.27.29-0.1/scripts/Makefile.build obj=/tmp/vbox.9
  gcc -Wp,-MD,/tmp/vbox.9/linux/.SUPDrv-linux.o.d  -nostdinc -isystem  -D__KERNEL__ -Iinclude -Iinclude2 -I/usr/src/linux-2.6.27.29-0.1/include -I/usr/src/linux-2.6.27.29-0.1/arch/x86/include -include$
/bin/sh: gcc: command not found
make[4]: *** [/tmp/vbox.9/linux/SUPDrv-linux.o] Error 127
make[3]: *** [_module_/tmp/vbox.9] Error 2
make[2]: *** [sub-make] Error 2
make[1]: *** [all] Error 2
make: *** [vboxdrv] Error 2

Code:
Run 'make oldconfig && make prepare' on kernel src to fix it.";...
...sind die einzigen Sachen die daraus lese. Aber ein "make oldconfig" bringt nur den Fehler:
Code:
make: *** Keine Regel, um »oldconfig« zu erstellen.  Schluss.
Oder muss man dies in einem bestimmten Pfad ausführen?
 
Oben