Подключение репозиториев epel, remi, atrpms в rhel/centos

How Can I Update My Kernel?

Depending on which board image you’re using, it can use the generic kernel or the RaspberryPi variant. It’s normally all configured automatically but even if you point to the correct repository, you’ll have take care of the following (depending on the board variant):

RaspberryPi 2 and 3

yum update will bring the updated kernel and nothing else needs to be done. Just reboot and you’ll be using the new kernel.

Generic Kernel

Before centos-userland-release-7-5.1804, in order to activate the new kernel and edit /boot/extlinux/extlinux.conf, you had to run /usr/bin/update-boot. This is no longer valid and it is done automatically by grubby.

Custom YUM Repository

Sometimes we need to create a Custom YUM Repository (handy when the VPS has no internet connection). We can create a Custom YUM Repository from a desired number of selected RPM package files. Custom YUM Repository only holds the RPM package files we want to include in.

Step 1: Install «createrepo»

To create Custom YUM Repository we need to install additional software called «createrepo» on our cloud server. We can install «createrepo» by running the following command from console:

yum install createrepo

Step 2: Create Repository directory

We need to create a new directory that will be the location of our Custom YUM Repository and will hold the desired RPM package files. We can do this with the following command from console (choose a different /repository1 directory name if you like):

mkdir /repository1

Step 3: Put RPM files to Repository directory

If RPM package files are not yet present on our VPS we need to transfer them to our cloud server via FTP or SSH — use software like WinSCP (free SFTP client and FTP) or similar. We can also download RPM package files directly to our VPS (internet connection needed) with «wget» command from console (please change HTTP link accordingly):

wget http://mirror.lihnidos.org/CentOS/6/os/i386/Packages/NetworkManager-0.8.1-43.el6.i686.rpm

If RPM files are already present on our VPS, we need to Copy or Move these files to the newly created directory from «Step 2». We can move RPM files with the following command from console (please change /path/to/rpm and /repository1 accordingly):

mv /path/to/rpm /repository1

We can copy RPM files with the following command from console (please change /path/to/rpm and /repository1 accordingly):

cp /path/to/rpm /repository1

Step 4: Run «createrepo»

Createrepo command reads through Custom YUM Repository directory from «Step 2» and creates a new directory called «repodata» in it. Repodata directory holds the metadata information for the newly created repository. Every time we add additional RPM package files to our Custom YUM Repository, we need to re-create Repository metadata with «createrepo» command. We can create new repository metadata by running the following command from console (please change /repository1 accordingly):

createrepo /repository1

Step 5: Create YUM Repository Configuration file

To start using the newly created Custom YUM Repository, we must create the corresponding YUM Repository Configuration file with .repo extension, which must be placed to /etc/yum.repos.d/ directory. Instructions to create YUM Repository Configuration file are covered in the first topic of this article called «YUM Repository Configuration File».

Example Custom YUM Repository Configuration file:

/etc/yum.repos.d/custom.repo

name=Custom Repository
baseurl=file:///repository1/
enabled=1
gpgcheck=0

Submitted by: @GeekPeekNet

Добавление репозитория REMI

Установка репозитория REMI происходит в несколько этапов. Для выполнения команды, у вас должна быть установлена утилита wget.

yum install wget -y
# Скачиваем rpm-пакет, при помощи утилиты wget
wget http://remi.mirror.ate.info/enterprise/remi-release-7.rpm

2016-09-22 04:48:28 (5.43 MB/s) - ‘remi-release-7.rpm’ saved [8147/8147]
# файл пакета, ‘remi-release-7.rpm’ будет сохранен в ту директорию 
# в которой вы находитесь в данный момент, если вы root, то /root/remi-release-7.rpm

# Устанавливаем репозиторий:
rpm -Uvh remi-release-7.rpm

Существуют и другие репозитории, процесс их установки будет таким же. Все нужные ссылки, как правило, указываются на страничке проектов, так же как и инструкции по установке.

Check out related media

This tutorial is also avilable in a quick video format that explains how to install EPEL repository on CentOS or RHEL 6.x server so that you can install additional packages directly using the yum command only.

(Video 01: Enable EPEL Repository On CentOS / Red Hat Linux For Yum Package)

See also

For more information see how to use “yum command to Update / Install Packages Under Red Hat Enterprise / CentOS Linux Version v5.x/v6.x and above” for more information.

This entry is 1 of 5 in the Enable EPEL Repository on a CentOS/RHEL Tutorial series. Keep reading the rest of the series:

  1. CentOS / RHEL / Scientific Linux 6/5 Enable and Install EPEL Repo
  2. How To Install EPEL Repo on a CentOS and RHEL 7.x
  3. yum command: Update / Install Packages Under Redhat Enterprise / CentOS Linux Version 5.x
  4. Install and enable EPEL repo on an RHEL 8.x
  5. CentOS 8 Install and enable EPEL repo

