Virtualbox stopped working after zypper update

I recently did a zypper update and now Virtualbox has stopped working and will not run at startup. At startup I get the following error message:

http://dickens.com/images/Screenshot_virtualbox_error.png

I have reinstalled Virtualbox several times now both from the OpenSUSE repos as well as from the Oracle Virtualbox download site.

Also, as an FYI, my username is a member of the vboxusers group.

The command “chkstat --system” produces the following output:

Checking permissions and ownerships - using the permissions files
        /etc/permissions
        /etc/permissions.easy
        /etc/permissions.d/postfix
        /etc/permissions.d/snapd
        /etc/permissions.local
setting /var/cache/man/ to man:root 0755. (wrong owner/group man:man)
setting /var/log/lastlog to root:root 0644. (wrong owner/group root:utmp permissions 0664)
/var/log/lastlog: chmod: Operation not permitted
setting /usr/lib/virtualbox/VirtualBox to root:vboxusers 4750. (wrong permissions 0750)
/usr/lib/virtualbox/VirtualBox: will not give away s-bits on an insecure path
setting /usr/lib/virtualbox/VBoxHeadless to root:vboxusers 4750. (wrong permissions 0750)
/usr/lib/virtualbox/VBoxHeadless: will not give away s-bits on an insecure path
setting /usr/lib/virtualbox/VBoxSDL to root:vboxusers 4750. (wrong permissions 0750)
/usr/lib/virtualbox/VBoxSDL: will not give away s-bits on an insecure path
setting /usr/lib/virtualbox/VBoxNetAdpCtl to root:vboxusers 4750. (wrong permissions 0750)
/usr/lib/virtualbox/VBoxNetAdpCtl: will not give away s-bits on an insecure path
setting /usr/lib/virtualbox/VBoxNetDHCP to root:vboxusers 4750. (wrong permissions 0750)
/usr/lib/virtualbox/VBoxNetDHCP: will not give away s-bits on an insecure path
setting /usr/lib/virtualbox/VBoxNetNAT to root:vboxusers 4750. (wrong permissions 0755)
/usr/lib/virtualbox/VBoxNetNAT: will not give away s-bits on an insecure path
ERROR: not all operations were successful.

I can manually change the ownerships and permissions with chown and chmod, however, then Virtualbox simply does nothing and produces no output when I run it.

Prior to this episode I have been successively running Virtualbox on OpenSUSE for the past 7 years with multiple guest operating systems. I have never had any problems and so I suspect that something in my recent zypper update caused this problem to occur since nothing else has changed.

Does anybody have any ideas on how to get Virtualbox back running again?

Thanks,

Gordon

Also, when I now try to reinstall virtualbox with the following command:

“sudo zypper install -f virtualbox virtualbox-host-kmp-default virtualbox-qt”

Then the following output is produced:

(1/3) Installing: virtualbox-host-kmp-default-5.2.18_k4.12.14_lp150.12.16-lp150.4.17.1.x86_64 .................................[done]
(2/3) Installing: virtualbox-5.2.18-lp150.4.17.1.x86_64 .......................................................................[done]
Additional rpm output:
/usr/lib/virtualbox/VBoxNetNAT: will not give away s-bits on an insecure path
ERROR: not all operations were successful.
setting /usr/lib/virtualbox/VBoxNetNAT to root:vboxusers 4750. (wrong permissions 0755)
/usr/lib/virtualbox/VBoxNetDHCP: will not give away s-bits on an insecure path
ERROR: not all operations were successful.
setting /usr/lib/virtualbox/VBoxNetDHCP to root:vboxusers 4750. (wrong permissions 0750)
/usr/lib/virtualbox/VBoxNetAdpCtl: will not give away s-bits on an insecure path
ERROR: not all operations were successful.
setting /usr/lib/virtualbox/VBoxNetAdpCtl to root:vboxusers 4750. (wrong permissions 0750)
/usr/lib/virtualbox/VBoxHeadless: will not give away s-bits on an insecure path
ERROR: not all operations were successful.
setting /usr/lib/virtualbox/VBoxHeadless to root:vboxusers 4750. (wrong permissions 0750)


(3/3) Installing: virtualbox-qt-5.2.18-lp150.4.17.1.x86_64 ....................................................................[done]
Additional rpm output:
/usr/lib/virtualbox/VirtualBox: will not give away s-bits on an insecure path
ERROR: not all operations were successful.
setting /usr/lib/virtualbox/VirtualBox to root:vboxusers 4750. (wrong permissions 0750)
/usr/lib/virtualbox/VBoxSDL: will not give away s-bits on an insecure path
ERROR: not all operations were successful.
setting /usr/lib/virtualbox/VBoxSDL to root:vboxusers 4750. (wrong permissions 0750)
warning: %post(virtualbox-qt-5.2.18-lp150.4.17.1.x86_64) scriptlet failed, exit status 1


Executing %posttrans scripts ..................................................................................................[done]

Any ideas anyone?

Thanks,

Gordon

My guess is wrong file permissions on one or more of these file systems:

/usr
/usr/lib
/usr/lib/virtualbox

because of this “will not give away s-bits on an insecure path” message

all should be 644 and one or more are not

try chmod 644 all 3 and redo the chkstat command and see if that fixes it - the system sees something with wrong permissions along the path.

If that does not work I would force and fsck of the filesystems.

You’ll probably find that it’s more difficult than it’s worth to track down the exact permissions error, instead follow the advice given by the error and re-install virtualbox.

Recommend…

  1. Back up your Guest machines, or at least any that you value.
  2. Install the "locate’ utility, I find it’s faster and better at finding files and folders by a particular string. Install the “mlocate” package and then run “updatedb” to populate its database. You will then be able to “locate string” where *string *is any file or foldername possibly including path.
  3. I recommend saving a list of all files installed by virtualbox before uninstalling, you can create that list with the following which writes the file list to a file
rpm -ql virtualbox > virtuualbox_package_file_list.txt
  1. Uninstall virtualbox
  2. Run the “locate” utility to clean up any files which weren’t removed by the uninstall. If your config files don’t contain anything unique, I’d recommend removing them, too (By default config files are not removed by an uninstall). You can use the virtualbox package contents created in step 3 for comparison
  3. Reboot
  4. Re-install virtualbox.
  5. If you wish, the configuration to enable your normal User Account to run virtualbox can be left alone, but if you’re still experiencing problems after the re-install, I’d recommend removing that as well (YaST > Users)

Main reason why I’m recommending the re-install is because it’s unclear all the fix attempts and any might have contributed to an already unclear situation.

HTH,
TSU

Hi Larryr,

Thanks for the reply! You were right in that the setting for /usr/lib was drwxrwxrwx instead of drwxr-xr-x which is what it should be. However, the proper chmod setting is 755 instead of 644 since 644 omits the execution bits.

Once I set /usr/lib to 755 and ran “chkstat --system” then virtualbox started working again.

Thanks again,

Gordon