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

这个简短的教程解释了如何从命令行查找 Linux 中已安装存储库的列表。 与 GUI 模式相比,从 CLI 模式列出已安装的存储库不仅更容易,而且速度更快。 在这里,我给出了列出各种 Linux 发行版中已安装存储库的方法。

内容

  1. 1.在Linux中查找已安装的存储库列表
    1. 1.1. 列出已安装的存储库 Fedora, RHEL, AlmaLinux, Rocky Linux
    2. 1.2. 列出 Debian、Ubuntu 中已安装的存储库
    3. 1.3. 列出 SUSE/openSUSE 中已安装的存储库
    4. 1.4. 列出 Arch Linux、EndeavourOS、Manjaro Linux 中已安装的存储库
    5. 1.5. 列出 Alpine Linux 中已安装的存储库
  2. 2. 使用 inxi 实用程序列出 Linux 中已安装的存储库
    1. 结论

1.在Linux中查找已安装的存储库列表

我们可以使用发行版的默认包管理器或使用名为 inix 的第三方工具找到所有启用和配置的存储库的列表。

首先,我们将看到如何使用包管理器列出已安装或启用的存储库。

1.1. 列出已安装的存储库 Fedora, RHEL, AlmaLinux, Rocky Linux

查看基于 RPM 的系统中已安装存储库的列表,例如 Fedora、RHEL 及其克隆版(如 CentOS、AlmaLinux、Rocky Linux),运行以下命令:

$ dnf repolist

样本输出来自 Fedora 34:

repo id repo name
fedora Fedora 34 - x86_64
fedora-cisco-openh264 Fedora 34 openh264 (From Cisco) - x86_64
fedora-modular Fedora Modular 34 - x86_64
rpmfusion-free RPM Fusion for Fedora 34 - Free
rpmfusion-free-updates RPM Fusion for Fedora 34 - Free - Updates
rpmfusion-nonfree RPM Fusion for Fedora 34 - Nonfree
rpmfusion-nonfree-updates RPM Fusion for Fedora 34 - Nonfree - Updates
updates Fedora 34 - x86_64 - Updates
updates-modular Fedora Modular 34 - x86_64 - Updates
列出已安装的存储库 Fedora, RHEL

在较旧的 RHEL 版本中,您可以使用 yum 代替 dnf 获取已安装存储库的列表:

$ sudo yum repolist

CentOS 7 的示例输出:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.fibergrid.in
 * epel: ftp.cuhk.edu.hk
 * extras: mirror.fibergrid.in
 * updates: mirror.fibergrid.in
repo id repo name status
!base/7/x86_64 CentOS-7 - Base 9,363
!docker-main-repo Docker main Repository 110
!epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 11,722
!extras/7/x86_64 CentOS-7 - Extras 380
!updates/7/x86_64 CentOS-7 - Updates 1,838
repolist: 23,413

或者,使用以下命令:

$ sudo yum repolist all

CentOS 7 服务器版的输出:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.fibergrid.in
 * epel: ftp.cuhk.edu.hk
 * extras: mirror.fibergrid.in
 * updates: mirror.fibergrid.in
