0

我有一个 Python 脚本,它使用带有 Twisted 的 ZSI 调用 Web 服务。在 Linux 上,我正在运行这个脚本,它运行良好。

现在,我希望这个脚本在我的文件系统某处的 chroot 监狱中运行。我在监狱中添加了 usr、lib 和 etc 目录。当我从监狱执行脚本时,Web 服务没有响应,Twisted 报告如下错误:

[失败实例:回溯(无帧失败):twisted.internet.error.ConnectionLost:与另一端的连接以非干净方式丢失。]

如果我 chroot 到文件系统的根目录 (/) 并且新的 jail 使用已经存在的 usr、lib 和 etc 目录,它可以正常工作。

我怀疑第一个 chroot 监狱的 bin/usr/etc 目录中缺少一个库或一个库不正确。你有什么线索可以帮助我吗?有人有解决这个问题的方法吗?

4

1 回答 1

0

如果您的应用程序在某些时候引发了意外的异常——例如,因为某些依赖项无法导入,因为它没有安装在 chroot 中——那么这可能会导致连接意外关闭。很难准确地说出,因为您没有提到您拥有什么样的连接或您使用什么 API 来管理它们。

确保您已启用日志记录并查找写入日志文件的意外回溯。如果您看到任何问题,它们很可能与导致您的应用程序失败的问题相关联。

于 2011-12-20T17:22:25.573 回答