apt-get -f install 安全吗?

apt-get -f install 安全吗?

我正在使用 Ubuntu 20.04。我从Oracle 网站,然后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]

编辑:' 1 not fully installed or removed' 是 virtualbox 包本身。我现在已经使用 删除了 virtualbox,sudo apt-get remove --purge virtualbox并使用 重新安装,apt install virtualbox它已自动安装了所需的依赖项。我知道这些都是安全的,并且来自 Ubuntu 官方存储库,因为我没有启用其他不受支持的第三方存储库(软件和更新中心中未选中这些选项)。

答案1

所有由 安装的依赖项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

而不是使用dpkg -i。这样您就不必sudo apt -f install事后运行。 形式为 的命令会自动安装安装 .deb 包所需的所有依赖包。它还会默认安装推荐的包,但 apt 有一个选项可以禁用单个命令的推荐包安装。还应注意,终端中的当前工作目录应与包含 package-name.deb 的目录相同,以便 apt 可以在当前工作目录中找到 package-name.deb。sudo apt install ./package-name.deb

相关内容