repo id repo name status
C7.0.1406-base/x86_64 CentOS-7.0.1406 - Base disabled
C7.0.1406-centosplus/x86_64 CentOS-7.0.1406 - CentOSPlus disabled
C7.0.1406-extras/x86_64 CentOS-7.0.1406 - Extras disabled
C7.0.1406-fasttrack/x86_64 CentOS-7.0.1406 - CentOSPlus disabled
C7.0.1406-updates/x86_64 CentOS-7.0.1406 - Updates disabled
C7.1.1503-base/x86_64 CentOS-7.1.1503 - Base disabled
C7.1.1503-centosplus/x86_64 CentOS-7.1.1503 - CentOSPlus disabled
C7.1.1503-extras/x86_64 CentOS-7.1.1503 - Extras disabled
C7.1.1503-fasttrack/x86_64 CentOS-7.1.1503 - CentOSPlus disabled
C7.1.1503-updates/x86_64 CentOS-7.1.1503 - Updates disabled
C7.2.1511-base/x86_64 CentOS-7.2.1511 - Base disabled
C7.2.1511-centosplus/x86_64 CentOS-7.2.1511 - CentOSPlus disabled
C7.2.1511-extras/x86_64 CentOS-7.2.1511 - Extras disabled
C7.2.1511-fasttrack/x86_64 CentOS-7.2.1511 - CentOSPlus disabled
C7.2.1511-updates/x86_64 CentOS-7.2.1511 - Updates disabled
!base/7/x86_64 CentOS-7 - Base enabled: 9,363
base-debuginfo/x86_64 CentOS-7 - Debuginfo disabled
base-source/7 CentOS-7 - Base Sources disabled
c7-media CentOS-7 - Media disabled
centosplus/7/x86_64 CentOS-7 - Plus disabled
centosplus-source/7 CentOS-7 - Plus Sources disabled
cr/7/x86_64 CentOS-7 - cr disabled
!docker-main-repo Docker main Repository enabled: 110
!epel/x86_64 Extra Packages for Enterprise Linu enabled: 11,722
epel-debuginfo/x86_64 Extra Packages for Enterprise Linu disabled
epel-source/x86_64 Extra Packages for Enterprise Linu disabled
epel-testing/x86_64 Extra Packages for Enterprise Linu disabled
epel-testing-debuginfo/x86_64 Extra Packages for Enterprise Linu disabled
epel-testing-source/x86_64 Extra Packages for Enterprise Linu disabled
!extras/7/x86_64 CentOS-7 - Extras enabled: 380
extras-source/7 CentOS-7 - Extras Sources disabled
fasttrack/7/x86_64 CentOS-7 - fasttrack disabled
!updates/7/x86_64 CentOS-7 - Updates enabled: 1,838
updates-source/7 CentOS-7 - Updates Sources disabled
repolist: 23,413

上面的命令将列出所有存储库,即启用和禁用的存储库。

要仅列出已启用的存储库,请运行以下命令:

$ dnf repolist enabled

或者,

$ yum repolist enabled

要仅列出禁用的存储库,请输入:

$ dnf repolist disabled

或者,

$ yum repolist disabled

1.2. 列出 Debian、Ubuntu 中已安装的存储库

运行以下命令以查看基于 DEB 的系统(如 Debian、Ubuntu、Linux Mint、Pop!_OS 等)中已安装软件包的列表。

$ sudo apt-cache policy

示例输出:

Package files:
 100 /var/lib/dpkg/status
 release a=now
 500 https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2/multiverse amd64 Packages
 release o=mongodb,a=trusty,n=trusty/mongodb-org,l=mongodb,c=multiverse,b=amd64
 origin repo.mongodb.org
 500 https://ppa.launchpad.net/linrunner/tlp/ubuntu xenial/main i386 Packages
 release v=16.04,o=LP-PPA-linrunner-tlp,a=xenial,n=xenial,l=TLP,c=main,b=i386
 origin ppa.launchpad.net
 500 https://ppa.launchpad.net/linrunner/tlp/ubuntu xenial/main amd64 Packages
 release v=16.04,o=LP-PPA-linrunner-tlp,a=xenial,n=xenial,l=TLP,c=main,b=amd64
 origin ppa.launchpad.net
 .
 .
 .
 .
 500 https://in.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
 release v=16.04,o=Ubuntu,a=xenial,n=xenial,l=Ubuntu,c=universe,b=amd64
 origin in.archive.ubuntu.com
 500 https://in.archive.ubuntu.com/ubuntu xenial/restricted i386 Packages
 release v=16.04,o=Ubuntu,a=xenial,n=xenial,l=Ubuntu,c=restricted,b=i386
 origin in.archive.ubuntu.com
 500 https://in.archive.ubuntu.com/ubuntu xenial/restricted amd64 Packages
 release v=16.04,o=Ubuntu,a=xenial,n=xenial,l=Ubuntu,c=restricted,b=amd64
 origin in.archive.ubuntu.com
 500 https://in.archive.ubuntu.com/ubuntu xenial/main i386 Packages
 release v=16.04,o=Ubuntu,a=xenial,n=xenial,l=Ubuntu,c=main,b=i386
 origin in.archive.ubuntu.com
 500 https://in.archive.ubuntu.com/ubuntu xenial/main amd64 Packages
 release v=16.04,o=Ubuntu,a=xenial,n=xenial,l=Ubuntu,c=main,b=amd64
 origin in.archive.ubuntu.com
