Kit*_*hen 7 package-management apt virtualbox 20.04
我正在使用 Ubuntu 20.04。我从Oracle 网站下载了适用于 Ubuntu 19.10 / 20.04 的 VirtualBox ,然后使用:dpkg -i virtualbox-6.1_6.1.16-140961~Ubuntu~eoan_amd64.deb在终端中安装它。现在我需要安装缺少的依赖项。
我怎么知道依赖项是安全的?他们来自哪里?它们来自 Ubuntu 官方存储库、VirtualBox 还是第三方?
结果sudo apt-get -f:
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following package was automatically installed and is no longer required:
libfprint-2-tod1
Use 'sudo apt autoremove' to remove it.
The following additional packages will be installed:
libdouble-conversion3 libpcre2-16-0 libpython2-stdlib libpython2.7-minimal
libpython2.7-stdlib libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5
libqt5opengl5 libqt5printsupport5 libqt5svg5 libqt5widgets5 libqt5x11extras5
libsdl1.2debian libxcb-xinerama0 libxcb-xinput0 python-is-python2 python2
python2-minimal python2.7 python2.7-minimal qt5-gtk-platformtheme
qttranslations5-l10n
Suggested packages:
qt5-image-formats-plugins qtwayland5 python2-doc python-tk python2.7-doc
binfmt-support
The following NEW packages will be installed
libdouble-conversion3 libpcre2-16-0 libpython2-stdlib libpython2.7-minimal
libpython2.7-stdlib libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5
libqt5opengl5 libqt5printsupport5 libqt5svg5 libqt5widgets5 libqt5x11extras5
libsdl1.2debian libxcb-xinerama0 libxcb-xinput0 python-is-python2 python2
python2-minimal python2.7 python2.7-minimal qt5-gtk-platformtheme
qttranslations5-l10n
0 to upgrade, 24 to newly install, 0 to remove and 0 not to upgrade.
1 not fully installed or removed.
Need to get 14.5 MB of archives.
After this operation, 62.2 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Run Code Online (Sandbox Code Playgroud)
编辑:“ 1 not fully installed or removed”是 virtualbox 包本身。我现在已经删除了 virtualboxsudo apt-get remove --purge virtualbox并使用apt install virtualbox它重新安装了它已经自动安装了所需的依赖项。我知道这些是安全的,并且来自 Ubuntu 官方存储库,因为我没有启用其他不受支持的第三方存储库(这些选项在软件和更新中心中未选中)。
kar*_*rel 13
安装的所有依赖项apt-get -f install只能从您的软件源安装,因此如果您的任何软件源不安全,那么它sudo apt-get -f install也是不安全的。对于仅启用默认 Ubuntu 存储库的 vanilla Ubuntu 安装,则sudo apt-get -f install是安全的,但由于来自默认 Ubuntu 存储库的包不会相互冲突,因此在终端中运行此命令的建议通常不会出现在终端。
要让apt自动配置依赖项,请打开终端,将目录更改cd为包含 virtualbox-6.1_6.1.16-140961~Ubuntu~eoan_amd64.deb 的目录,然后运行以下命令
sudo apt install ./virtualbox-6.1_6.1.16-140961~Ubuntu~eoan_amd64.deb
Run Code Online (Sandbox Code Playgroud)
而不是使用dpkg -i. 然后你就不必跑sudo apt -f install了。形式的命令会自动安装安装 .deb 包所需的所有依赖包。它还默认安装推荐的软件包,但 apt 有一个选项可以禁用为单个命令安装推荐的软件包。还需要注意的是,终端当前的工作目录应该是包含package-name.deb的目录,这样apt才能在当前工作目录中找到package-name.deb。sudo apt install ./package-name.deb