我很难找到我正在使用的软件版本中遇到的问题的原因安装它的机器的初始映像。
这次更新没有什么特别之处。我们在 Raspberry Pi 上有一个 yum 存储库,连接到网络上的机器,这个存储库包含所有 RPM 包,以便在基础映像上更新。应用了一个简单的 yum update -y。如果我使用相同的 Raspberry Pi 并上传了不同版本的软件,则此相同的更新过程目前有效。
问题发生在一个包 ntp 上,在应用了所有更新后,yum 尝试清理旧版本的 ntp 包,但它只是挂起......我已经把它放在那里好几天了,它永远不会完成。
ntp 包的 RPM 与我们在软件的每个其他版本中使用的 RPM 相同,并且在任何其他版本中从未出现过此问题。存储库本身没有区别,正如我所说,安装程序只需调用 yum update -y。
我使用以下命令进行了检查: sudo lsof -p $(pgrep yum) | head -10 如另一个 StackExchange 线程中所建议的那样,并且正在运行的 yum 进程正在查看多个 DB 文件。不过,担心运行过程是没有意义的,因为安装向导应该是自动化的,并且它以前可以工作。
所以我想我想知道的是......由于我们的安装向导非常庞大,而且我在这里没有线索,有哪些可能会改变的事情会导致旧 ntp 包的清理挂起?我假设在安装过程中一定发生了一些变化,但我找不到与 NTP 或 yum 相关的明显差异。
有任何想法吗?如果重要的话,这是带有 2.6.32-754 内核的 Scientific Linux 6.4。
问题最终是在我们的安装过程中涉及的另一个 RPM 的安装后脚本中执行了一些重复的 sed 命令,这些命令与 ntp.conf 文件混淆,因此清理无法处理该文件。