SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
OK. Last week I had a new graphics card installed so that I could use DirectX apps on Windows 7. I have booted Slackware with my monitor plugged into the new card's VGA output and it seems to be working correctly. I had a problem with vboxdrv missing, so I worked on resolving that, which I completed a few minutes ago. I had two guests, Win7, and Kali Linux. The Kali guest files disappeared (this happens somewhat frequently to me. I've no idea where they go.) My Win7 guest reports the following errors when I start it up:
Code:
Failed to open a session for the virtual machine Windows 7.
Failed to open/create the internal network 'HostInterfaceNetworking-eth0' (VERR_SUPDRV_COMPONENT_NOT_FOUND).
Failed to attach the network LUN (VERR_SUPDRV_COMPONENT_NOT_FOUND).
One of the kernel modules was not successfully loaded. Make sure that no kernel modules from an older version of VirtualBox exist. Then try to recompile and reload the kernel modules by executing '/sbin/rcvboxdrv setup' as root (VERR_SUPDRV_COMPONENT_NOT_FOUND).
Result Code: NS_ERROR_FAILURE (0x80004005)
Component: ConsoleWrap
Interface: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}
In my pre-Linux days, I would have resolved something like this with a fresh install of Windows. I backed up my files regularly even back then, so this can be accomplished with minimal loss. Is there a way around it? Thank you in advance for any advice you can offer in helping me to resolve this.
This is a wild guess on my part: it doesn't look like a Win7 problem at all, although there could also turn out to be a problem with Win7 once you get past this problem. It looks like the existing virtualbox kernel modules don't like your new graphics card and the fix could be as simple as the error message suggests, namely run '/sbin/rcvboxdrv setup' as root. That is the first thing I would try.
Distribution: Debian Sid AMD64, Raspbian Wheezy, various VMs
Posts: 7,680
Rep:
Quote:
Originally Posted by maschelsea
OK. Last week I had a new graphics card installed so that I could use DirectX apps on Windows 7.
Before anyone starts falling down any rabbit holes here I take it you mean the newest card is so that a dual-booted Windows instance can make use of the DirectX features?
aside from that I agree with the above.
This is a wild guess on my part: it doesn't look like a Win7 problem at all, although there could also turn out to be a problem with Win7 once you get past this problem. It looks like the existing virtualbox kernel modules don't like your new graphics card and the fix could be as simple as the error message suggests, namely run '/sbin/rcvboxdrv setup' as root. That is the first thing I would try.
How?
Code:
root@caitlyn:~# /sbin/rcvboxdrv setup
-su: /sbin/rcvboxdrv: No such file or directory
root@caitlyn:~#
root@caitlyn:~# /sbin/rcvboxdrv setup
-su: /sbin/rcvboxdrv: No such file or directory
root@caitlyn:~#
So rcvboxdrv is not in the sbin directory.
Possibly it might be in other executable directories: try:
Code:
root@caitlyn:~# ls -al /usr/sbin/rcvboxdrv*
root@caitlyn:~# ls -al /usr/bin/rcvboxdrv*
root@caitlyn:~# ls -al /usr/local/bin/rcvboxdrv*
root@caitlyn:~# ls -al /bin/rcvboxdrv*
root@caitlyn:~# ls -al /opt/sbin/rcvboxdrv*
root@caitlyn:~# ls -al /opt/bin/rcvboxdrv*
...and see if it is listed there. Some of those executable directories might not exist on your system and there might be executable directories on your system I haven't referenced here. If rcvboxdrv's location still eludes you, you might want to open up a root file manager GUI window and do a search for rcvboxdrv from the root directory on down.
On your Slackware host run lsmod | grep vbox. You should see something like this:
Code:
Module Size Used by
vboxdrv 415647 4 vboxnetadp,vboxnetflt,vboxpci
vboxnetadp 19493 0
vboxnetflt 19359 0
vboxpci 16252 0
If you installed VirtualBox from slackbuilds.org, there is no file /sbin/rcvboxdrv. Instead there is /etc/rc.d/rc.vboxdrv, but the script is Slackified to not support the setup option. Instead a separate build script is used to create the kernel module.
On your Slackware host run lsmod | grep vbox. You should see something like this:
Code:
Module Size Used by
vboxdrv 415647 4 vboxnetadp,vboxnetflt,vboxpci
vboxnetadp 19493 0
vboxnetflt 19359 0
vboxpci 16252 0
If you installed VirtualBox from slackbuilds.org, there is no file /sbin/rcvboxdrv. Instead there is /etc/rc.d/rc.vboxdrv, but the script is Slackified to not support the setup option. Instead a separate build script is used to create the kernel module.
What would be the full path and filename of that separate build script? I don't use slackware so I'm not versed in its details but maschelsea needs to run that kernel module build script and rebuild those kernel modules.
Possibly it might be in other executable directories: try:
Code:
root@caitlyn:~# ls -al /usr/sbin/rcvboxdrv*
root@caitlyn:~# ls -al /usr/bin/rcvboxdrv*
root@caitlyn:~# ls -al /usr/local/bin/rcvboxdrv*
root@caitlyn:~# ls -al /bin/rcvboxdrv*
root@caitlyn:~# ls -al /opt/sbin/rcvboxdrv*
root@caitlyn:~# ls -al /opt/bin/rcvboxdrv*
...and see if it is listed there. Some of those executable directories might not exist on your system and there might be executable directories on your system I haven't referenced here. If rcvboxdrv's location still eludes you, you might want to open up a root file manager GUI window and do a search for rcvboxdrv from the root directory on down.
Nope.
Code:
root@caitlyn:~# ls -al /usr/sbin/rcvboxdrv*
/bin/ls: cannot access '/usr/sbin/rcvboxdrv*': No such file or directory
root@caitlyn:~# ls -al /usr/bin/rcvboxdrv*
/bin/ls: cannot access '/usr/bin/rcvboxdrv*': No such file or directory
root@caitlyn:~# ls -al /usr/local/bin/rcvboxdrv*
/bin/ls: cannot access '/usr/local/bin/rcvboxdrv*': No such file or directory
root@caitlyn:~# ls -al /bin/rcvboxdrv*
/bin/ls: cannot access '/bin/rcvboxdrv*': No such file or directory
root@caitlyn:~# ls -al /opt/sbin/rcvboxdrv*
/bin/ls: cannot access '/opt/sbin/rcvboxdrv*': No such file or directory
root@caitlyn:~# ls -al /opt/bin/rcvboxdrv*
/bin/ls: cannot access '/opt/bin/rcvboxdrv*': No such file or directory
root@caitlyn:~# updatedb
root@caitlyn:~# locate rcvboxdrv*
root@caitlyn:~#
What would be the full path and filename of that separate build script? I don't use slackware so I'm not versed in its details but maschelsea needs to run that kernel module build script and rebuild those kernel modules.
rcvboxdrv is not part of the Slackware package for virtualbox, however, you should have an rc.vboxdrv in your /etc/rc.d/ directory. This is what's used to load the virtualbox modules. Normally, you'd make sure that is executable and then add an entry to your /etc/rc.d/rc.local file to start it on boot. Do you already have it executable? What happens if you try and run /etc/rc.d/rc.vboxdrv start as root?
As for the modules, they need to be built for every kernel. So, based on your last post, it seems you built it for a 4.9 kernel. If that is the kernel you're running, the modules should be in /lib/modules/$KERNEL_VERSION/misc/. You can verify that using the following command:
Code:
ls /lib/modules/`uname -r`/misc/
If you still run into issues, try using modprobe to load the vboxdrv module and note any error messages (if it doesn't load, check your dmesg for more information).
Win7 booted. The line '/etc/rc.d/rc.vboxdrv start' worked great. I'm still thinking of the gentoo way of startup scripts residing in /etc/init.d. I modprobed vboxdrv manually. The Win7 guest started up with after I tried the rc.d version. Thank you to bassmadrigal for helping me.
Last edited by maschelsea; 05-17-2017 at 06:47 PM.
Win7 booted. The line '/etc/rc.d/rc.vboxdrv start' worked great. I'm still thinking of the gentoo way of startup scripts residing in /etc/init.d. I modprobed vboxdrv manually. The Win7 guest started up with after I tried the rc.d version. Thank you to bassmadrigal for helping me.
Yeah, Slackware is a bit different than Gentoo. Be sure when getting stuff from SBo that you check out the README. In VirtualBox's case, there was also a README.Slackware that was referenced in the normal README with some additional instruction, including how to set up VirtualBox to start on boot.
More issues with virtualbox-kernel. I found out from another thread that whenever the Slackware kernel is updated, I'll need to reinstall virtualbox-kernel. When I tried that just now, I got a strange error that I haven't seen before:
Code:
.
.
.
virtualbox-kernel-5.0.30/vboxnetflt/math/gcc/divdi3.c
virtualbox-kernel-5.0.30/vboxnetflt/math/gcc/umoddi3.c
virtualbox-kernel-5.0.30/vboxnetflt/math/gcc/moddi3.c
virtualbox-kernel-5.0.30/vboxnetflt/SUPDrvIDC.h
*** Building 'vboxdrv' module ***
make[1]: Entering directory '/tmp/SBo/virtualbox-kernel-5.0.30/vboxdrv'
Makefile:194: *** Error: KERN_DIR does not point to a directory. Stop.
make[1]: Leaving directory '/tmp/SBo/virtualbox-kernel-5.0.30/vboxdrv'
make: *** [Makefile:40: all] Error 2
What path should I take to resolve this error? Thanks in advance for any advice you can offer to solve this...
I still had my directory extracted from the virtualbox-kernel problem I had earlier. After I rebooted with the current newest kernel, I re-ran the slackbuild and now I'm back in Windows again.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.