为了研究导致安装给定软件包的原因,我想获取依赖于该软件包的软件包列表。我在man dpkg
.
如何找出安装特定软件包的原因?
在这个答案中,我遇到了这个命令:
aptitude why firefox
Run Code Online (Sandbox Code Playgroud)
aptitude why
看起来像一个有用的命令,但我不想为此安装 aptitude。什么是apt-get
等效aptitude why
?
我正在查看我安装的程序,当我看到一个名为 的程序时ImageMagick
,我在 Ubuntu 软件中心查看了它,它是一个操作图像的程序。
没关系,但我从来没有安装过!我看到我安装了大约。1 个月前(5 月 25 日)。
可以肯定的是,它是否带有更新或类似的东西?
我正在尝试openjdk-7-jdk
在 Ubuntu Trusty上安装(使用apt
或aptitude
),但它似乎依赖于systemd
,我想避免这种情况。而且,我systemd
在debtree
or的输出中也看不到apt-rdepends
。为什么呢?不openjdk-7-jdk
依赖于systemd
或不?
为了给你更大的图景,我正在配置一个服务器。这一切都发生在安装elasticsearch
. 它想要java
,并且java
想要systemd
。但是安装后systemd
无法启用elasticsearch
,因为它带有init脚本,而不是systemd单元文件。它看到systemctl
并假设要使用它,而不是service
.
UPD它不需要systemd
,直到我做apt update
。之前apt update
:
# apt-cache policy openjdk-7-jdk
openjdk-7-jdk:
Installed: (none)
Candidate: 7u101-2.6.6-0ubuntu0.14.04.1
Version table:
7u101-2.6.6-0ubuntu0.14.04.1 0
500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages
7u51-2.4.6-1ubuntu4 0
500 http://archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
# …
Run Code Online (Sandbox Code Playgroud) 如何检查软件包是否是基本 Ubuntu (v18.04.5) 安装必不可少的一部分?
例如。我一直在我的每周软件更新程序 GUI 中看到Ceph和RADOS更新,即...
? ~ apt list --upgradable
Listing... Done
libcephfs2/bionic-updates 12.2.13-0ubuntu0.18.04.8 amd64 [upgradable from: 12.2.13-0ubuntu0.18.04.7]
librados2/bionic-updates 12.2.13-0ubuntu0.18.04.8 amd64 [upgradable from: 12.2.13-0ubuntu0.18.04.7]
ubuntu-drivers-common/bionic-updates 1:0.8.6.3~0.18.04.1 amd64 [upgradable from: 1:0.5.2.5]
Run Code Online (Sandbox Code Playgroud)
我不记得我是否在一段时间前自己安装了这些作为实验,或者它们是否是基本/基本 Ubuntu 安装的一部分。如果它们不是基本安装或必不可少的“普通”Ubuntu 系统的一部分,那么我想删除这些软件包。有什么方法可以告诉(特别是如何判断删除还会影响什么)?
apt ×2
aptitude ×2
dependencies ×2
command-line ×1
imagemagick ×1
jdk ×1
openjdk ×1
systemd ×1
updates ×1