如何在Linux中使用AppImage
简介:本AppImage教程向我们展示如何使用AppImage安装软件以及如何删除其安装的应用程序。
答:什么是AppImage?
多年来,我们为基于Debian / Ubuntu的Linux发行版提供了DEB软件包,为基于Fedora / SUSE的Linux发行版提供了RPM。
虽然这些软件包提供了一种方便的方式来为其各自的发行用户安装软件,但对于应用程序开发人员而言,并不是最方便的。开发人员必须为多个发行版创建多个软件包。这是AppImage出现的地方。
AppImage是一种通用软件包格式。通过将软件打包到AppImage中,开发人员仅提供一个文件"即可全部统治"。最终用户,即我们,可以在大多数(如果不是全部)现代Linux发行版中使用它
AppImage不会以传统方式安装软件
典型的Linux软件将在不同位置创建文件,需要root权限才能对系统进行这些更改。
AppImage不这样做。实际上,AppImage并未真正安装该软件。它是具有运行所需软件所需的所有依赖项和库的压缩映像。
我们执行AppImage文件,然后运行软件。没有提取,没有安装。我们删除AppImage文件,然后删除该软件(我们将在稍后进行介绍)。我们可以将其与Windows中的.exe文件进行比较,该文件使我们无需实际执行安装过程即可运行该软件。
让我列出AppImage的一些功能或者优点。
AppImage功能
- 不可知的发行版:可以在各种不同的Linux发行版上运行
- 无需安装和编译软件:只需单击并播放
- 无需root权限:不会触摸系统文件
- 可移植性:可以在任何地方运行,包括活动磁盘
- 应用处于只读模式
- 仅通过删除AppImage文件即可删除软件
- 默认情况下,未将AppImage中打包的应用程序沙箱化。
B.如何在Linux中使用AppImage
使用AppImage非常简单。通过以下3个简单步骤即可完成:
- 下载AppImage文件
- 使它可执行
- 运行
不用担心,我将向我们详细介绍如何运行AppImage。我在此AppImage教程中使用Ubuntu 16.04,但是我们也可以在其他Linux发行版上使用相同的步骤。毕竟,AppImage的全部要独立于发行版。
步骤1:下载.appimage包
有很多可用AppImage格式的软件。 GIMP,Krita,Scribus和OpenShot只是其中的几个。我们可以在此处找到AppImage格式的大量应用程序列表。
在本教程中,我将使用OpenShot视频编辑器。我们可以从其网站下载。
步骤2:使其可执行
默认情况下,下载的AppImage文件没有执行权限。我们必须更改对该文件的权限以使其可执行。我们不需要root特权即可执行此操作。
如果我们喜欢图形方式,只需右键单击下载的.appimage文件,然后选择"属性"。
右键单击AppImage文件,然后选择"属性"
在下一个屏幕中,转到"权限"选项卡,然后选中"允许以程序方式执行文件"框。
使AppImage文件可执行
而已。我们已使文件可执行。
另外,如果我们更喜欢命令行,则可以简单地使用chmod u + x <AppImage File>使其可执行。
步骤3:运行AppImage文件
将AppImage文件设置为可执行文件后,只需双击即可运行它。它将看到该软件正在运行,就像我们将其安装在系统上一样。不错,不是吗?
C.如何卸载AppImage软件
由于从未安装过该软件,因此无需"卸载"它。只需删除关联的AppImage文件,软件就会从系统中删除。
D.在Linux中使用AppImage时要记住的事情
我们应该了解有关AppImage的其他一些信息。
1.即使执行许可,打包不好的AppImage也不会运行
AppImage的概念是将所有依赖项包含在包本身内。但是,如果开发人员认为他已经打包了所有依赖项却没有真正发生怎么办?
在这种情况下,我们将看到即使授予AppImage执行权限也不会执行任何操作。我们单击AppImage,什么也没有发生。
我们可以通过打开终端并像运行Shell脚本一样运行AppImage来检查是否存在此类错误。这是一个例子:
theitroad@localhost:~/Downloads$ ./compress-pdf-v0.1-x86_64\ \(1\).AppImage /tmp/.mount_compreWhr2rq/check: line 3: xterm: command not found Traceback (most recent call last): File "compress-pdf_Qt.py", line 5, in <module> from PyQt5 import QtCore, QtGui, QtWidgets ModuleNotFoundError: No module named 'PyQt5'
如我们所见,我尝试运行的AppImage出现了一些打包问题。如果遇到这样的情况,则应与开发人员联系并通知他/他有关此问题的信息。
2.桌面整合
当我们运行AppImage文件时,某些软件可能会提示我们"安装桌面文件"。如果选择是,AppImage将像常规安装的应用程序一样与Linux系统集成。
一些软件提供桌面集成
这意味着软件将可以通过Unity或者GNOME进行搜索。我们可以在菜单中找到它并将其锁定到Plank或者Launcher。
桌面整合后的OpenShot
3.桌面集成可能需要手动清除后清除
如果选择桌面集成,则将在系统中创建一些文件。文件大小不过只有几Kb。删除AppImage文件时,这些桌面文件仍保留在系统中。我们可以保持原样或者手动删除它。
4.选择放置AppImage文件的位置
下载的AppImage文件应到达"下载"文件夹中。但是,随着时间的流逝,这可能不是最好的保存位置。最好将它们放在单独的目录中,以便于管理。
还要记住,如果选择桌面集成,然后将AppImage文件移动到其他位置,则必须先删除桌面文件。否则,桌面集成可能无法正常工作。
5.更新并非总是一种选择
也许某些软件会自动检查更新,并通知我们有较新版本的可用性。但这绝不会在大多数时间发生。
有一个命令行选项可以检查和更新软件,但这也取决于开发人员是否提供了此选项。
简而言之,这里没有自动更新。如果有可用的较新版本的软件,则必须自己找到。