Dear Opensuse Gurus: This is the first time I’ve run into this on this HP laptop (It’s been updated from 42.2 -> 15.0 -> 15.1). It seems to be complaining about a missing makefile. I tried an earlier version of VBox also, and it also complained in the same way, so I don’t think it’s a bug in the 6.1.4 installer. (I want to install Tumbleweed in a VM to begin playing with it.)
Thank You Very Much,
PattiM :o
EDIT: Yast reports no secure EFI boot…
linux-lhkc:/home/patti/Desktop/ISOs # ./VirtualBox-6.1.4-136177-Linux_amd64.run
Verifying archive integrity... All good.
Uncompressing VirtualBox for Linux installation.............
VirtualBox Version 6.1.4 r136177 (2020-02-18T17:26:04Z) installer
Installing VirtualBox to /opt/VirtualBox
Python found: python, installing bindings...
Created symlink /etc/systemd/system/multi-user.target.wants/vboxdrv.service → /usr/lib/systemd/system/vboxdrv.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxballoonctrl-service.service → /usr/lib/systemd/system/vboxballoonctrl-service.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxautostart-service.service → /usr/lib/systemd/system/vboxautostart-service.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxweb-service.service → /usr/lib/systemd/system/vboxweb-service.service.
vboxdrv.sh: failed: Look at /var/log/vbox-setup.log to find out what went wrong.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system's documentation for more information.
VirtualBox has been installed successfully.
You will find useful information about using VirtualBox in the user manual
/opt/VirtualBox/UserManual.pdf
and in the user FAQ
http://www.virtualbox.org/wiki/User_FAQ
We hope that you enjoy using VirtualBox.
The installation log file is at /var/log/vbox-install.log.
linux-lhkc:/home/patti/Desktop/ISOs #
inux-lhkc:/home/patti/Desktop/ISOs # cat /var/log/vbox-install.log
VirtualBox 6.1.4 r136177 installer, built 2020-02-18T17:26:04Z.
Testing system setup...
Installing VirtualBox to /opt/VirtualBox
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
linux-lhkc:/home/patti/Desktop/ISOs # cat /var/log/vbox-setup.log
Building the main VirtualBox module.
Error building the module:
make V=1 CONFIG_MODULE_SIG= CONFIG_MODULE_SIG_ALL= -C /lib/modules/4.12.14-lp151.28.36-default/build M=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 -j8 modules
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make -C ../../../linux-4.12.14-lp151.28.36 O=/usr/src/linux-4.12.14-lp151.28.36-obj/x86_64/default/. modules
make -C /usr/src/linux-4.12.14-lp151.28.36-obj/x86_64/default KBUILD_SRC=/usr/src/linux-4.12.14-lp151.28.36 \
-f /usr/src/linux-4.12.14-lp151.28.36/Makefile modules
/usr/src/linux-4.12.14-lp151.28.36/Makefile:651: arch/amd64/Makefile: No such file or directory
make[3]: *** No rule to make target 'arch/amd64/Makefile'. Stop.
make[2]: *** [Makefile:152: sub-make] Error 2
make[1]: *** [Makefile:24: __sub-make] Error 2
make: *** [/tmp/vbox.0/Makefile-footer.gmk:114: vboxdrv] Error 2
linux-lhkc:/home/patti/Desktop/ISOs #
Thanks for the reply. I tried the RPM first (it worked on the last couple of updates) but it gave the same issue - the kernel modules weren’t installed/built - which seems very odd since I’m guessing the RPM already had them built into it. You can see why I’m stumped by this one. One time before (for version 6.0 under LEAP 15.0) the RPM didn’t work for some reason, but the .run file did. Here’s the output of the RPM-install attempt. Yast reports successful install, but when I start a VBox virtual machine:
The VirtualBox Linux kernel driver is either not loaded or not set up correctly. Please try setting it up again by executing
'/sbin/vboxconfig'
as root.
If your system has EFI Secure Boot enabled you may also need to sign the kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load them. Please see your Linux system's documentation for more information.
where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) - The support driver is not installed. On linux, open returned ENOENT.
then…
linux-lhkc:/opt/VirtualBox # /sbin/vboxconfig
Created symlink /etc/systemd/system/multi-user.target.wants/vboxdrv.service → /usr/lib/systemd/system/vboxdrv.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxballoonctrl-service.service → /usr/lib/systemd/system/vboxballoonctrl-service.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxautostart-service.service → /usr/lib/systemd/system/vboxautostart-service.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxweb-service.service → /usr/lib/systemd/system/vboxweb-service.service.
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: failed: Look at /var/log/vbox-setup.log to find out what went wrong.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system's documentation for more information.
linux-lhkc:/opt/VirtualBox #
linux-lhkc:/opt/VirtualBox # /sbin/vboxconfig
Created symlink /etc/systemd/system/multi-user.target.wants/vboxdrv.service → /usr/lib/systemd/system/vboxdrv.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxballoonctrl-service.service → /usr/lib/systemd/system/vboxballoonctrl-service.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxautostart-service.service → /usr/lib/systemd/system/vboxautostart-service.service.
Created symlink /etc/systemd/system/multi-user.target.wants/vboxweb-service.service → /usr/lib/systemd/system/vboxweb-service.service.
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: failed: Look at /var/log/vbox-setup.log to find out what went wrong.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system's documentation for more information.
linux-lhkc:/opt/VirtualBox #
linux-lhkc:/opt/VirtualBox # cat /var/log/vbox-setup.log
Building the main VirtualBox module.
Error building the module:
make V=1 CONFIG_MODULE_SIG= CONFIG_MODULE_SIG_ALL= -C /lib/modules/4.12.14-lp151.28.36-default/build M=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 -j8 modules
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make -C ../../../linux-4.12.14-lp151.28.36 O=/usr/src/linux-4.12.14-lp151.28.36-obj/x86_64/default/. modules
make -C /usr/src/linux-4.12.14-lp151.28.36-obj/x86_64/default KBUILD_SRC=/usr/src/linux-4.12.14-lp151.28.36 \
-f /usr/src/linux-4.12.14-lp151.28.36/Makefile modules
/usr/src/linux-4.12.14-lp151.28.36/Makefile:651: arch/x64/Makefile: No such file or directory
make[3]: *** No rule to make target 'arch/x64/Makefile'. Stop.
make[2]: *** [Makefile:152: sub-make] Error 2
make[1]: *** [Makefile:24: __sub-make] Error 2
make: *** [/tmp/vbox.0/Makefile-footer.gmk:114: vboxdrv] Error 2
linux-lhkc:/opt/VirtualBox #
…which is the same set of errors as using the .run install method.
You always need to clarify whether to are building kernel modules when installing in the HostOS or in a Guest.
Since you mentioned a both a binary ending in".run" and a UEFI boot, I’m assuming you’re talking about a Guest.
You shouldn’t be installing a Guest using UEFI unless you have special reason to do so. A Guest boot has nothing to do with the HostOS boot.
If you’re building Guest kernel modules which are only optional(required for Guest Additions), then you should have make,gcc and your kernel headers installed, and execute the Linux Guest Additions from the Guest Additions ISO.
Until my workhorse machine is rebuilt in a week or so, there’s not much I can help, but for now…
Your problem is not so much that your HostOS is running UEFI but that you are also configured for Secure Boot. So, that’s your first option, you can simply disable Secure Boot and your problem goes away.
openSUSE hasn’t documented what needs to be done very well, I found only general info that likely applies about signing an entire kernel, nothing about specifically signing kernel modules
I find it interesting this is apparently a possible complication building kernel modules but I can’t remember anyone posting about this before. I may learn something new here because I can’t even think of a reason why kernel modules would need to be signed, although I would expect that if the initrd.
you need to run “sudo zypper ref” and select a to allow your machine to use this repo - you need this repo in any OpenSUSE 15.1 guests that you have to allow the guest stuff to work properly unless you want to install from the CD image.
if you have installed any OpenSUSE VirtualBox from the repo’s you will need to run “sudo zypper in --allow-vendor-change” then run the following addvbext to add the extensions - then you have to reboot to have it in the kernel.
To add the virtualbox extension I have this script - you have to run it as root with no VirtualBox running.
I call mine addvbext
vbv=`/usr/bin/VBoxManage --version | tr "r" "_"`
vbn=`yum list installed | grep Virtual`
vbwc=`echo $vbn | grep -c $vbv`
if ! -d "/tmpx" ]
then
echo make tmpx
mkdir /tmpx
chmod 777 /tmpx
fi
echo update VirtualBox
VBOX_VERSION=`/usr/bin/VBoxManage --version | awk -Fr {'print $1'}`
VBOX_EXT_VERSION=`/usr/bin/VBoxManage --version | awk -Fr {'print $1'}`
# echo Virtualbox version installed is $VBOX_VERSION and $VBOX_EXT_VERSION
VBOX_EXT=`echo Oracle_VM_VirtualBox_Extension_Pack-${VBOX_EXT_VERSION}.vbox-extpack`
# echo File is $VBOX_EXT
cd /tmp
/usr/bin/wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/$VBOX_EXT
/usr/bin/VBoxManage extpack install $VBOX_EXT
rm -f $VBOX_EXT
Thanks for the instructions. I had previously tried the Opensuse repo version of VirtualBox on a couple of occasions but couldn’t get the full functionality that the Oracle file versions supplied. Mostly it was video and file sharing IIRC. Also the Opensuse repo version of VB had many files and it was unclear what was needed. As I recall, I was unable to “Insert Guest Tools CD” (which I normally do from the VB host machine, then it shows up on the guest machine) which is necessary in order to have the guest fully functional. I didn’t know about the virtualization repo.
I’m concerned that there’s something wrong with my machine if it won’t build the host kernel modules. That’s very odd. I know Fortran/c++/etc. build things correctly, and the kernel headers are present (libux-glibc-devel).
But I’ll try your instructions! Thank You!
PattiM:D
EDIT: There’s still a large array of 6.1.2 VB files there, even ignoring the debug/devel files. It looks like a guest tools file is there, but it isn’t automatically selected - so not required? Separate VNC/C11/webserv files, too. Why are those broken out from the rpm in repo version is confusing.
…separate X11 and guest X11… Are those what’s required to get resizing screen and “seamless view?” Are both needed or just one? Confusing…
What is needed to get “standard” VirtualBox features (as gotten from the Oracle distro)?
I’ve never heard of “guest kernel modules” before although I’ve used VB for a very long time.
These choices are where I’ve gotten confused every time I’ve tried to use the repo version(s) of VirtualBox.
I guess Oracle just gives you everything no questions asked.
Hi TSU - I checked BIOS and “UEFI hybrid with CSM” is in operation. Gparted shows an “EFI system partition” present.
I was able to build the kernel modules several months ago when I was running LEAP 15.0 (and 42.x before that) and didn’t change the BIOS when I installed 15.1. I had some trouble installing 15.1 and I think that’s when I had to create /boot/efi. Do you think that’s the culprit?
OK - installing VirtualBox from the “virtualization” repo seemed to work the first time. This is what I installed (they seemed like they might be needed):
Virtualbox
Virtualbox guest tools
Virtualbox guest X11
Virtualbox VNC
these were auto-selected:
Virtualbox qt
Virtualbox kmp
When I started it up, my existing Win7 VM reported it wanted to update guest tools, but couldn’t find them - so it offered to download/install from Oracle, which it did successfully. I created and installed an opensuse Tumbleweed machine and it seemed to have everything it needed to do fullscreen/seamless modes. So I’m up and running on that. Thank you very much. Does anyone have any ideas to troubleshoot why the kernel modules might not have built?
Add the packman repo to fix the video stuff - the OpenSUSE will not include anything that might be in violation of copyright anywhere. Packman for OpenSUSE has all the missing parts to show videos.
Although this @OP secure boot kernel module signing issue was resolved by installing VBox from the OSS,
If anyone runs into this issue again because they’re installing VBox from the Oracle website, the following may be tried to sign the kernel modules (untested)