解决容器内'npu-smi'动态库缺失问题

举报
WWWzq 发表于 2025/05/10 13:53:12 2025/05/10
【摘要】 环境昊算npu云910b 报错情况终端输入npu-smi info后报错:npu-smi: error while loading shared libraries: libc_sec.so: cannot open shared object file: No such file or directory 解决方案调用ldd /usr/local/bin/npu-smi查看缺少哪些文件r...

环境

  • 昊算npu云
  • 910b

报错情况

终端输入npu-smi info后报错:

npu-smi: error while loading shared libraries: libc_sec.so: cannot open shared object file: No such file or directory

解决方案

  1. 调用ldd /usr/local/bin/npu-smi查看缺少哪些文件
root@ascend-1743749729-chief-0:~# ldd /usr/local/bin/npu-smi
        linux-vdso.so.1 (0x0000ffff968fe000)
        libc_sec.so => not found
        libdrvdsmi_host.so => /usr/local/Ascend/driver/lib64/driver/libdrvdsmi_host.so (0x0000ffff965d0000)
        libmmpa.so => not found
        libascend_hal.so => /usr/local/Ascend/driver/lib64/driver/libascend_hal.so (0x0000ffff96170000)
        libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffff96140000)
        libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffff95f90000)
        /lib/ld-linux-aarch64.so.1 (0x0000ffff968c1000)
        libc_sec.so => not found
        libc_sec.so => not found
        librt.so.1 => /lib/aarch64-linux-gnu/librt.so.1 (0x0000ffff95f60000)

根据前文的报错信息和该命令的输出信息,缺少lib_sec.so

  1. 使用find命令查看
find / -name "libc_sec.so"

输出信息为:

root@ascend-1743749729-chief-0:~# find / -name "libc_sec.so"
find:/sys/devices/virtual/powercap/dtpm’: Permission denied
/usr/local/Ascend/driver/lib64/common/libc_sec.so

可知libc_sec.so文件的位置在”/usr/local/Ascend/driver/lib64/common/libc_sec.so“,随后检查环境变量PATH和动态链接库LD_LIBRARY_PATH

root@ascend-1743749729-chief-0:~# echo $PATH
/usr/lib/code-server/lib/vscode/bin/remote-cli:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
root@ascend-1743749729-chief-0:~# echo $LD_LIBRARY_PATH
/usr/local/Ascend/driver/lib64:/usr/local/Ascend/driver/lib64/driver:

可知是动态链接库中缺少lib_sec.so

  1. 将 ”/usr/local/Ascend/driver/lib64/common/libc_sec.so“ 添加到动态链接库LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/local/Ascend/driver/lib64:/usr/local/Ascend/driver/lib64/driver://usr/local/Ascend/driver/lib64/common
  1. 验证库文件是否能被找到:
ldd /usr/local/bin/npu-smi
  1. 测试工具是否正常运行:
/usr/local/bin/npu-smi info
  1. 若有效,将设置写入环境配置文件:
echo 'export LD_LIBRARY_PATH=/usr/local/Ascend/driver/lib64:/usr/local/Ascend/driver/lib64/driver://usr/local/Ascend/driver/lib64/common' >> ~/.bashrc
source ~/.bashrc

REFERENCE

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。