最近发现unraid的cpu io wait高得离谱, 准备使用
iotop
查看一下, 虽然unraid本身并没有安装iotop
, 但是可以通过NerdTools插件进行安装, 装好过后运行iotop
, 结果却抛出了libffi.so.7: cannot open shared object file: No such file or directory
的异常信息
解决方案
1 2 3 4 5 6 7 8 |
# 首先下载libffi7的deb包 wget http://archive.ubuntu.com/ubuntu/pool/main/libf/libffi/libffi7_3.3-4_amd64.deb # 然后解包(unraid下没有ar指令, 我是在别的linux机器上操作的) ar x libffi7_3.3-4_amd64.deb # 然后解压缩data.tar.xz tar -xf data.tar.xz # 这时候会出现一个usr的文件夹 # 将usr/lib/x86_64-linux-gnu/下的2个文件复制到unraid的/usr/lib64下即可 |
注意
unraid重启过后, 复制到/usr/lib64的文件夹会消失, 可以通过以下方式解决
1 2 3 4 5 |
# 先在U盘下新建目录 mkdir /boot/config/libffi7 # 然后将刚刚usr/lib/x86_64-linux-gnu/这个目录下的2个文件复制到新建的目录中 # 编辑/boot/config/go文件 echo 'cp /boot/config/libffi7/* /usr/lib64/' >> /boot/config/go |
这样一来重启过后unraid会自动复制这两个文件到相应的目录中
GPT
如果在 Unraid 的 NerdTools 插件中使用 iotop 命令时出现 "libffi.so.7: cannot open shared object file: No such file or directory" 错误,可能是因为 libffi 库没有正确安装或者没有正确配置环境变量导致。
要解决这个问题,可以尝试以下步骤:
更新 Unraid 系统,并重新安装 NerdTools 插件。
执行以下命令以安装 libffi 库:
sudo apt-get install libffi7
确认 libffi 库的路径是否已经添加到 /etc/ld.so.conf.d/ 目录中。如果没有,请手动添加该目录并更新 ldconfig 缓存:
1 2 3 4 |
sudo ldconfig``` 尝试重新运行 iotop 命令,确认问题是否已经解决。 需要注意的是,在执行以上操作前,应该先备份好系统数据和配置文件,以免意外情况导致数据丢失。 |