如何列出在 Linux 上已啟用/激活的倉庫
有很多方法可以列出在 Linux 已啟用的倉庫。我們將在下面展示給你列出已激活倉庫的簡便方法。這有助於你知曉你的系統上都啟用了哪些倉庫。一旦你掌握了這些信息,你就可以添加任何之前還沒有準備啟用的倉庫了。
舉個例子,如果你想啟用 epel 倉庫,你需要先檢查它是否已經啟用了。這篇教程將會幫助你做這件事情。
什麼是倉庫?
存儲特定程序軟體包的中樞位置就是一個軟體倉庫。
所有的 Linux 發行版都在維護自己的倉庫,而且允許用戶下載並安裝這些軟體包到他們的機器上。
每個倉庫提供者都提供了一套包管理工具,用以管理他們的倉庫,比如搜索、安裝、更新、升級、移除等等。
大多數 Linux 發行版都作為免費軟體,除了 RHEL 和 SUSE,要訪問他們的倉庫你需要先購買訂閱。
建議閱讀:
- 在 Linux 上,如何通過 DNF/YUM 設置管理命令添加、啟用、關閉一個倉庫
- 在 Linux 上如何按大小列出已安裝的包
- 在 Linux 上如何列出升級的包
- 在 Linux 上如何查看一個特定包安裝/升級/更新/移除/清除的日期
- 在 Linux 上如何查看一個包的詳細信息
- 在你的 Linux 發行版上如何查看一個包是否可用
- 在 Linux 如何列出可用的軟體包組
- Newbies corner —— 一個圖形化的 Linux 包管理的前端工具
- Linux 專家須知,命令行包管理 & 使用列表
在 RHEL/CentOS 上列出已啟用的庫
RHEL 和 CentOS 系統使用的是 RPM 包管理,所以我們可以使用 Yum 包管理器查看這些信息。
YUM 意即 「Yellowdog Updater,Modified」,它是一個開源的包管理器的命令行前端,用於基於 RPM 的系統上,例如 RHEL 和 CentOS。
YUM 是獲取、安裝、刪除、查詢和管理來自發行版倉庫和其他第三方庫的 RPM 包的主要工具。
建議閱讀: 在 RHEL/CentOS 系統上用 YUM 命令管理包
基於 RHEL 的系統主要提供以下三個主要的倉庫。這些倉庫是默認啟用的。
- base:它包含了所有的核心包和基礎包。
- extras:它向 CentOS 提供了不破壞上游兼容性或更新基本組件的額外功能。這是一個上游倉庫,還有額外的 CentOS 包。
- updates:它提供了 bug 修復包、安全包和增強包。
# yum repolist
或者
# yum repolist enabled
Loaded plugins: fastestmirror
Determining fastest mirrors
* epel: ewr.edge.kernel.org
repo id repo name status
!base/7/x86_64 CentOS-7 - Base 9,911
!epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 12,687
!extras/7/x86_64 CentOS-7 - Extras 403
!updates/7/x86_64 CentOS-7 - Updates 1,348
repolist: 24,349
如何列出 Fedora 上已啟用的包
DNF 意即 「Dandified yum」。我們可以說 DNF 是下一代的 yum 包管理器,使用了 hawkey/libsolv 作為後端。自從 Fedroa 18 開始,Aleš Kozumplík 就開始開發 DNF,最終在 Fedora 22 上實現/發布。
Fedora 22 及之後的系統上都使用 DNF 安裝、升級、搜索和移除包。它可以自動解決依賴問題,並使包的安裝過程平順沒有任何麻煩。
因為 Yum 許多長時間未解決的問題,現在 Yum 已經被 DNF 所替代。你問為什麼他沒有給 Yum 打補丁。Aleš Kozumplík 解釋說修補在技術上太困難了,而 YUM 團隊無法立即承受這些變更,還有其他的問題,YUM 是 56k 行代碼,而 DNF 是 29k 行代碼。因此,除了分叉之外,別無選擇。
建議閱讀: 在 Fedora 上使用 DNF 管理軟體
Fedora 主要提供下面兩個主倉庫。這些庫將被默認啟用。
- fedora:它包括所有的核心包和基礎包。
- updates:它提供了來自穩定發行版的 bug 修復包、安全包和增強包。
# dnf repolist
或者
# dnf repolist enabled
Last metadata expiration check: 0:02:56 ago on Wed 10 Oct 2018 06:12:22 PM IST.
repo id repo name status
docker-ce-stable Docker CE Stable - x86_64 6
*fedora Fedora 26 - x86_64 53,912
home_mhogomchungu mhogomchungu's Home Project (Fedora_25) 19
home_moritzmolch_gencfsm Gnome Encfs Manager (Fedora_25) 5
mystro256-gnome-redshift Copr repo for gnome-redshift owned by mystro256 6
nodesource Node.js Packages for Fedora Linux 26 - x86_64 83
rabiny-albert Copr repo for albert owned by rabiny 3
*rpmfusion-free RPM Fusion for Fedora 26 - Free 536
*rpmfusion-free-updates RPM Fusion for Fedora 26 - Free - Updates 278
*rpmfusion-nonfree RPM Fusion for Fedora 26 - Nonfree 202
*rpmfusion-nonfree-updates RPM Fusion for Fedora 26 - Nonfree - Updates 95
*updates Fedora 26 - x86_64 - Updates
如何列出 Debian/Ubuntu 上已啟用的倉庫
基於 Debian 的系統使用的是 APT/APT-GET 包管理,因此我們可以使用 APT/APT-GET 包管理器去獲取該信息。
APT 意即 「Advanced Packaging Tool」,它取代了 apt-get
,就像 DNF 取代 Yum 一樣。 它具有豐富的命令行工具,在一個命令(apt
)中包含了所有功能,如 apt-cache
、apt-search
、dpkg
、apt-cdrom
、apt-config
、apt-key
等,還有其他幾個獨特的功能。 例如,我們可以通過 APT 輕鬆安裝 .dpkg 軟體包,而我們無法通過 APT-GET 獲得和包含在 APT 命令中類似的功能。 由於 APT-GET 中未能解決的問題,APT 取代了 APT-GET。
apt-get 是一個強大的命令行工具,它用以自動下載和安裝新的軟體包、升級已存在的軟體包、更新包索引列表、還有升級整個基於 Debian 的系統。
# apt-cache policy
Package files:
100 /var/lib/dpkg/status
release a=now
500 http://ppa.launchpad.net/peek-developers/stable/ubuntu artful/main amd64 Packages
release v=17.10,o=LP-PPA-peek-developers-stable,a=artful,n=artful,l=Peek stable releases,c=main,b=amd64
origin ppa.launchpad.net
500 http://ppa.launchpad.net/notepadqq-team/notepadqq/ubuntu artful/main amd64 Packages
release v=17.10,o=LP-PPA-notepadqq-team-notepadqq,a=artful,n=artful,l=Notepadqq,c=main,b=amd64
origin ppa.launchpad.net
500 http://dl.google.com/linux/chrome/deb stable/main amd64 Packages
release v=1.0,o=Google, Inc.,a=stable,n=stable,l=Google,c=main,b=amd64
origin dl.google.com
500 https://download.docker.com/linux/ubuntu artful/stable amd64 Packages
release o=Docker,a=artful,l=Docker CE,c=stable,b=amd64
origin download.docker.com
500 http://security.ubuntu.com/ubuntu artful-security/multiverse amd64 Packages
release v=17.10,o=Ubuntu,a=artful-security,n=artful,l=Ubuntu,c=multiverse,b=amd64
origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu artful-security/universe amd64 Packages
release v=17.10,o=Ubuntu,a=artful-security,n=artful,l=Ubuntu,c=universe,b=amd64
origin security.ubuntu.com
500 http://security.ubuntu.com/ubuntu artful-security/restricted i386 Packages
release v=17.10,o=Ubuntu,a=artful-security,n=artful,l=Ubuntu,c=restricted,b=i386
origin security.ubuntu.com
.
.
origin in.archive.ubuntu.com
500 http://in.archive.ubuntu.com/ubuntu artful/restricted amd64 Packages
release v=17.10,o=Ubuntu,a=artful,n=artful,l=Ubuntu,c=restricted,b=amd64
origin in.archive.ubuntu.com
500 http://in.archive.ubuntu.com/ubuntu artful/main i386 Packages
release v=17.10,o=Ubuntu,a=artful,n=artful,l=Ubuntu,c=main,b=i386
origin in.archive.ubuntu.com
500 http://in.archive.ubuntu.com/ubuntu artful/main amd64 Packages
release v=17.10,o=Ubuntu,a=artful,n=artful,l=Ubuntu,c=main,b=amd64
origin in.archive.ubuntu.com
Pinned packages:
如何在 openSUSE 上列出已啟用的倉庫
openSUSE 使用 zypper 包管理,因此我們可以使用 zypper 包管理獲得更多信息。
Zypper 是 suse 和 openSUSE 發行版的命令行包管理。它用於安裝、更新、搜索、移除包和管理倉庫,執行各種查詢等。Zypper 以 ZYpp 系統管理庫(libzypp)作為後端。
建議閱讀: 在 openSUSE 和 suse 系統上使用 Zypper 命令管理包
# zypper repos
# | Alias | Name | Enabled | GPG Check | Refresh
--+-----------------------+-----------------------------------------------------+---------+-----------+-----1 | packman-repository | packman-repository | Yes | (r ) Yes | Yes
2 | google-chrome | google-chrome | Yes | (r ) Yes | Yes
3 | home_lazka0_ql-stable | Stable Quod Libet / Ex Falso Builds (openSUSE_42.1) | Yes | (r ) Yes | No
4 | repo-non-oss | openSUSE-leap/42.1-Non-Oss | Yes | (r ) Yes | Yes
5 | repo-oss | openSUSE-leap/42.1-Oss | Yes | (r ) Yes | Yes
6 | repo-update | openSUSE-42.1-Update | Yes | (r ) Yes | Yes
7 | repo-update-non-oss | openSUSE-42.1-Update-Non-Oss | Yes | (r ) Yes | Yes
列出倉庫及 URI。
# zypper lr -u
# | Alias | Name | Enabled | GPG Check | Refresh | URI
--+-----------------------+-----------------------------------------------------+---------+-----------+---------+------------------------------------------------------------------------------1 | packman-repository | packman-repository | Yes | (r ) Yes | Yes | http://ftp.gwdg.de/pub/linux/packman/suse/openSUSE_Leap_42.1/
2 | google-chrome | google-chrome | Yes | (r ) Yes | Yes | http://dl.google.com/linux/chrome/rpm/stable/x86_64
3 | home_lazka0_ql-stable | Stable Quod Libet / Ex Falso Builds (openSUSE_42.1) | Yes | (r ) Yes | No | http://download.opensuse.org/repositories/home:/lazka0:/ql-stable/openSUSE_42.1/
4 | repo-non-oss | openSUSE-leap/42.1-Non-Oss | Yes | (r ) Yes | Yes | http://download.opensuse.org/distribution/leap/42.1/repo/non-oss/
5 | repo-oss | openSUSE-leap/42.1-Oss | Yes | (r ) Yes | Yes | http://download.opensuse.org/distribution/leap/42.1/repo/oss/
6 | repo-update | openSUSE-42.1-Update | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/42.1/oss/
7 | repo-update-non-oss | openSUSE-42.1-Update-Non-Oss | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/42.1/non-oss/
通過優先順序列出倉庫。
# zypper lr -p
# | Alias | Name | Enabled | GPG Check | Refresh | Priority
--+-----------------------+-----------------------------------------------------+---------+-----------+---------+------1 | packman-repository | packman-repository | Yes | (r ) Yes | Yes | 99
2 | google-chrome | google-chrome | Yes | (r ) Yes | Yes | 99
3 | home_lazka0_ql-stable | Stable Quod Libet / Ex Falso Builds (openSUSE_42.1) | Yes | (r ) Yes | No | 99
4 | repo-non-oss | openSUSE-leap/42.1-Non-Oss | Yes | (r ) Yes | Yes | 99
5 | repo-oss | openSUSE-leap/42.1-Oss | Yes | (r ) Yes | Yes | 99
6 | repo-update | openSUSE-42.1-Update | Yes | (r ) Yes | Yes | 99
7 | repo-update-non-oss | openSUSE-42.1-Update-Non-Oss | Yes | (r ) Yes | Yes | 99
如何列出 Arch Linux 上已啟用的倉庫
基於 Arch Linux 的系統使用 pacman 包管理,因此我們可以使用 pacman 包管理獲取這些信息。
pacman 意即 「package manager utility」。pacman 是一個命令行實用程序,用以安裝、構建、移除和管理 Arch Linux 包。pacman 使用 libalpm (Arch Linux 包管理庫)作為後端去進行這些操作。
建議閱讀: 在基於 Arch Linux的系統上使用 Pacman命令管理包
# pacman -Syy
:: Synchronizing package databases...
core 132.6 KiB 1524K/s 00:00 [############################################] 100%
extra 1859.0 KiB 750K/s 00:02 [############################################] 100%
community 3.5 MiB 149K/s 00:24 [############################################] 100%
multilib 182.7 KiB 1363K/s 00:00 [############################################] 100%
如何使用 INXI Utility 列出 Linux 上已啟用的倉庫
inix 是 Linux 上檢查硬體信息非常有用的工具,還提供很多的選項去獲取 Linux 上的所有硬體信息,我從未在 Linux 上發現其他有如此效用的程序。它由 locsmif 分叉自古老而古怪的 infobash。
inix 是一個可以快速顯示硬體信息、CPU、硬碟、Xorg、桌面、內核、GCC 版本、進程、內存使用和很多其他有用信息的程序,還使用於論壇技術支持和調試工具上。
這個實用程序將會顯示所有發行版倉庫的數據信息,例如 RHEL、CentOS、Fedora、Debain、Ubuntu、LinuxMint、ArchLinux、openSUSE、Manjaro等。
建議閱讀: inxi – 一個在 Linux 上檢查硬體信息的好工具
# inxi -r
Repos: Active apt sources in file: /etc/apt/sources.list
deb http://in.archive.ubuntu.com/ubuntu/ yakkety main restricted
deb http://in.archive.ubuntu.com/ubuntu/ yakkety-updates main restricted
deb http://in.archive.ubuntu.com/ubuntu/ yakkety universe
deb http://in.archive.ubuntu.com/ubuntu/ yakkety-updates universe
deb http://in.archive.ubuntu.com/ubuntu/ yakkety multiverse
deb http://in.archive.ubuntu.com/ubuntu/ yakkety-updates multiverse
deb http://in.archive.ubuntu.com/ubuntu/ yakkety-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu yakkety-security main restricted
deb http://security.ubuntu.com/ubuntu yakkety-security universe
deb http://security.ubuntu.com/ubuntu yakkety-security multiverse
Active apt sources in file: /etc/apt/sources.list.d/arc-theme.list
deb http://download.opensuse.org/repositories/home:/Horst3180/xUbuntu_16.04/ /
Active apt sources in file: /etc/apt/sources.list.d/snwh-ubuntu-pulp-yakkety.list
deb http://ppa.launchpad.net/snwh/pulp/ubuntu yakkety main
via: https://www.2daygeek.com/how-to-list-the-enabled-active-repositories-in-linux/
作者:Prakash Subramanian 選題:lujun9972 譯者:dianbanjiu 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive