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