Назад | Перейти на главную страницу

rpm -Uvh & yum install

Я новичок в Linux и хочу понять причину использования некоторых команд. Я пытаюсь установить PostgreSQL на CentOs, следуя инструкциям Вот.

Сначала делаем rpm -ivh pgdg-centos91-9.1-4.noarch.rpm который устанавливает в систему пакет rpm. Но почему он просит нас сделать yum install postgresql91-server (который, я полагаю, устанавливает postgresql) снова, если мы использовали rpm -ivh установить пакет?

Кроме того, в чем причина добавления строк exclude=postgresql* в /etc/yum.repos.d/CentOS-Base.repo под [base] и [updates]. Почему мы исключаем yum из доступа к этим пакетам, а затем используем yum для установки postgresql91-server?

yum взаимодействует с онлайн-репозиторием, относящимся к вашей версии CentOS.

rpm - это менеджер пакетов и формат упаковки для приложений, разработанных для платформы Red Hat / CentOS. Ваш rpm Команда устанавливает пакет, который был загружен и не является частью репозитория yum.

В мире Windows это похоже на разницу между Центром обновления Windows (yum) и загрузкой части программного обеспечения и двойным щелчком установщика (rpm).

Также создается впечатление, что вы используете более новую версию postgresql, чем та, которая доступна через обычные каналы CentOS («База» и «Обновления»). Пакет, устанавливаемый указанной вами командой yum, поступает из другого репозиторий стороннего программного обеспечения.

Похоже, вы используете пакеты баз данных postgres, предоставленные непосредственно PostgreSQL, а не те, которые поступают через CentOS. В инструкции и рассуждения подробно описаны здесь.

В результате вас попросили предотвратить установку версии, распространяемой с CentOS, с помощью exclude= заявления, которые вы перечислили. Это мера предосторожности, чтобы избежать конфликта между старой версией postgresql из CentOS и новой, которую вы устанавливаете.