Установка epel repo в CentOS

Полностью epel репозиторий называется так — Extra Packages for Enterprise Linux. Это хранилище пакетов, созданное группой специалистов операционной системы Fedora. Пакеты из epel репозитория никогда не конфликтуют и не переустанавливают базовые пакеты RHEL. Поддерживаются пакеты для следующих операционных систем:

  • Red Hat Enterprise Linux (RHEL)
  • CentOS
  • Scientific Linux (SL)
  • Oracle Linux (OL)

Установить репозиторий epel в CentOS проще всего, так как epel-release package включен в стандартный Extras repository CentOS, который доступен по-умолчанию. На сегодняшний день это самый популярный неофициальный репозиторий для CentOS.

Установка репозитория epel в centos:

# yum -y install epel-release

Теперь если проверим папку /etc/yum.repos.d, увидим там файл epel.repo, в котором будет информация о новом подключенном репозитории.

Search Packages on EPEL Repository

Use the search or list option to search packages.

yum search ansible

Output:

Loading mirror speeds from cached hostfile
 * base: mirror.fileplanet.com
 * epel: d2lzkl7pfhq30w.cloudfront.net
 * extras: centos.mirrors.tds.net
 * updates: mirror.fileplanet.com
================================================= N/S matched: ansible ==================================================
ansible-doc.noarch : Documentation for Ansible
ansible-inventory-grapher.noarch : Creates graphs representing ansible inventory
ansible-lint.noarch : Best practices checker for Ansible
ansible-openstack-modules.noarch : Unofficial Ansible modules for managing Openstack
ansible.noarch : SSH-based configuration management, deployment, and task execution system

OR

yum list ansible

Output:

Loading mirror speeds from cached hostfile
 * base: mirror.fileplanet.com
 * epel: d2lzkl7pfhq30w.cloudfront.net
 * extras: centos.mirrors.tds.net
 * updates: mirror.fileplanet.com
Available Packages
ansible.noarch                                              2.8.4-1.el7                                              epel

How to install EPEL repo on CentOS 8.x

The following instructions assumes that you are running command as root user on CentOS 8.x system and want to use use Fedora Epel repository. To switch to root user, run su command or sudo command: OR

How to search and enable the EPEL Repository on CentOS 8

Run the following command: To get more info, run: Sample outputs:

CentOS-8 - Base                                                                                                                                                                                                                                 4.3 kB/s | 3.9 kB     00:00    
CentOS-8 - Extras                                                                                                                                                                                                                               1.7 kB/s | 1.5 kB     00:00    
Available Packages
Name         : epel-release
Version      : 8
Release      : 8.el8
Architecture : noarch
Size         : 23 k
Source       : epel-release-8-8.el8.src.rpm
Repository   : extras
Summary      : Extra Packages for Enterprise Linux repository configuration
URL          : http://download.fedoraproject.org/pub/epel
License      : GPLv2
Description  : This package contains the Extra Packages for Enterprise Linux (EPEL) repository
             : GPG key as well as configuration for yum.

Install Extra Packages for CentOS Enterprise Linux repository configuration

Execute the following yum command on CentOS 8:

Run the following command to fix it: Sample outputs:

Last metadata expiration check: :02:33 ago on Sun Dec  8 03:17:00 2019.
Dependencies resolved.
=================================================================================================================
 Package                               Arch                Version                     Repository           Size
=================================================================================================================
Installing:
 dnf-plugins-core                      noarch              4.0.2.2-3.el8               BaseOS               59 k
Installing dependencies:
 python3-dateutil                      noarch              1:2.6.1-6.el8               BaseOS              251 k
 python3-dnf-plugins-core              noarch              4.0.2.2-3.el8               BaseOS              171 k
 
Transaction Summary
=================================================================================================================
Install  3 Packages
 
