我有一个 Python 脚本,然后我通过 pyinstaller2.0 运行它来生成它的二进制文件。
python pyinstaller -F /path/to/python/script
在运行二进制文件时,它默认使用 /tmp 文件夹来保存它的临时文件并运行安装程序。这在普通服务器和 VPS 上运行良好。但是,当尝试在禁用 /tmp ( /tmp noexec
) 的服务器上进行安装时,安装将失败。
我的问题如下:
- 运行二进制文件时如何启用另一个临时位置?pyinstaller 有这样的选择吗?
- 如果我编写代码来创建一个临时位置并将其导出到 python 脚本内的 PATH ,它是否无论如何都不会尝试使用默认 /tmp 来运行 python 二进制文件?
- 我想到的另一种方法是在 bash 中编写一个 shell 脚本,它创建一个临时位置,导出它的 PATH,然后调用 python 二进制文件并在它运行后,从 PATH 中删除 temp 的位置,然后删除 temp 文件夹 - 但是这个似乎是一种迂回的方式来完成它。有更好的解决方案吗?