如何从 CentOS 的特定存储库中删除已安装的软件包, Fedora

这是我们上一篇文章的续集,标题为 “如何从特定存储库安装软件包”. 正如标题所说,本指南描述了如何从 Linux 操作系统的命令行中从特定存储库中删除已安装的软件包。 在 GUI 模式下,我们可以通过几次鼠标点击来做到这一点。 因为我最喜欢 CLI 模式,所以我只给出了 CLI 模式的说明。 继续阅读。

从特定存储库中删除已安装的软件包

在 RHEL、CentOS、Scientific Linux 上:

在基于 YUM 的系统(如 Red Hat 及其克隆如 CentOS 和 Scientific Linux)中,我们可以以 root 用户身份使用命令从特定存储库中删除已安装的软件包:

$ yum remove $(yum list installed | grep epel | awk '{ print $1 }')

样本输出:

Loaded plugins: fastestmirror Resolving Dependencies --> Running transaction check ---> Package dnf.noarch 0:0.6.4-2.el7 will be erased ---> Package dnf-conf.noarch 0:0.6.4-2.el7 will be erased ---> Package dnf-plugins-core.noarch 0:0.1.5-3.el7 will be erased ---> Package epel-release.noarch 0:7-9 will be erased ---> Package libcomps.x86_64 0:0.1.6-13.el7 will be erased ---> Package python-dnf.noarch 0:0.6.4-2.el7 will be erased ---> Package python-libcomps.x86_64 0:0.1.6-13.el7 will be erased --> Finished Dependency Resolution  Dependencies Resolved  ==========================================================================================  Package Arch Version Repository Size ========================================================================================== Removing:  dnf noarch 0.6.4-2.el7 @epel 652 k  dnf-conf noarch 0.6.4-2.el7 @epel 29 k  dnf-plugins-core noarch 0.1.5-3.el7 @epel 167 k  epel-release noarch 7-9 @epel 24 k  libcomps x86_64 0.1.6-13.el7 @epel 202 k  python-dnf noarch 0.6.4-2.el7 @epel 1.8 M  python-libcomps x86_64 0.1.6-13.el7 @epel 140 k  Transaction Summary ========================================================================================== Remove 7 Packages  Installed size: 3.0 M Is this ok [y/N]:

上述命令将从 EPEL 存储库中删除所有已安装的软件包以及所有依赖项。 而且,它将删除 EPEL 存储库本身。

如果您只想删除软件包而不是依赖项,请以 root 用户身份输入以下命令:

$ rpm -e --nodeps `yum list installed | grep epel | awk '{ print $1 }'`

请注意,上述命令在删除软件包时不会要求任何确认。

在 Fedora:

在 Fedora,您可以使用以下命令从特定存储库中卸载所有包 用户:

# dnf repository-packages <repo-id> remove

例子:

# dnf repository-packages zyga-snapcore remove

样本输出:

Last metadata expiration check: 0:05:43 ago on Fri Jun 23 15:37:20 2017. Dependencies resolved. ==========================================================================================  Package Arch Version Repository Size ========================================================================================== Removing:  lz4 i686 r131-1.fc23 @fedora 322 k  snap-confine i686 1.0.40-1.fc23 @updates 80 k  snapd i686 2.14-1.fc23 @zyga-snapcore 17 M  squashfs-tools i686 4.3-11.fc23 @fedora 405 k  Transaction Summary ========================================================================================== Remove 4 Packages  Installed size: 18 M Is this ok [y/N]:

这里, zyga-snapcore 是 zyga 拥有的 snapcore 的 Copr 存储库的 repo id。

上面的命令也将删除从其他存储库安装的依赖项。 如果您只想删除包而不是依赖项,只需运行:

$ sudo rpm -e --nodeps `dnf list installed | grep zyga-snapcore | awk '{ print $1 }'`

要找出存储库 ID,请运行:

$ dnf repolist

样本输出 Fedora 系统:

Last metadata expiration check: 0:07:39 ago on Fri Jun 23 15:37:20 2017. repo id repo name status *fedora Fedora 23 - i386 38,811 *updates Fedora 23 - i386 - Updates 18,174 zyga-snapcore Copr repo for snapcore owned by zyga 11

阅读以下指南以找出各种 Linux 发行版中的存储库 ID。

  • 如何在 Linux 中从命令行查找已安装存储库的列表

就这样。 希望这很有用。

感谢您的光临!

帮助我们帮助您:

  • 订阅我们的电子邮件通讯: 立即注册
  • 支持 OSTechNix: 通过贝宝捐款
  • 下载免费的电子书和视频: TradePub 上的 OSTechNix
  • 联系我们: 红迪网 | Facebook | 推特 | 领英 | RSS订阅

祝你有美好的一天!!

CentOSFedoraLinux包管理Remove Installed Packages From A specific RepositoryRemove packagesRHELRPMScientific LinuxYUM