RHEL 9使用Podman运行容器时出现crun符号查找错误求助
解决RHEL 9中crun
criu_feature_check 未定义符号错误 问题原因
该错误源于crun依赖的criu包版本不兼容,或系统中存在多版本criu库导致依赖冲突。
解决步骤
1. 核查当前版本与依赖路径
先确认系统中criu和crun的安装版本:
rpm -q criu crun
再查看crun关联的criu库位置:
ldd /usr/bin/crun | grep criu
2. 升级criu至兼容版本
RHEL 9官方container-tools模块提供适配的criu版本,执行强制更新:
sudo dnf update criu -y
3. 清理第三方criu冲突库
若系统存在非官方源安装的criu库,会引发冲突。先查找相关文件:
sudo find /usr/lib64 -name "libcriu*.so*"
找到非rpm包安装的库后,备份并删除(替换为实际查找到的路径):
sudo rm -f /usr/lib64/libcriu.so.3.15
4. 重装crun并验证
彻底卸载后重新安装crun:
sudo dnf remove crun -y sudo dnf install crun -y
验证crun是否恢复正常:
crun --version
无报错后,重新运行原Podman命令:
podman run -d -it --name php-app -v /home/ahmad/app/:/app:Z -p 8080:80 docker.io/webdevops/php-apache
5. 切换至官方稳定版container-tools
确保使用RHEL 9官方支持的容器工具版本:
sudo dnf module reset container-tools -y sudo dnf module enable container-tools:rhel9 -y sudo dnf module install container-tools:rhel9 -y
额外提示
- 避免从第三方源安装容器组件,防止依赖冲突。
- 操作前备份重要容器数据,降低意外风险。
内容的提问来源于stack exchange,提问作者Noor Muradi
相关产品推荐
相关产品推荐

