解決 qbittorrent docker版 libQt5Core.so.5丟失

背景

问题出在黑群晖上,群晖的系统其实也是Linux系统,只不过是闭源了,但是他的内核可能和社区的内核还是有点区别,导致它少点东西,有的时候在docker的应用方面会报错(以上个人理解,如有问题,烦请纠正)

我的设备以及环境

错误日志:

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    1000
-------------------------------------
[cont-init.d] done.
[services.d] starting services
[services.d] done.
You are using a legacy method of defining umask
please update your environment variable from UMASK_SET to UMASK
to keep the functionality after July 2021
/usr/bin/qbittorrent-nox: error while loading shared libraries: libQt5Core.so.5: cannot open shared object file: No such file or directory
You are using a legacy method of defining umask
please update your environment variable from UMASK_SET to UMASK
to keep the functionality after July 2021
/usr/bin/qbittorrent-nox: error while loading shared libraries: libQt5Core.so.5: cannot open shared object file: No such file or directory
You are using a legacy method of defining umask
please update your environment variable from UMASK_SET to UMASK
to keep the functionality after July 2021
/usr/bin/qbittorrent-nox: error while loading shared libraries: libQt5Core.so.5: cannot open shared object file: No such file or directory
You are using a legacy method of defining umask

情况就是这样无法启动web面板,日志显示

error while loading shared libraries: libQt5Core.so.5: cannot open shared object file: No such file or directory
You are using a legacy method of defining umask

因为我是在家里的实体服务器上进行操作,并不是在国内或者国外的服务器上进行运行的,这就会造成一个很麻烦的境地,

docker exec -it 容器id /bin/bash

进入容器后无法进行更新源,因为黑群晖这个docker的网络有问题,在使用ustc大学镜像源以后 居然会apt update失败,因为是在群晖里面的docker,我尝试了使用HTTP代理和Socket5代理进行apt的数据源进行更新(全都失败)

于是我想到一个更好更妙的方法,在路由器上全局科学,这样所有设备的网络都会通过路由器进行代理。

剥离 libQt5Core.so.5

首先进入容器

docker exec -it 容器 /bin/bash

更新源

apt update

安装binutils

apt install binutils

进行剥离

strip --remove-section=.note.ABI-tag /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

退出容器

exit

重启docker容器

docker restart 容器
最后修改:2023 年 10 月 05 日
如果觉得我的文章对你有用,请随意赞赏