linux各发行版软件管理工具

2016-12-18 (2017-01-01更新)

Linux包管理工具简介

使用 Linux 系统总是免不了要接触包管理工具。比如

  • Debian/Ubuntu 的 apt
  • openSUSE 的 zypp
  • Fedora 的 yum
  • Mandriva 的 urpmi
  • Slackware 的 slackpkg
  • Archlinux 的 pacman
  • Gentoo 的 emerge
  • Foresight 的 conary
  • Pardus 的 pisi,等等

DistroWatch 针对上述包管理器的主要用法进行了总结,对各位 Linux 用户来说具有很好的参考作用。

对于我个人来说,主要关心apt、yum和pacman。

流行的桌面系统linux mint、ubuntu中使用apt。大名鼎鼎的服务器系统Redhat、CentOS使用yum。msys2默认集成了pacman哦。

本文中并没有提到rpm,dpkg等工具,并不是因为它们不常用,事实上rpm是yum的底层工具;dpkg是apt的底层工具。

主流Linux发行版的软件包管理对比速查表

任务apt
Debian, Ubuntu
zypp
openSUSE
yum
Fedora, CentOS
安装包apt-get install <pkg>zypper install <pkg>yum install <pkg>
移除包apt-get remove <pkg>zypper remove <pkg>yum erase <pkg>
更新包列表apt-get updatezypper refreshyum check-update
更新系统apt-get upgradezypper updateyum update
列出源cat /etc/apt/sources.listzypper reposyum repolist
添加源(edit /etc/apt/sources.list)zypper addrepo <path> <name>(add <repo> to /etc/yum.repos.d/)
移除源(edit /etc/apt/sources.list)zypper removerepo <name>(remove <repo> from /etc/yum.repos.d/)
搜索包apt-cache search <pkg>zypper search <pkg>yum search <pkg>
列出已安装的包dpkg -lrpm -qarpm -qa
任务urpmi
Mandriva
slackpkg
Slackware
pacman
Arch
安装包urpmi <pkg>slackpkg install <pkg>pacman -S <pkg>
移除包urpme <pkg>slackpkg remove <pkg>pacman -R <pkg>
更新包列表urpmi.update -aslackpkg updatepacman -Sy
更新系统urpmi –auto-selectslackpkg upgrade-allpacman -Su
列出源urpmq –list-mediacat /etc/slackpkg/mirrorscat /etc/pacman.conf
添加源urpmi.addmedia <name> <path>(edit /etc/slackpkg/mirrors)(edit /etc/pacman.conf)
移除源urpmi.removemedia <media>(edit /etc/slackpkg/mirrors)(edit /etc/pacman.conf)
搜索包urpmf <pkg>pacman -Qs <pkg>
列出已安装的包rpm -qals /var/log/packages/pacman -Qii
任务conary
rPath, Foresight
pisi
Pardus
emerge
Gentoo
安装包conary update <pkg>pisi install <pkg>emerge <pkg>
移除包conary erase <pkg>pisi remove <pkg>emerge -C <pkg>
更新包列表pisi update-repoemerge –sync | layman -S [for added repositories]
更新系统conary updateallpisi upgradeemerge -NuDa world
列出源pisi list-repolayman -L
添加源pisi add-repo <name> <path>layman -a
移除源pisi remove-repo <name>layman -d
搜索包conary query <pkg>pisi search <pkg>emerge –search
列出已安装的包conary querypisi list-installedcat /var/lib/portage | more
Fork me on GitHub