如何在Ubuntu 16.10上安装和管理Snap软件包

时间:2020-03-05 15:32:30  来源:igfitidea点击:

先进的包装工具(以apt的缩写而闻名)已在Debian及其衍生产品中使用了近二十年。
同样,在基于Red Hat的系统上,RPM的使用时间甚至更长。
为了解决此打包系统的缺点,各个小组和都创建了AppImage,FlatPak和Snap。
这些包装系统不会与apt,rpm或者其他系统冲突,而是通过补充和破坏它们来解决APT和RPM的问题。
在本文中,我们将展示如何在刚刚发布的新Ubuntu 16.10上使用Snap软件包。

为什么创建快照

Canoncal创建了快照,以修复Deb程序包和管理它们的高级打包工具的不足。
例如,APT系统在设计时考虑了可重用性。
库不是与程序打包在一起,而是它们是程序所依赖的独立包。
这意味着可以在多个不同的程序中使用相同的库,从而节省了磁盘空间。
但是,如果两个不同的程序使用不同的库版本,这也意味着出现问题。
在这种情况下,发行商会坚持使用较旧的版本库和两个程序的较旧版本,直到有机会一次全部更新。
这导致程序的版本过时。
为了解决这个问题,Canoncal制造了Snap,Red Hat制造了FlatPak,还有AppImage,我们可能会在我们的Etcher文章中记起。

它们都有一个共同点,即它们作为包含所有需要的库的自包含软件包提供,因此我们始终可以拥有新版本的应用程序。

登录到Ubuntu One

默认情况下,Snap在Ubuntu 16.10 Yaketty Yak中已安装并启用,我们只需要使用它即可。
第一步(也是可选的)是通过终端登录到Ubuntu One帐户。

sudo snap login [email protected]

这实际上不是必需的,我们也可以在没有Ubuntu One帐户的情况下继续进行,但是我们将无法购买付费应用程序。
目前尚无定论,因为目前还没有任何讨论,但是如果我们在几个月后阅读此文章,这些文章肯定会出现,因此拥有一个Ubuntu帐户很有用。

列出所有可用的快照包

接下来,我们将列出所有可用的快照软件包,以便我们知道可以安装什么。
搜索是通过snap find命令完成的,我们正在搜索所有内容,因此我们输入:

snap find all

目前还没有太多的软件包,因为快照仍处于早期阶段,但是我在16.04周期中尝试快照的数量已经超过了上次。

搜索特定的软件包

我们将安装一个名为explode-bricks的简单积木游戏。
因此,对于搜索此快照包,我们将仅搜索关键字explode。

snap find explode

安装套件

要安装软件包,我们将在命令前使用sudo。
语法很简单,我们可以使用sudo snap install后跟软件包名称。
在这种情况下:

sudo snap install explode-bricks
explode-bricks (stable) 1.1 from '1bsyl' installed

该程序似乎未在菜单中放置图形图标,因此我们可以通过在终端中键入explode-bricks.1bsyl来运行它。
大多数程序都有图标,我们可以输入搜索镜头并单击开始。
让我们看一下爆炸砖的外观。

看起来不多,但是测试快照还是不错的。

安装多个软件包

与apt一样,我们可以将oneliner与多个软件包名称一起使用来安装多个软件包。
让我们安装两个软件包以查看其工作方式

sudo snap install wireless-tools sensors-unity

更新快照

如果要更新快照,我们使用的命令是刷新而不是更新。
因此,要更新所有已安装的快照,请键入

sudo snap refresh

当我们刚刚安装它们时,它们都是最新的是正常的。
如果我们只想更新一个快照,则命令如下所示:

sudo snap refresh explode-bricks
error: cannot refresh "explode-bricks": snap "explode-bricks" has no updates available

输出错误,因为快照是最新的。

列出已安装的快照

如果要查看已安装的所有快照,则可以键入

snap list

查看对Snap软件包的所有更改

要查看所有快照包的所有最新更改,以下命令将起作用

snap changes

它将列出所有快照程序包的所有刷新,安装和删除。

删除snap包

删除快照包就像添加它们一样容易。
要删除爆炸砖,只需键入

sudo snap remove explode-bricks

在开发人员模式下安装Beta版快照

如果要开发和测试应用程序,可使用snap在开发人员模式下安装应用程序,在这种情况下,应用程序不会像已发布的生产应用程序那样受到安全限制。
这可能会有风险,因为该应用程序将以与deb package相同的方式访问系统。
但是,如果我们信任开发人员做出明智的选择,则可以以最小的风险使用此功能。
让我们安装一些测试版快照:

miki@miki-X550JK:~$sudo snap install filebot --beta --devmode
filebot (beta) 4.7.2 from 'pointplanck' installed