snap安装和管理软件包,snap vs apt
笔者用了十年的ubuntu,很喜欢用apt-get来安装软件。apt所采用的包是deb包,deb包最初是Debian Linux推出的,由于ubuntu基于debian,ubuntu将其集成到了apt包管理器中,apt可以自动解决软件之间依赖问题,对于当时的Linux软件市场来说,是一个巨大的进步,ubuntu还造了一个类似apple store的软件商店出来,以提供UI支持。
以前习惯在ubuntu上配置好apt的国内源后,就可以使用apt-get轻松的安装软件了。
但是,随着软件包管理技术的进步和更新,随着计算机存储的提升,又随着开发者和用户对安全的重视提升,虚拟化和沙盒的概念逐渐兴起,虽然几年前ubuntu用apt代替了apt-get,ubuntu的母公司Canonical又整出了一个snap,我认为其理念和技术在很多方面都优于apt。而apt和apt-get只是换了个名字,但是snap是使用了沙盒,或者说容器的技术,是很大的进步。
总觉得在抄袭docker的思想,docker又是从虚拟化技术来的。
deb
- Apt中找不到的软件需要PPA安装
- 对与.deb后缀的包,双击可安装,dpkg安装
- deb 不是特别安全,安装授权后可以访问系统任何位置
- 多个软件可共享一个类库
- 仅支持deb系的Linux
常用命令
更新源
sudo apt udpate
更新已经安装的软件
sudo apt upgrade
安装软件
sudo apt install firefox
移除软件
sudo apt remove firefox
# 删除并清除配置文件
sudo apt --purge remove firefox
清理安装包
sudo apt autoclean
#清理所有安装包
sudo apt clean
搜索软件
apt search firefox
列出已安装的
apt list --installed
卸载多余依赖
sudo apt autoremove
snap
什么是snap?引用下面这段话:
是Canonical公司发布的全新的软件包管理方式,它类似一个容器拥有一个应用程序所有的文件和库,各个应用程序之间完全独立。所以使用snap包的好处就是它解决了应用程序之间的依赖问题,使应用程序之间更容易管理。但是由此带来的问题就是它占用更多的磁盘空间。
说白了snap是个新的包管理工具,他使用了容器的概念,他源自ubuntu母公司,但不止支持ubuntu,支持更多的Linux发行版。
snap最大的特点就是使用了容器来管理软件,容器带来最大的好处就是,
- 软件运行更加安全
- 独立和更加易控的版本
- 软件互不干预
snap的特点是
- 易于打包软件和发行
- 自动升级,你安装的软件永远都是最新的
- 支持大量的Linux发行版
- 易于版本回滚和改变.
- 容易构建软件项目
- 同时支持开源和闭源软件发行.
- Snaps更加安全
以下发行版均已支持snap
snap安装软件
sudo snap install firefox
列出安装的软件
snap list
搜索软件
snap find
更新软件
sudo snap refresh firefox
# 更新全部
sudo snap refresh all
卸载软件
snap remove firefox