解决容器内'npu-smi'动态库缺失问题
【摘要】 环境昊算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
解决方案
- 调用
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
- 使用
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
- 将 ”/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
- 验证库文件是否能被找到:
ldd /usr/local/bin/npu-smi
- 测试工具是否正常运行:
/usr/local/bin/npu-smi info
- 若有效,将设置写入环境配置文件:
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)