为什么 mdadm 需要 exim、Kyoto Cabinet、Maria DB、Python、MySQL?

为什么 mdadm 需要 exim、Kyoto Cabinet、Maria DB、Python、MySQL?

今天我有点惊讶地在 Debian 安装中发现以下内容:

$ sudo apt-get install mdadm
...
The following NEW packages will be installed:
  exim4-base exim4-config exim4-daemon-light guile-2.0-libs libfribidi0
  libgc1c2 libgsasl7 libkyotocabinet16v5 libltdl7 liblzo2-2 libmailutils5
  libmariadbclient18 libntlm0 libpython2.7 libpython2.7-minimal
  libpython2.7-stdlib mailutils mailutils-common mdadm mysql-common psmisc
...
After this operation, 44.7 MB of additional disk space will be used.

这里有很多依赖项似乎与管理 RAID 阵列无关。我可以看到当 RAID 阵列发生故障时发送电子邮件的依赖项可能非常松散,但除此之外,上面的列表对我来说毫无意义。它有 45 MB 的依赖项。

这些依赖关系的原因是什么?

答案1

除 exim4(通过 default-mta)之外,以上都不属于 mdadm 依赖树的一部分。

然而它智能工具依赖关系树。许多守护进程本身会生成 RFC x822 电子邮件消息并将其提供给 /usr/sbin/sendmail,但smartd_warning.shsmartmontools 附带的脚本更简单,只需运行mail命令即可。

mail有多种来源,包括蜗牛bsd-mailx,但默认情况下 Debian 从 GNU 安装它邮件实用程序包裹。

  • 一些 mail/mailx 客户端,包括来自邮件实用程序,支持访问远程 POP3 和 IMAP 服务器(而不是仅限本地邮件池),并且实际上任何现代 IMAP 客户端都需要 SASL 实现。mailutils 使用的 SASL 是 Cyrus SASL,它具有选修的Berkeley DB 账户存储的“服务器端”模块。
  • Mailutils 包括 POP3 和 IMAP服务器以及客户端,它们支持将用户帐户存储在 SQL 数据库中。Debian 将这些守护进程拆分成自己的包,这通常是为了避免大量的依赖关系——但出于某种原因,不必要的依赖关系不是从主包中删除。有一个Debian 错误报告
  • 邮件过滤工具maidag(类似于 procmail)包括Python 和 Scheme(guile)脚本支持。同样,这似乎被拆分成一个单独的包,但依赖项并未被删除。

调查使用:

  1. apt rdepends mailutils
  2. debtree smartmontools | dot -T png -o debtree.png

在此处输入图片描述

相关内容