Pinned packages:

或者,使用此命令在基于 DEB 的系统中查找已安装的存储库。

$ sudo grep -Erh ^deb /etc/apt/sources.list*

这是我的 Ubuntu 16.04 LTS 服务器的输出。

deb https://in.archive.ubuntu.com/ubuntu/ xenial main restricted
deb https://in.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
deb https://in.archive.ubuntu.com/ubuntu/ xenial universe
deb https://in.archive.ubuntu.com/ubuntu/ xenial-updates universe
deb https://in.archive.ubuntu.com/ubuntu/ xenial multiverse
deb https://in.archive.ubuntu.com/ubuntu/ xenial-updates multiverse
deb https://in.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
deb https://security.ubuntu.com/ubuntu xenial-security main restricted
deb https://security.ubuntu.com/ubuntu xenial-security universe
deb https://security.ubuntu.com/ubuntu xenial-security multiverse
deb https://archive.ubuntu.com/ubuntu xenial universe
deb https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse
deb https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse
deb https://ppa.launchpad.net/linrunner/tlp/ubuntu xenial main
deb https://ppa.launchpad.net/linrunner/tlp/ubuntu xenial main
deb https://in.archive.ubuntu.com/ubuntu/ xenial main restricted
deb https://in.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
deb https://in.archive.ubuntu.com/ubuntu/ xenial universe
deb https://in.archive.ubuntu.com/ubuntu/ xenial-updates universe
deb https://in.archive.ubuntu.com/ubuntu/ xenial multiverse
deb https://in.archive.ubuntu.com/ubuntu/ xenial-updates multiverse
deb https://in.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
deb https://security.ubuntu.com/ubuntu xenial-security main restricted
deb https://security.ubuntu.com/ubuntu xenial-security universe
deb https://security.ubuntu.com/ubuntu xenial-security multiverse

1.3. 列出 SUSE/openSUSE 中已安装的存储库

要查看 SUSE/openSUSE 中的存储库列表,请运行:

$ zypper lr

或者,

$ zypper repos

我的 openSUSE 桌面的示例输出:

[email protected]:~> zypper lr
# | Alias | Name | Enabled | GPG Check | Refresh
--+---------------------+------------------------------+---------+-----------+--------
1 | repo-non-oss | openSUSE-leap/42.1-Non-Oss | Yes | (r ) Yes | Yes 
2 | repo-oss | openSUSE-leap/42.1-Oss | Yes | (r ) Yes | Yes 
3 | repo-update | openSUSE-42.1-Update | Yes | (r ) Yes | Yes 
4 | repo-update-non-oss | openSUSE-42.1-Update-Non-Oss | Yes | (r ) Yes | Yes 
[email protected]:~> zypper repos
# | Alias | Name | Enabled | GPG Check | Refresh
--+---------------------+------------------------------+---------+-----------+--------
1 | repo-non-oss | openSUSE-leap/42.1-Non-Oss | Yes | (r ) Yes | Yes 
2 | repo-oss | openSUSE-leap/42.1-Oss | Yes | (r ) Yes | Yes 
3 | repo-update | openSUSE-42.1-Update | Yes | (r ) Yes | Yes 
4 | repo-update-non-oss | openSUSE-42.1-Update-Non-Oss | Yes | (r ) Yes | Ye

1.4. 列出 Arch Linux、EndeavourOS、Manjaro Linux 中已安装的存储库

据我所知, 吃豆子 没有任何直接命令来列出 Arch Linux 中已安装的存储库。 但是,我们可以使用用于同步官方存储库的命令来查找 Arch Linux 中已启用存储库的列表。

$ sudo pacman -Syy

示例输出:

