软件包管理系统
软件包管理系统是在电脑中自动安装、配制、卸载和升级软件包的工具组合,在各种系统软件和应用软件的安装管理中均有广泛应用。
在Linux发行版中,几乎每一个发行版都有自己的软件包管理系统。常见的有:
- RPM套件管理員以及它的前端dnf(使用于Fedora、Red Hat Enterprise Linux 8、CentOS 8)、前端yum(使用于Red Hat Enterprise Linux、CentOS)、前端ZYpp(使用于openSUSE)、前端urpmi(使用于Mandriva Linux、Mageia)等。
使用软件包管理系统将大大简化在Linux发行版中安装软件的过程。
dpkg软件包管理系统
dpkg是Debian Package的簡寫,由Debian发行版开发,用於安裝、卸載和供給和deb軟體包相關的信息。
使用dpkg的发行版
使用dpkg的发行版主要是Debian以及它的衍生版如Ubuntu、Linux Mint等。
RPM软件包管理系统
RPM,全称为Redhat Package Manager,是由Red Hat推出的软件包管理系统,现在在各种发行版中普遍使用。
命令列表
操作 | zypper[1] | pacman | apt | dnf (yum) | swupd[2] | portage | Nix | Homebrew | WinGet |
---|---|---|---|---|---|---|---|---|---|
安装软件 | zypper install ${PKG} |
pacman -S ${PKG} |
apt install ${PKG} |
dnf install ${PKG} |
swupd bundle-add ${PKG} |
emerge ${PKG} |
nix-env -i ${PKG} |
brew install ${PKG} |
winget install %PKG% |
移除软件 | zypper remove ${PKG} |
pacman -R ${PKG} |
apt remove ${PKG} |
dnf remove --nodeps ${PKG} |
swupd bundle-remove ${PKG} |
emerge -C ${PKG} 或者 emerge --unmerge ${PKG} |
nix-env -e ${PKG} |
brew rm ${PKG} ( rm 是 remove 或者 uninstall 的简写) |
winget uninstall %PKG% |
移除软件(包含其不再使用的依赖) | zypper rm -u --force-resolution ${PKG} |
pacman -Rs ${PKG} |
apt autoremove ${PKG} |
dnf remove ${PKG} |
swupd bundle-remove ${PKG} && \
swupd bundle-remove --orphans
|
emerge -c ${PKG} 或者 emerge --depclean ${PKG} |
nix-env -e ${PKG} && nix-env -u |
brew rm ${PKG} && \
brew autoremove
|
winget uninstall %PKG% |
更新本地软件源数据库 | zypper ref |
pacman -Sy |
apt update |
dnf check-update |
swupd update --download 或者 swupd update --update-search-file-index |
emerge --sync |
nix-channel --upgrade |
brew update |
winget list > NUL |
显示可更新软件 | zypper lu |
pacman -Qu |
apt list --upgradable |
dnf check-update |
swupd update -s 或者 swupd check-update |
emerge -avtuDN --with-bdeps<nowiki>=</nowiki>y @world or emerge -u --pretend @world ( -D 是--deep 的简写 ,-u 是--update 的简写。) |
nix-channel --upgrade && \
nix-env -u && \
nix-collect-garbage
|
brew outdated |
winget upgrade |
删除所有不再使用的依赖和配置文件 | zypper rm -u |
pacman -Rsn $(pacman -Qdtq) |
apt autopurge |
dnf erase ${PKG} |
swupd bundle-remove --orphans && \
swupd clean --all
|
emerge --depclean |
nix-collect-garbage -d |
brew unlink ${PKG} && brew clean |
不適用 |
显示所有不再使用的依赖 | zypper pa --orphaned --unneeded |
pacman -Qdt |
apt autoremove --assume-no |
package-cleanup -q --leaves --exclude-bin ( -q 是 --quiet 的简写。) |
swupd bundle-list --orphans |
emerge -caD 或者 emerge --depclean --pretend |
不適用 | 不適用 | 不適用 |
更新所有软件 | zypper up |
pacman -Syu |
apt upgrade |
dnf update |
swupd update |
emerge -u -D --with-bdeps<nowiki>=</nowiki>y @world |
nix-env -u && nix-collect-garbage |
brew upgrade |
winget upgrade --all |
参考文献
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.