使用Linux功能时,pyinstall可执行文件将不会以非特权用户身份运行

问题描述

我已经从releases page下载了borgbackup的二进制版本;这是一个pyinstaller二进制文件。

我已经使用filecap /path/to/borg dac_read_search向其中添加了capabilities,以便它对整个文件系统具有只读访问权限(比对root用户具有更好的读写访问权限更好。整个文件系统)。

我已经在4台主机上安装了它。其中3个工作正常。所有的Debian 10(Buster)。

在问题主机上,当我以root身份运行时,例如/path/to/borg -V,它可以正常工作并显示其版本(1.1.13),但是当我以非特权用户身份运行它时,出现以下错误:

Traceback (most recent call last):
  File "borg/archiver.py",line 38,in <module>
  File "/home/vagrant/.pyenv/versions/3.5.9/envs/borg-env/lib/python3.5/site-packages/PyInstaller-3.2.1-py3.5.egg/PyInstaller/loader/pyimod03_importers.py",line 389,in load_module
  File "borg/helpers.py",line 75,line 573,in load_module
ImportError: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory

由于我们现在有libcrypto.so.1.0.0,现在缺少libcrypto.so.1.1 。但是,为什么要为非root用户寻找不存在的较旧的库,却(以推测方式)以root用户身份运行时找到最新的当前库?

如果我删除该功能,它将运行正常,并返回版本号。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...