:: Synchronizing package databases…
  core                  135.0 KiB   169 KiB/s 00:01 [######################] 100%
  extra                1562.7 KiB   505 KiB/s 00:03 [######################] 100%
  community               5.6 MiB   977 KiB/s 00:06 [######################] 100%

1.5. 列出 Alpine Linux 中已安装的存储库

在 Alpine Linux 中,所有存储库都配置在 /etc/apk/repositories 文件。 要查看配置的存储库,只需使用以下命令查看此文件的内容 cat 命令:

$ cat /etc/apk/repositories

示例输出:

https://sjc.edge.kernel.org/alpine/edge/main
https://sjc.edge.kernel.org/alpine/edge/community

2. 使用 inxi 实用程序列出 Linux 中已安装的存储库

显示存储库列表的另一种简单方法是使用 inxi 公用事业。 它适用于大多数支持 Inxi 的 Linux 操作系统。

Inxi 是一个免费的、开源的、功能齐全的命令行系统信息工具。 它显示了各种有用的系统详细信息,包括 CPU、驱动程序、Xorg、桌面、内核、GCC 版本、进程、RAM 使用情况等。 它目前支持以下包管理器。

  • APT(Debian、Ubuntu 和衍生产品)
  • PACMAN(Arch Linux 和衍生产品)
  • PISI(Pardus 和衍生品)
  • PORTAGE(Gentoo、Sabayon 和衍生产品)
  • PORTS(OpenBSD、FreeBSD、NetBSD 和衍生产品)
  • SLACKPKG(Slackware 及其衍生产品)
  • URPMQ(Mandriva、Mageia 和衍生产品)
  • 百胜/ZYPP (Fedora、Redhat、Suse 和衍生产品)

请参阅以下指南以了解有关 inxi 工具的更多信息。

  • 如何使用 inxi 查找系统详细信息

要使用 inxi 在 Linux 中列出已安装的存储库,请运行:

$ inxi -r

我的 Arch Linux 系统的示例输出:

Repos: 
 Active pacman repo servers in file: /etc/pacman.d/mirrorlist
 https://mirror.hactar.xyz/$repo/os/$arch
 https://archlinux.mirrors.uk2.net/$repo/os/$arch
 https://mirrors.dotsrc.org/archlinux/$repo/os/$arch
 https://ftp.acc.umu.se/mirror/archlinux/$repo/os/$arch
 https://fooo.biz/archlinux/$repo/os/$arch
 https://mirror.csclub.uwaterloo.ca/archlinux/$repo/os/$arch
 https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
 https://ftp.sh.cvut.cz/arch/$repo/os/$arch
 https://mirror.js-webcoding.de/pub/archlinux/$repo/os/$arch
 https://mirror.frgl.pw/archlinux/$repo/os/$arch
 https://mirror.internode.on.net/pub/archlinux/$repo/os/$arch
 https://ftp.myrveln.se/pub/linux/archlinux/$repo/os/$arch
 https://mirrors.uni-plovdiv.net/archlinux/$repo/os/$arch
 https://mirror.archlinux.no/$repo/os/$arch
 https://ftp.yzu.edu.tw/Linux/archlinux/$repo/os/$arch
 https://mirror.armbrust.me/archlinux/$repo/os/$arch
 https://mirror.tyborek.pl/arch/$repo/os/$arch
 https://mirror.f4st.host/archlinux/$repo/os/$arch
 https://ftp.nluug.nl/os/Linux/distr/archlinux/$repo/os/$arch
 https://mirror.neuf.no/archlinux/$repo/os/$arch
 Active pacman repo servers in file: /etc/pacman.conf
 https://repo.archlinux.fr/$arch

结论

在本指南中,我们讨论了从命令行列出 Linux 存储库的两种方法。 我们看到了如何使用包管理器和名为 inix 的外部工具在 Linux 中列出启用的存储库。

希望这可以帮助。

  • 如何在 Linux 中列出属于特定组的已安装软件包
  • 如何在 Linux 中查找已安装大小的已安装应用程序
  • 如何从 Linux 中的某个存储库中列出已安装的软件包

Apk包管理器APT命令行DNFF查找已安装存储库列表InxiLinuxLinux命令Linux howto包管理包管理器PacmanYUMZypper