Ubuntu Snap 简述

举报
云物互联 发表于 2021/08/07 00:55:15 2021/08/07
【摘要】 Ubuntu Snaps Ubuntu Snaps 是 Ubuntu 的母公司 Canonical 于 2016 年 4 月发布 Ubuntu16.04 LTS(LongTermSupport,长期支持版)时引入的一种容器化的软件包格式。自 Ubuntu16.04 LTS 起,Ubuntu 操作系统可以同时支持 Snap 及 Debian 这两种格式的安装包。 与传...

Ubuntu Snaps

Ubuntu Snaps 是 Ubuntu 的母公司 Canonical 于 2016 年 4 月发布 Ubuntu16.04 LTS(LongTermSupport,长期支持版)时引入的一种容器化的软件包格式。自 Ubuntu16.04 LTS 起,Ubuntu 操作系统可以同时支持 Snap 及 Debian 这两种格式的安装包。

与传统的 dpkg/apt 有着很大的区别。Ubuntu Snaps 可以让开发者将他们的软件更新包随时发布给用户,而不必等待 Ubuntu 自身的发行版更新周期。其次 Snap 应用可以同时安装多个版本的软件而不会互相干扰,一个 Snap 应用的安装包拥有所有依赖的文件和库,各个 Snap 应用之间完全独立。比如同时安装 Python2.7 和 Python3.3 而不会造成冲突,这就是所谓的容器化软件包格式。由此带来的问题就是 Snap 应用会占用更多的磁盘空间。

snapd 是 Snaps 软件包的管理用具,指令为 snap。Snapcraft 是开发人员将其程序打包为 Snap 格式的工具,可以从 GitHub 仓库自动构建,指令为 snapcraft

REFS

  • https://snapcraft.io/
  • https://tutorials.ubuntu.com/tutorial/basic-snap-usage#0
  • https://tutorials.ubuntu.com/tutorial/advanced-snap-usage#0

Snaps 工具使用示例

安装 Snaps 支持

sudo apt update  
sudo apt install snapd 
sudo apt install snapcraft  

  
 
  • 1
  • 2
  • 3

登录:使用 Ubuntu One 账户

snap login your@email.lol

  
 
  • 1

从 SnapStore 寻找发布在商店里的 Snap 应用

sudo snap find
sudo snap find | grep  $SNAP_NAME

  
 
  • 1
  • 2

安装一个 Snap 应用

sudo snap install $SNAP_NAME

  
 
  • 1

卸载一个 Snap 应用

sudo snap remove $SNAP_NAME

  
 
  • 1

查看一个 Snap 的详细信息

snap info $SNAP_NAME

  
 
  • 1

显示已安装的 Snap 应用列表

sudo snap list

  
 
  • 1

更新一个已安装的 Snap 应用

sudo snap refresh $SNAP_NAME

  
 
  • 1

还原 Snap 应用到以前安装的版本

sudo snap revert $SNAP_NAME

  
 
  • 1

编译一个 Snap 应用

编译一个 Snap 应用:如果你开发或拥有了一个 Snap 项目,那么你只需要执行以下指令就会得到一个扩展名为 .snap 的文件,这个就是我们所需要的 Snap 应用安装文件。

$ cd <your_poject_dict>
$ snapcraft

  
 
  • 1
  • 2

snapcraft 打包的过程中,它经历如下的几个阶段:

  1. pull: Download or retrieve artifacts defined for a part.
  2. build: Build artifacts defined for a part. Build systems capable of running parallel build jobs will do so unless “–no-parallel-build” is specified.
  3. stage: Stage the part’s built artifacts into the common staging area.
  4. prime: Final copy and preparation for the snap.
  5. snap: Create a snap.

清除一个 Snap 应用在编译过程中的文件

napcraft clean

  
 
  • 1

文章来源: is-cloud.blog.csdn.net,作者:范桂飓,版权归原作者所有,如需转载,请联系作者。

原文链接:is-cloud.blog.csdn.net/article/details/103476281

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。