概述
什么是snap,snap是一種全新的軟件包管理方式,它類似一個(gè)容器擁有一個(gè)應(yīng)用程序所有的文件和庫,各個(gè)應(yīng)用程序之間完全獨(dú)立。所以使用snap包的好處就是它解決了應(yīng)用程序之間的依賴問題,使應(yīng)用程序之間更容易管理。但是由此帶來的問題就是它占用更多的磁盤空間
Snap的安裝包擴(kuò)展名是.snap,類似于一個(gè)容器,它包含一個(gè)應(yīng)用程序需要用到的所有文件和庫(snap包包含一個(gè)私有的root文件系統(tǒng),里面包含了依賴的軟件包)。它們會(huì)被安裝到單獨(dú)的目錄;各個(gè)應(yīng)用程序之間相互隔離。使用snap有很多好處,首先它解決了軟件包的依賴問題;其次,也使應(yīng)用程序更容易管理。
現(xiàn)在支持snap的應(yīng)用并不多,snap軟件包一般安裝在/snap目錄下
一些常用的命令
其實(shí)使用snap包很簡單,下面我來介紹一下一些常用的命令
sudo snap list
列出已經(jīng)安裝的snap包
sudo snap find <text to search>
搜索要安裝的snap包
sudo snap install <snap name>
安裝一個(gè)snap包
sudo snap refresh <snap name>
更新一個(gè)snap包,如果你后面不加包的名字的話那就是更新所有的snap包
sudo snap revert <snap name>
把一個(gè)包還原到以前安裝的版本
sudo snap remove <snap name>
刪除一個(gè)snap包
簡單的使用
下面我就安裝一個(gè)編輯器來演示怎么安裝刪除一個(gè)軟件包
首先我想安裝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
沒錯(cuò)有,那么我們就來安裝
? ~ snap install hello-world
hello-world 6.3 from 'canonical' installed
下載可能會(huì)很慢,所以最好掛代理
接著我們看一下有沒有安裝好
? 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包來安裝
http://www.tjdsmy.cn/snaps
一個(gè)報(bào)錯(cuò)
因?yàn)榘惭bdouban-fm的時(shí)候時(shí)間太長了,我就終止了一下這個(gè)操作,之后再次安裝這個(gè)包的時(shí)候就報(bào)了一個(gè)錯(cuò)誤
error: cannot install "douban-fm": snap "core" has changes in progress
解決方式很簡單
首先查看一下正在進(jìn)行的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
沒錯(cuò)install douban-fm還在doing中,所以要終止這個(gè)進(jìn)程
? / 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
之后再次執(zhí)行安裝就好了
查詢最近做的操作
$ snap changes
關(guān)于snap更多信息,查看man手冊:
$ man snap
update:現(xiàn)在Snap可以在大多數(shù)Linux發(fā)行版上使用,極大的簡化了Linux軟件的安裝。