问题:无法安装虚拟盒子。我尝试使用以下命令安装它:
sudo apt install virtualbox
这是结果
sudo: /etc/sudoers.d/README is world writable
Reading package lists... Done
Building dependency tree
Reading state information... Done
virtualbox is already the newest version (5.1.38-dfsg-0ubuntu1.16.04.1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up virtualbox-ext-pack (5.1.38-0ubuntu1.16.04.1) ...
removing old virtualbox extension packs
virtualbox-ext-pack: downloading: http://download.virtualbox.org/virtualbox/5.1.38/Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack
The file will be downloaded into /usr/share/virtualbox-ext-pack
License accepted.
0%...
Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to install "/usr/share/virtualbox-ext-pack/Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack"
VBoxManage: error: The installer failed with exit code 1: VBoxExtPackHelperApp: error: World writable: '/usr'
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPackManagerWrap, interface IExtPackManager
VBoxManage: error: Context: "RTEXITCODE handleExtPack(HandlerArg*)" at line 1201 of file VBoxManageMisc.cpp
Hash mismatch Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack: expected e93d87b0f5de50369baca0a48082236b947df5b922ffd0233c0fa92c1206defd, or wrong accept-license key, removing the file.
dpkg: error processing package virtualbox-ext-pack (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
virtualbox-ext-pack
E: Sub-process /usr/bin/dpkg returned an error code (1)
然后我google了一下解决方案,发现了类似的问题:
这个话题提供以下解决方案
sudo dpkg --configure -a
sudo apt-get install -f
没用。以下是结果。
sudo: /etc/sudoers.d/README is world writable
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up virtualbox-ext-pack (5.1.38-0ubuntu1.16.04.1) ...
removing old virtualbox extension packs
virtualbox-ext-pack: downloading: http://download.virtualbox.org/virtualbox/5.1.38/Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack
The file will be downloaded into /usr/share/virtualbox-ext-pack
License accepted.
0%...
Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to install "/usr/share/virtualbox-ext-pack/Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack"
VBoxManage: error: The installer failed with exit code 1: VBoxExtPackHelperApp: error: World writable: '/usr'
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPackManagerWrap, interface IExtPackManager
VBoxManage: error: Context: "RTEXITCODE handleExtPack(HandlerArg*)" at line 1201 of file VBoxManageMisc.cpp
Hash mismatch Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack: expected e93d87b0f5de50369baca0a48082236b947df5b922ffd0233c0fa92c1206defd, or wrong accept-license key, removing the file.
dpkg: error processing package virtualbox-ext-pack (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
virtualbox-ext-pack
E: Sub-process /usr/bin/dpkg returned an error code (1)
这个提供以下解决方案:
sudo dpkg --remove --force-remove-reinstreq virtualbox-ext-pack sudo apt-get update
不工作。当我尝试安装 virtualbox 时出现相同的结果。
这一个提供了另一种方法:
sudo apt install virtualbox-ext-pack
export http_proxy='http://proxyserveraddress:port'
export https_proxy='https://proxyserveraddress:port'
不工作。没有什么变化。
sudo apt-get purge virtualbox
sudo apt-get update
sudo apt-get install virtualbox
不起作用。同样的错误仍然存在。
然后我就看到了这个它提供了一个相当广泛的解决方案:
# Oldfred's command list for cleaning and repairing
#houseclean
sudo apt-get autoclean # only removes files that cannot be downloaded anymore (obsolete)
sudo apt-get clean
#refresh
sudo apt-get update #resync package index
sudo apt-get upgrade #newest versions of all packages, update must be run first
#would upgrade you to the latest kernel in the repositories
#dist-upgrade is also able to remove existing packages if required
sudo apt-get dist-upgrade
# fix Broken packages -f
sudo apt-get -f install
sudo dpkg --configure -a
# Remove lock
# If you are absolutely sure you do not have another upgrade process running.
# Locked dpkg - only if sure you are not running another update.
sudo rm /var/lib/dpkg/lock
sudo dpkg --configure -a
# added zika's tip for problems with hash sum mismatch
sudo rm /var/lib/apt/lists/*
sudo apt-get update
# added 2F4U's tips for Package Manager & Update Manager problems
Does executing these commands help?
cd /var/lib/apt
sudo mv lists lists.old
sudo mkdir -p lists/partial
sudo apt-get update
This will rebuild the cache.
从sudo apt-get dist-upgrade
我开始出现以下错误:
sudo: /etc/sudoers.d/README is world writable
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up virtualbox-ext-pack (5.1.38-0ubuntu1.16.04.1) ...
removing old virtualbox extension packs
virtualbox-ext-pack: downloading: http://download.virtualbox.org/virtualbox/5.1.38/Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack
The file will be downloaded into /usr/share/virtualbox-ext-pack
License accepted.
0%...
Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to install "/usr/share/virtualbox-ext-pack/Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack"
VBoxManage: error: The installer failed with exit code 1: VBoxExtPackHelperApp: error: World writable: '/usr'
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPackManagerWrap, interface IExtPackManager
VBoxManage: error: Context: "RTEXITCODE handleExtPack(HandlerArg*)" at line 1201 of file VBoxManageMisc.cpp
Hash mismatch Oracle_VM_VirtualBox_Extension_Pack-5.1.38.vbox-extpack: expected e93d87b0f5de50369baca0a48082236b947df5b922ffd0233c0fa92c1206defd, or wrong accept-license key, removing the file.
dpkg: error processing package virtualbox-ext-pack (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
virtualbox-ext-pack
E: Sub-process /usr/bin/dpkg returned an error code (1)
然后我访问了虚拟框页面并遵循“基于 Debian 的 Linux 发行版”的说明,更具体地说:
将 deb 添加
https://download.virtualbox.org/virtualbox/debian <mydist> contrib
到我的/etc/apt/sources.list
sudo apt-key add oracle_vbox_2016.asc
sudo apt-get update
-sudo apt-get install virtualbox-5.2
sudo: /etc/sudoers.d/README is world writable
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libgsoap8 libvncserver1 virtualbox-dkms
Use 'sudo apt autoremove' to remove them.
Recommended packages:
libsdl-ttf2.0-0
The following packages will be REMOVED:
virtualbox virtualbox-ext-pack virtualbox-qt
The following NEW packages will be installed:
virtualbox-5.2
0 upgraded, 1 newly installed, 3 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 73,7 MB of archives.
After this operation, 87,3 MB of additional disk space will be used.
这次我得到了一个不同的错误
sudo: /etc/sudoers.d/README is world writable
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libgsoap8 libvncserver1 virtualbox-dkms
Use 'sudo apt autoremove' to remove them.
Recommended packages:
libsdl-ttf2.0-0
The following packages will be REMOVED:
virtualbox virtualbox-ext-pack virtualbox-qt
The following NEW packages will be installed:
virtualbox-5.2
0 upgraded, 1 newly installed, 3 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 73,7 MB of archives.
After this operation, 87,3 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 https://download.virtualbox.org/virtualbox/debian xenial/contrib amd64 virtualbox-5.2 amd64 5.2.20-125813~Ubuntu~xenial [73,7 MB]
Fetched 73,7 MB in 32s (2.245 kB/s)
Preconfiguring packages ...
(Reading database ... 330819 files and directories currently installed.)
Removing virtualbox-ext-pack (5.1.38-0ubuntu1.16.04.1) ...
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Successfully uninstalled "Oracle VM VirtualBox Extension Pack".
VBoxManage: error: The installer failed with exit code 1: VBoxExtPackHelperApp: error: World writable: '/usr'
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPackManagerWrap, interface IExtPackManager, callee nsISupports
VBoxManage: error: Context: "Cleanup()" at line 1251 of file VBoxManageMisc.cpp
dpkg: error processing package virtualbox-ext-pack (--remove):
subprocess installed pre-removal script returned error exit status 1
Removing virtualbox-qt (5.1.38-dfsg-0ubuntu1.16.04.1) ...
dpkg: virtualbox: dependency problems, but removing anyway as you requested:
virtualbox-ext-pack depends on virtualbox (<< 5.1.38-dfsg-z) | virtualbox-5.1; however:
Package virtualbox is to be removed.
Package virtualbox-5.1 which provides virtualbox is not installed.
Package virtualbox-5.2 which provides virtualbox is not installed.
Package virtualbox-5.1 is not installed.
virtualbox-ext-pack depends on virtualbox (>= 5.1.38-dfsg-0~) | virtualbox-5.1; however:
Package virtualbox is to be removed.
Package virtualbox-5.1 which provides virtualbox is not installed.
Package virtualbox-5.2 which provides virtualbox is not installed.
Package virtualbox-5.1 is not installed.
virtualbox-ext-pack depends on virtualbox (<< 5.1.38-dfsg-z) | virtualbox-5.1; however:
Package virtualbox is to be removed.
Package virtualbox-5.1 which provides virtualbox is not installed.
Package virtualbox-5.2 which provides virtualbox is not installed.
Package virtualbox-5.1 is not installed.
virtualbox-ext-pack dep
Removing virtualbox (5.1.38-dfsg-0ubuntu1.16.04.1) ...
Processing triggers for man-db (2.7.5-1) ...
Processing triggers for shared-mime-info (1.5-2ubuntu0.2) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5.2) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20180209-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Processing triggers for hicolor-icon-theme (0.15-0ubuntu1.1) ...
Errors were encountered while processing:
virtualbox-ext-pack
E: Sub-process /usr/bin/dpkg returned an error code (1)
最后,我从下载了 .deb 文件(适用于 ubuntu 16.04 AMD64)虚拟框页面并被处决
sudo dpkg -i virtualbox-5.1_5.1.38-122592~Ubuntu~xenial_amd64.deb
结果如下:
sudo: /etc/sudoers.d/README is world writable
(Reading database ... 331301 files and directories currently installed.)
Preparing to unpack virtualbox-5.1_5.1.38-122592~Ubuntu~xenial_amd64.deb ...
Unpacking virtualbox-5.1 (5.1.38-122592~Ubuntu~xenial) over (5.1.38-122592~Ubuntu~xenial) ...
Setting up virtualbox-5.1 (5.1.38-122592~Ubuntu~xenial) ...
addgroup: The group `vboxusers' already exists as a system group. Exiting.
Processing triggers for systemd (229-4ubuntu21.5) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for hicolor-icon-theme (0.15-0ubuntu1.1) ...
Processing triggers for shared-mime-info (1.5-2ubuntu0.2) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5.2) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20180209-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for mime-support (3.59ubuntu1) ...
但是当我执行 virtualbox 时,出现以下错误:
VirtualBox: Error -610 in supR3HardenedMainInitRuntime!
VirtualBox: dlopen("/usr/lib/virtualbox/VBoxRT.so",) failed: <NULL>
VirtualBox: Tip! It may help to reinstall VirtualBox.
那么我还应该怎么安装virtual box和扩展包呢?
感谢@GAD3R,问题已经找到。问题是您最初更改了 /usr 及其子目录的权限,您的系统变得不安全,并且由于“其他”的写入权限而无法安装该软件包
于是我在那个麻烦的旁边安装了另一个ubuntu。
答案1
您收到此错误:
VirtualBox: Error -610 in supR3HardenedMainInitRuntime!
VirtualBox: dlopen("/usr/lib/virtualbox/VBoxRT.so",) failed: <NULL>
VirtualBox: Tip! It may help to reinstall VirtualBox.
因为根分区的权限被递归修改为777
. Virtualbox 对文件权限和所有权设置了一些限制。
检查所有已安装的文件和目录(可选的和强制的)归 root:wheel 所有并且是除 root 之外的任何人都不可写。