我正在开发 Phidgets SBC2。它有 emdebian 握力,但握力有结束了因此,当 apt-get 尝试获取包列表时,我在这些存储库上收到 404 错误。如果我注释掉 /etc/apt/sources.list.d/multistrap-debian.list 文件中的握持线,我可以使用 apt-get 安装一些东西。然而,正如文件本身中的注释所警告的那样,该文件不断被重新创建。以下是内容:
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
deb http://www.emdebian.org/grip squeeze main dev java doc
deb http://ftp.us.debian.org/debian squeeze main contrib non-free
是什么在进行覆盖,我该如何阻止它?
(编辑:我假设 multistrap 正在执行覆盖操作,但我找不到控制它的 conf 文件。我没有 /usr/share/multistrap 目录。我认为每次我执行 apt- 时都会重新创建该文件获取更新,也许?)
答案1
如果您无法从系统配置或在线搜索中找出答案,请使用loggingfs或auditd来监视对该文件的访问。看如何确定哪个进程正在创建文件?
例如,与审计子系统:
auditctl -a exit,always -w /etc/apt/sources.list.d/multistrap-debian.list
并查看日志/var/log/audit/audit.log
。这将告诉您更改文件的进程的名称。您可能想看看是什么调用了它;您可以通过在可执行文件上设置监视来做到这一点,例如
auditctl -a exit,always -w /usr/lib/somewhere/strange/apt-source-list-editor
execve
您将获得执行该程序的系统调用的条目。