![/etc/cron.daily/apt:分段错误](https://linux22.com/image/531918/%2Fetc%2Fcron.daily%2Fapt%EF%BC%9A%E5%88%86%E6%AE%B5%E9%94%99%E8%AF%AF.png)
我有一个使用 Maverick 和“自动应用安全更新”设置的系统。它现在每天都会发送电子邮件:
Subject: Anacron job 'cron.daily' on gwen
/etc/cron.daily/apt:
Segmentation fault
如果我手动“apt-get update; apt-get dist-upgrade”,它运行得很好。此外,如果我登录并运行 /etc/cron.daily/apt,它也不会出现段错误。
我在谷歌上进行了一些搜索,大多数结果似乎来自 2008 年并且与“pam_mount”有关,但该系统上没有这个功能。
答案1
我敢打赌,您的问题源于该 apt 脚本中环境变量不足。(例如:$PATH 或 $LD_LIBRARY_PATH)本质上,通过 cron 运行和在交互式 shell 中运行是有区别的。后者从 /etc/profile 和 ~/.bashrc 等位置获取您的登录环境。尝试在开头 /etc/cron.daily/apt 添加一两行以导入这些设置,如下所示:
. /etc/profile
我会非常诚实地指出,我不太熟悉 Ubunto,因此这些文件位置可能并不完美。如果您使用的是 Bash 以外的 shell,您的个人登录文件可能是 ~/.profile 或 ~/.cshrc,甚至是完全不同的东西。但概念是一样的。
可以找到相关问题这里——
克里斯托弗·卡雷尔
答案2
这是 python-apt 库中的一个已知错误,记录在Ubuntu 错误 664514。上游已经发布了错误修复,但是 Ubuntu 尚未指派任何人进行修复。 更多信息和临时软件包可修复此问题,直到 Ubuntu 发布修复程序。