rpm -Uvh & yum 安裝
我是 linux 新手,想了解使用某些命令的原因。我正在嘗試按照此處的說明在 CentO 上安裝 PostgreSQL 。
首先,我們
rpm -ivh pgdg-centos91-9.1-4.noarch.rpm
將 rpm 包安裝到系統中。yum install postgresql91-server
但是,如果我們曾經rpm -ivh
安裝過軟體包,為什麼它要求我們再次這樣做(我假設安裝了 postgresql)?另外,將行添加
exclude=postgresql*
到/etc/yum.repos.d/CentOS-Base.repo
under[base]
和[updates]
. 為什麼我們排除 yum 訪問這些包,然後使用 yum 安裝postgresql91-server
?
yum
與與您的 CentOS 版本相關的線上儲存庫介面。
rpm
是為 Red Hat/CentOS 平台開發的應用程序的包管理器和打包格式。您的rpm
命令正在安裝一個已下載且不屬於 yum 儲存庫的軟體包。在 Windows 世界中,這就像 Windows Update (yum) 與下載一個軟體並點兩下安裝程序 (rpm) 之間的區別。
看起來好像您使用的 postgresql 版本比通過普通 CentOS 渠道(“Base”和“Updates”)提供的版本更新。您列出的 yum 命令安裝的軟體包來自不同的第三方軟體儲存庫。
看起來您使用的是 PostgreSQL 直接提供的 postgres 數據庫包,而不是通過 CentOS 提供的那些。這裡有詳細的說明和推理。
exclude=
因此,您被要求使用您列出的語句阻止安裝 CentOS 分發的版本。這是一種預防措施,可避免 CentOS 的舊版本 postgresql 與您正在安裝的新版本之間發生衝突。