在 CentOS 下 AppImage 闪退 是比较常见的问题,通常不是 AppImage 本身坏了,而是运行环境或依赖不满足。下面按「最常见原因 → 排查方法 → 解决办法」给你系统讲一下。
AppImage 默认需要 fuse 来挂载自身。
现象
fuse: device not found
或AppImages require FUSE to run
解决(CentOS 7/8)
sudo yum install fuse fuse-libs
sudo modprobe fuse
CentOS 8 / Stream:
sudo dnf install fuse
现象
解决
chmod +x xxx.AppImage
./xxx.AppImage
⚠️ 不要直接双击不授权
很多新 AppImage 是基于 Ubuntu 20.04+ 编译的。
现象
/lib64/libc.so.6: version `GLIBC_2.28' not found
检查
ldd --version
CentOS 7:
解决办法
常见缺失
解决示例
sudo yum install gtk3 libxcb libGL mesa-libGL
某些 CentOS 服务器版:
测试
echo $XDG_SESSION_TYPE
如果是 tty,AppImage 必然闪退。
./xxx.AppImage
或
./xxx.AppImage --appimage-extract
报错信息才是关键。
./xxx.AppImage --appimage-extract
cd squashfs-root
./AppRun
能看到真正崩溃点。
如果不想装 fuse:
./xxx.AppImage --appimage-extract
cd squashfs-root
./AppRun
| CentOS 版本 | AppImage 兼容性 |
|---|---|
| CentOS 7 | ❌ 很差 |
| CentOS 8 | ⚠️ 一般 |
| Stream 9 | ✅ 好很多 |
你可以把下面信息发我,我可以直接判断原因:
cat /etc/redhat-release)我可以直接给你一条能跑的命令。