Total download size: 481 k
Installed size: 1.1 M
Is this ok y/N: y
Downloading Packages:
(1/3): dnf-plugins-core-4.0.2.2-3.el8.noarch.rpm                                 547 kB/s |  59 kB     00:00    
(2/3): python3-dnf-plugins-core-4.0.2.2-3.el8.noarch.rpm                         1.1 MB/s | 171 kB     00:00    
(3/3): python3-dateutil-2.6.1-6.el8.noarch.rpm                                   1.5 MB/s | 251 kB     00:00    
-----------------------------------------------------------------------------------------------------------------
Total                                                                            293 kB/s | 481 kB     00:01     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                         1/1 
  Installing       : python3-dateutil-1:2.6.1-6.el8.noarch                                                   1/3 
  Installing       : python3-dnf-plugins-core-4.0.2.2-3.el8.noarch                                           2/3 
  Installing       : dnf-plugins-core-4.0.2.2-3.el8.noarch                                                   3/3 
  Running scriptlet: dnf-plugins-core-4.0.2.2-3.el8.noarch                                                   3/3 
  Verifying        : dnf-plugins-core-4.0.2.2-3.el8.noarch                                                   1/3 
  Verifying        : python3-dateutil-1:2.6.1-6.el8.noarch                                                   2/3 
  Verifying        : python3-dnf-plugins-core-4.0.2.2-3.el8.noarch                                           3/3 
 
Installed:
  dnf-plugins-core-4.0.2.2-3.el8.noarch                       python3-dateutil-1:2.6.1-6.el8.noarch              
  python3-dnf-plugins-core-4.0.2.2-3.el8.noarch              
 
Complete!

And re-run the above command again:

Now that EPEL repo installed it is time to configure and use it. Hence, run the following command: Sample outputs:

CentOS-8 - AppStream                          570 kB/s | 4.3 kB     00:00    
CentOS-8 - Base                               553 kB/s | 3.8 kB     00:00    
CentOS-8 - Extras                             226 kB/s | 1.5 kB     00:00    
CentOS-8 - PowerTools                          54 MB/s | 1.8 MB     00:00    
Extra Packages for Enterprise Linux 8 - x86_6  52 kB/s |  21 kB     00:00    
Dependencies resolved.
Nothing to do.
Complete!

Удалить репозиторий в CentOS

Для того, чтобы удалить репозиторий из системы, необходимо узнать его id с помощью команды yum repolist. Об этом я писал в предыдущем разделе. Затем с помощью утилиты yum-config-manager, которая входит в пакет yum-utils выполним удаление:

# yum-config-manager --disable remi-safe
bash: yum-config-manager: command not found

Если получаете такую ошибку, то установите пакет yum-utils:

# yum -y install yum-utils

Удаление репозитория в centos:

# yum-config-manager --disable remi-safe

Теперь проверяем список активных репозиториев:

Удаленного репозитория remi-safe нет. Значит все в порядке, отключение репозитория прошло успешно.

Для того, чтобы обновить кэш yum после изменения репозиториев, можно воспользоваться следующими командами:

Очистить кеш:

# yum clean all

Пересоздать кеш:

# yum makecache

Репозитории в CentOS

Для начала давайте поясним, что такое репозитории и для чего они нужны. Вот что говорит wikipedia на этот счет:

Некоторое время назад Linux приложения выходили в виде исходного кода, который потом компилировали на сервере и получали готовые программы. На сегодняшний день большинство приложений выходят в виде так называемых пакетов. Это уже собранные приложения, которые можно сразу установить и пользоваться.

В нашем случае репозиторий — хранилище пакетов для операционной системы CentOS. Существуют repository от разработчика системы, их называют официальные. Набор rpm пакетов там обычно ограничен и версии не самые свежие. Для установки дополнительного софта используют сторонние репозитории. Их поддерживать могут как другие компании, так и группы энтузиастов.

Управлением пакетами и репозиториями в CentOS занимается утилита yum. Ее конфигурационный файл находится в /etc/yum.conf. Этот файл содержит секцию , в которой указываются глобальные настройки программы. Так же он может содержать одну или несколько секций , в которой хранятся настройки репозиториев. Тем не менее, рекомендуется информацию о репозиториях хранить в каталоге /etc/yum.repos.d/ в специальных файлах .repo.

Минимальное содержание файла .repo следующее:

name=repository_name
baseurl=repository_url
name имя, описывающее репозиторий, может быть любым
baseurl ссылка на расположение репозитория, может быть в виде http, ftp или file ссылки

Другие ползные параметры, которые могут быть указаны в repo файле:

enabled принимает значение 1 или 0, 1 — репозиторий подключен, 0 — отключен
async управляет загрузкой пакетов, auto — использует при возможности параллельную загрузку, on — использует только параллельную загрузку, off — параллельная загрузка отключена
mirrorlist вместо ссылки на конкретный адрес репозитория может быть указана ссылка на список адресов, из которых при установке будет выбран наиболее подходящий
gpgcheck принимает значение 1 или 0, 1- осуществлять проверку GPG подписи пакета из репозитория, 0 — не проверять
gpgkey ссылка на GPG ключ репозитория

Вот содержание стандартного файла с репозиториями CentOS /etc/yum.repos.d/CentOS-Base.repo:

name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#released updates

name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that may be useful

name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that extend functionality of existing packages

name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *