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

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

1.在Linux中找到已安装的仓库列表

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

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

1.1。 列出已安装的存储库 Fedora, RHELAlmaLinux, 洛基 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
列出已安装的存储库 FedoraRHEL

在旧 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 的 Linux 操作系统。

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

  • APT(Debian、Ubuntu 和衍生产品)
  • PACMAN(Arch Linux 及其衍生产品)
  • PISI(帕杜斯及其衍生品)
  • 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 中启用的存储库。

希望这可以帮助。