Ubuntu
虛擬機無法安裝
**問題:**無法安裝虛擬盒子。我嘗試使用以下命令安裝它:
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)
然後我搜尋了解決方案,發現了類似的問題:
本主題提供以下解決方案
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)
然後我訪問了virtualbox 頁面並按照“基於 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)
最後,我從virtualbox 頁面下載了 .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.
那麼我還應該做些什麼來安裝虛擬盒子和擴展包呢?
感謝@GAD3R,問題已經找到。問題是您最初更改了 /usr 及其子目錄的權限,您的系統變得不安全,並且由於“其他”的寫入權限而無法安裝軟體包
所以我在麻煩的旁邊安裝了另一個ubuntu。
您收到此錯誤:
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 之外的任何人都不可寫。