AppImages需要FUSE版本2才能运行。用户空间中的文件系统(FUSE)是一个允许非root用户挂载文件系统的系统。
安装FUSE
许多发行版都有开箱即用的FUSE设置。但是,如果它不适合您,您可能需要手动安装和配置FUSE。
例如,在Ubuntu(>=22.04)上:
sudo add-apt-repository universe
sudo apt install libfuse2
警告:虽然libfuse2可以,但从22.04开始libfuse2不要安装该软件包,否则可能会破坏您的系统fuse
例如,在Ubuntu(>=22.04)上:
sudo apt install fuse libfuse2
sudo modprobe fuse
sudo groupadd fuse
user="$(whoami)"
sudo usermod -a -G fuse $user
例如,在openSUSE上:
sudo zypper install fuse libfuse2
为了fusermount在OpenSUSE上使用默认(?)“安全”文件权限设置(请参阅 参考资料/etc/permissions.secure),您的登录名需要是该trusted组的一部分。要添加您自己,请运行
sudo usermod -a -G trusted `whoami`
然后注销并登陆以使更改生效。
例如,在Fedora上:
dnf install fuse fuse-libs
例如,在Centos/RHEL上:
yum --enablerepo=epel -y install fuse-sshfs #install from EPEL
user="$(whoami)"
usermod -a -G fuse "$user"
例如,在Armbian 64位系统上(例如,对于Pine64),您需要安装32位libfuse2
才能运行32位AppImage,例如MuseScore之一:
sudo apt install libfuse2:armhr
例如,在Clear Linux操作系统上:
这可能是一个错误,请参阅Enable FUSE by default · Issue #273 · clearlinux/distribution · GitHub
sudo su
mkdir -p /etc/modules-load.d/
echo "fuse" > /etc/modules-load.d/fuse.conf
reboot
例如,在Arch Linux上:
如果您看到“fusermount:安装失败:不允许操作”
sudo chmod u+s `which fusermount`
Chrome 操作系统、Chromium 操作系统、Crostini:
FUSE 不能开箱即用,但在版本 73 之后安装很简单:
sudo apt install fuse
检查https://bugs.chromium.org/p/chromium/issues/detail?id=841787了解详细信息
Fallback
如果您不想安装 FUSE,则可以挂载或提取 AppImage。
类型 2 AppImage
要提取 AppImage 的内容,只需使用 运行 AppImage 即可--appimage-extract。
type-1 AppImage
如果上述方法不起作用,您可能仍然拥有较旧的 type-1 AppImage。要安装 AppImage 并运行应用程序,只需运行
sudo mount -o loop Some.AppImage /mnt
/mnt/AppRun
cd AppDir
bsdtar xfp /home/me/Downloads/Some.AppImage
./AppRun
也有效。
Docker
从 Docker 容器运行 AppImage 时,您将收到以下错误:
fuse: failed to open /dev/fuse: Operation not permitted
Could not mount AppImage
Please see https://github.com/probonopd/AppImageKit/wiki/FUSE
您经常会听到“哦,只需添加这些参数就docker run --cap-add SYS_ADMIN --cap-add MKNOD --device /dev/fuse:mrw可以了”,但这被认为是不安全的。
[...]
./appimagetool-*.AppImage --appimage-extract-and-run ...
[...]
您还可以appimagetool使用export APPIMAGE_EXTRACT_AND_RUN=1
注意:可以从发行版本 9appimagetool-*.AppImage开始提取
如果您想根据是否在容器中(例如在构建脚本中)来决定是直接使用 AppImage 还是提取 AppImage,您可以将其与一些检测代码结合起来。
更多故障排除信息I get some errors related to something called “FUSE” — AppImage documentation
在Virtual x86上,您必须从 .deb 文件获取 .so 文件。