Etcher appimage在Ubuntu20.04上无法正常工作。

双击appimage没有起作用,所以我尝试了以下命令。
chmod +x .appimage
sudo ./.appimage

但是它给我报错了。
dlopen():加载libfuse.so.2时出错。
AppImages需要FUSE来运行。 如果您使用--appimage-extract选项运行它,可能仍然可以提取此AppImage的内容。 有关更多信息,请参阅https://github.com/AppImage/AppImageKit/wiki/FUSE。
但是Fuse已经安装在我的系统上。
apt-cache policy libfuse2 libfuse2: 已安装:2.9.9-3 候选版本:2.9.9-3 版本表: *** 2.9.9-3 500 500 http://mirror.xeonbd.com/ubuntu-archive focal/main amd64 Packages 100 /var/lib/dpkg/status
我使用的是Ubuntu 20.04。

你确定你的系统中安装了FUSE吗?apt-cache policy libfuse2的输出是什么? - Thomas Ward
@ThomasWard <pre>libfuse2: 已安装:2.9.9-3 候选版本:2.9.9-3 版本表: *** 2.9.9-3 500 500 http://mirror.xeonbd.com/ubuntu-archive focal/main amd64 Packages 100 /var/lib/dpkg/status </pre> - yaa__
好的,所以已经安装好了。我猜测这个AppImage可能有问题,你应该联系创建者并在那里报告一个错误。这很可能是AppImage本身的问题。 - Thomas Ward
谢谢你的建议。我刚在他们的GitHub仓库上开了一个新的问题。@ThomasWard - yaa__
你下载了正确的Appimage架构吗:Linux x64(64位)/ Linux x86(32位)? - Bodo
在https://www.balena.io/etcher/上,没有64位的Linux版本。只有32位的Linux AppImage。@Bodo - yaa__
我刚刚检查了下载下拉菜单。它显示了"Etcher for Linux x64 (64-bit) (AppImage)"和"Etcher for Linux x86 (32-bit) (AppImage)"。还可以参考这个旧的问题报告https://github.com/balena-io/etcher/issues/1490。你可以尝试使用`strace -e trace=file ./.appimage命令来查看它想要找到libfuse.so.2的位置。你也可以尝试从https://github.com/balena-io/etcher/releases下载.deb`安装包。 - Bodo
我在首页上看到的是一个64位下载按钮,但我误以为它只是一个普通的下载按钮,所以我点击了下拉图标,结果只看到了32位版本。谢谢你指出这个问题 :D @Bodo - yaa__
你在问题中应该写清楚你下载的是哪个Appimage文件,就像你在GitHub的问题中所做的那样。这样就能明确32位的Appimage与64位的库不匹配。 - Bodo
我添加了一个答案,主要是为了其他可能遇到类似问题的用户。我还提出了一个建议,将消息作为AppImage项目的一个问题来改进。 - Bodo
2个回答

根据相关问题所述,下载的Appimage文件是32位版本。
balenaEtcher-1.5.121-ia32
虽然安装的库是64位的
apt-cache policy libfuse2
...
        500 http://mirror.xeonbd.com/ubuntu-archive focal/main amd64 Packages
很遗憾,Appimage代码的错误信息不足够:
dlopen(): error loading libfuse.so.2

AppImages require FUSE to run.
... 

它没有告诉我们dlopen()调用搜索的库的版本或者搜索库的位置。当你看到库libfuse.so.2已经安装在你的系统上,与错误信息相反,这有点令人困惑。

使用strace运行Appimage可能会显示它在32位库的目录中搜索库。

因此,在出现这个错误时,你应该检查Appimage文件的架构是否与你的系统架构匹配。


根据arduino的说法,安装libfuse2软件包可能会解决这个问题。我使用的是Ubuntu 22.04,它对我来说运行良好。
sudo apt-get -y install libfuse2