ubuntu中snap包的安装、更新删除与简单使用

 更新时间:2017年11月16日 11:22:26   作者:bboysoul  
Ubuntu 16.04引入了snap包管理,它是一种全新的软件包安装管理方式。它和dpkg/apt有本质的区别。下面这篇文章就来给大家详细介绍了关于ubuntu中snap包的安装、更新删除与简单使用的相关资料,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。

概述

什么是snap,snap是一种全新的软件包管理方式,它类似一个容器拥有一个应用程序所有的文件和库,各个应用程序之间完全独立。所以使用snap包的好处就是它解决了应用程序之间的依赖问题,使应用程序之间更容易管理。但是由此带来的问题就是它占用更多的磁盘空间

Snap的安装包扩展名是.snap,类似于一个容器,它包含一个应用程序需要用到的所有文件和库(snap包包含一个私有的root文件系统,里面包含了依赖的软件包)。它们会被安装到单独的目录;各个应用程序之间相互隔离。使用snap有很多好处,首先它解决了软件包的依赖问题;其次,也使应用程序更容易管理。

现在支持snap的应用并不多,snap软件包一般安装在/snap目录下

一些常用的命令

其实使用snap包很简单,下面我来介绍一下一些常用的命令

sudo snap list

列出已经安装的snap包

sudo snap find <text to search>

搜索要安装的snap包

sudo snap install <snap name>

安装一个snap包

sudo snap refresh <snap name>

更新一个snap包,如果你后面不加包的名字的话那就是更新所有的snap包

sudo snap revert <snap name>

把一个包还原到以前安装的版本

sudo snap remove <snap name>

删除一个snap包

简单的使用

下面我就安装一个编辑器来演示怎么安装删除一个软件包

首先我想安装hello-world

那么先找一下有没有hello-world

➜ bin sudo snap search hello-world
Name    Version Developer Notes Summary
hello-world   6.3  canonical -  The 'hello-world' of snaps
hello-world-om26er 0.2  om26er  -  A great snap
hello-lhc   1.0  cprov  -  Hello world application for LHC

没错有,那么我们就来安装

➜ ~ snap install hello-world
hello-world 6.3 from 'canonical' installed

下载可能会很慢,所以最好挂代理

接着我们看一下有没有安装好

➜ bin snap list
Name   Version Rev Developer Notes
core   16-2.28.5 3247 canonical core
hello-world 6.3  27 canonical -

最后我们删除它

➜ ~ snap remove hello-world
hello-world removed

snap包的地址

如果你不知道可以下载什么snap包,你可以在下面的地址下载snap包来安装
https://uappexplorer.com/snaps

一个报错

因为安装douban-fm的时候时间太长了,我就终止了一下这个操作,之后再次安装这个包的时候就报了一个错误
error: cannot install "douban-fm": snap "core" has changes in progress

解决方式很简单

首先查看一下正在进行的change

➜ / snap changes
ID Status Spawn     Ready     Summary
2 Done 2017-11-15T02:33:51Z 2017-11-15T02:33:51Z Refresh all snaps: no updates
3 Error 2017-11-15T03:20:07Z 2017-11-15T03:20:23Z Install "douban-fm" snap
4 Done 2017-11-15T03:20:07Z 2017-11-15T03:20:10Z Initialize device
5 Error 2017-11-15T03:20:38Z 2017-11-15T03:34:21Z Install "douban-fm" snap
6 Doing 2017-11-15T03:34:27Z -      Install "douban-fm" snap

没错install douban-fm还在doing中,所以要终止这个进程

➜ / sudo snap abort 6
➜ / snap changes
ID Status Spawn     Ready     Summary
2 Done 2017-11-15T02:33:51Z 2017-11-15T02:33:51Z Refresh all snaps: no updates
3 Error 2017-11-15T03:20:07Z 2017-11-15T03:20:23Z Install "douban-fm" snap
4 Done 2017-11-15T03:20:07Z 2017-11-15T03:20:10Z Initialize device
5 Error 2017-11-15T03:20:38Z 2017-11-15T03:34:21Z Install "douban-fm" snap
6 Error 2017-11-15T03:34:27Z 2017-11-15T03:40:51Z Install "douban-fm" snap

之后再次执行安装就好了

查询最近做的操作

$ snap changes

关于snap更多信息,查看man手册:

$ man snap

update:现在Snap可以在大多数Linux发行版上使用,极大的简化了Linux软件的安装。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • centos7下搭建ZooKeeper3.4中间件常用命令小结

    centos7下搭建ZooKeeper3.4中间件常用命令小结

    Zookeeper 作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储。这篇文章主要介绍了centos7下搭建ZooKeeper3.4中间件常用命令小结,需要的朋友可以参考下
    2019-07-07
  • 如何在 Linux 中查找一个命令或进程的执行时间

    如何在 Linux 中查找一个命令或进程的执行时间

    在类 Unix 系统中,你可能知道一个命令或进程开始执行的时间,以及一个进程运行了多久。 但是,你如何知道这个命令或进程何时结束或者它完成运行所花费的总时长呢?下面小编给大家带来了在 Linux 中查找一个命令或进程的执行时间,一起看看吧
    2018-11-11
  • CentOS 7.2.1511 编译安装Nginx1.10.1+MySQL5.7.14+PHP7.0.11

    CentOS 7.2.1511 编译安装Nginx1.10.1+MySQL5.7.14+PHP7.0.11

    这篇文章主要介绍了CentOS 7.2.1511 编译安装Nginx1.10.1+MySQL5.7.14+PHP7.0.11,需要的朋友可以参考下
    2016-10-10
  • linux usb摄像头设备信息查看方式

    linux usb摄像头设备信息查看方式

    这篇文章主要介绍了linux usb摄像头设备信息查看方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • linux下pip的安装步骤及使用详解

    linux下pip的安装步骤及使用详解

    pip类似RedHat里面的yum,安装软件非常方便,下面这篇文章主要给大家介绍了关于在linux系统下pip的安装步骤及使用的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • 动态在线扩容root根分区大小的方法详解

    动态在线扩容root根分区大小的方法详解

    这篇文章主要给大家介绍了关于如何动态在线扩容root根分区大小的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-05-05
  • linux如何为已存在的用户创建home目录

    linux如何为已存在的用户创建home目录

    这篇文章主要介绍了linux如何为已存在的用户创建home目录问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • 在Apache服务器上安装SSL支持的教程

    在Apache服务器上安装SSL支持的教程

    这篇文章主要介绍了在Apache服务器上安装SSL支持的教程,SSL协议是目前运用最广泛的加密协议,本文演示环境基于Ubuntu,需要的朋友可以参考下
    2015-06-06
  • Apache中解决动态地址跳转死循环的方法

    Apache中解决动态地址跳转死循环的方法

    这篇文章主要介绍了Apache中解决动态地址跳转死循环的方法,另外作者还提出了尽量使用伪静态的建议,需要的朋友可以参考下
    2015-07-07
  • Linux下大量SYN_SENT连接问题的解决方法

    Linux下大量SYN_SENT连接问题的解决方法

    这篇文章主要介绍了Linux下大量SYN_SENT连接问题的解决方法,需要的朋友可以参考下
    2015-01-01

最新评论