如何让 apt-get 忽略某些依赖项?例如,我想安装mailx,以便我可以使用它从 cron 脚本/报告生成工具发送电子邮件。但是,安装 mailx 也会安装exim4和一大堆依赖项(我已经安装了 Postfix)我真的不需要,我猜 mailx 也可以没有它。
如何忽略某些依赖项但仍然使用 apt-get 因为它是一个不错的工具?
我偶尔会丢失我的配置文件“/etc/mysql/my.cnf”,并想恢复它。该文件属于mysql-common某些重要功能所需要的包,所以我不能只是purge && install它:依赖项也将被卸载(或者如果我可以暂时忽略它们,它们将无法工作)。
有没有办法在不ar取消包文件的情况下从包中恢复配置文件?
dpkg-reconfigure mysql-common 没有恢复它。
我们的生产服务器正在运行 CentOS 5.2 版(最终版)。
如何查看/获取/列出已安装的RPM 包的所有依赖项?
例如:服务器中已经安装了 SQLite v3.3.6。我想查看这个特定包的所有依赖项。
这是命令的输出: rpm -qa |grep sqlite
python-sqlite-1.1.7-1.2.1
sqlite-3.3.6-2
sqlite-3.3.6-2
Run Code Online (Sandbox Code Playgroud)
另外,为什么它在sqlite-3.3.6-2这里列出了 2 个条目?
有没有更好的方法来只安装软件包所需的依赖项,而不是直接使用 apt-get(或 dpkg 的任何其他前端)安装它,然后立即删除它,而忽略其依赖项?
有没有办法systemd告诉我当我干净地关闭整个系统时它将关闭服务粗略顺序?由于systemd将并行关闭,我很欣赏没有办法知道确切的顺序,但了解systemd关闭顺序会施加哪些约束仍然会非常有帮助,最好是在某种易于理解的可视化中。
动机是为了服务文件的开发和调试,拿到这个会方便很多 提前预测列表,而不是每次我想确定的时候都要真正关机再开机再检查日志对服务单元文件或 systemd 配置的其他方面的更改将对关闭顺序产生什么影响。
我希望像
systemctl list-dependencies --before shutdown.service
Run Code Online (Sandbox Code Playgroud)
会做这项工作,但它只发出:
shutdown.service
Run Code Online (Sandbox Code Playgroud) 我正在寻找有关厨师食谱版本管理的想法。我知道您在环境中固定了特定版本,但我不确定如何去做。
我们使用librarian-chef 将第3 方社区书籍安装到cookbooks 文件夹中。我们从不碰这些书,只是不时更新到最新版本。
我们还提供自定义站点特定食谱,其中包含社区食谱 ( include_recipe)。
理论上我们可以指定自定义书籍所依赖的社区书籍的特定版本,然后在环境配置中设置我们的食谱版本,但问题是这些社区书籍可能依赖于其他一些没有指定版本的书籍。并且这种深度嵌套的依赖可能会持续下去。
因此,无法保证当您将食谱上传到厨师服务器时,它不会破坏产品,因为依赖的食谱也可能会发生变化。
目前我能看到的唯一解决方案是指定我们在环境配置中使用的每个食谱版本,包括社区和自定义版本。但后来我必须仔细阅读每本食谱并找出那些版本。
我们还不时进行图书管理员-厨师更新,我想可能会很难追踪更改的版本,并且在时间到来时不要忘记更新环境中的版本。
请分享您的经验和最佳实践。我相信它对其他人非常有用。
我已经有一个包 B 并且想要安装一个新的包 A。安装想要修改 B,但我不希望这种情况发生。
我需要安装包A。
它依赖于包 B 并且要求是 (>2.0)。
我已经在我的系统中安装了 2.1 版的 B,所以我当前的设置已经满足了依赖关系。
但是 Debian 存储库中有一个新版本 (2.2) 的 B 包,我不想要它,因为它与其他东西冲突。
所以,当我安装 A 包时,apt 也会尝试升级 B。
如何禁用依赖项的升级或指示显式依赖项版本而无需编辑包?
我已阅读如何让 apt-get 忽略某些依赖项?,但这对我没有帮助。在那里的问题中,依赖关系 (B) 根本不应该由存储库管理器处理。在我的情况下,存储库管理器已经处理了依赖项并且应该继续这样做,只是不在这个特定的操作中。
重开审稿人:请看victorgp的评论,这本来应该是答案。
我使用了相当大的 nagios 配置(大约 4000 个服务),没有任何依赖项。当出现问题时,这会导致大量的通知。
我尝试寻找 Nagios Dependencies 的最佳实践,但我在网络上找到的只是一个示例的基本理解。我需要的是更深入的信息,以及如何管理此类配置文件的最佳实践。
示例:在一个由 100 个服务器组成的集群上,每个服务器上都有 apache 监听,我正在监视 apache 进程的数量和监听的 tcp 端口 80。我想让一个依赖另一个,但是dependent_hostgroup_name 不会这样做导致所有“check process”服务都依赖于每个“check_http”服务。
问题是:您如何管理您的依赖项?你使用脚本来生成它们吗?
我有一个运行 Ubuntu 14.04 并带有自动安全更新的瘦 VPS。它用大量内核更新填满了 /boot 分区。我正在尝试删除旧的,但我遇到了“未满足的”依赖项错误,要求我在继续之前修复另一个包。不幸的是,未满足的依赖项想要将新内核安装到 100% 已满的分区。
$ sudo apt-get remove [an old linux-image* package]
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
linux-image-extra-3.13.0-88-generic : Depends: linux-image-3.13.0-88-generic but it is not going to be installed
linux-image-generic : Depends: linux-image-3.13.0-88-generic but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or …Run Code Online (Sandbox Code Playgroud)