Repositories für CentOS 7: EPEL, IUS, Atomicorp, SCL und Remi

Wie das EPEL-Repository auf CentOS 7 oder RHEL 7 installiert wird, wissen die meisten. Aber welche anerkannten Repos gibt es noch? Was bieten diese? Wie bezieht man Software aus dem passenden Repo? Wie ersetzt man eine Basis-Software durch eine aus einem anderen Repository?

Erweiterter Umgang mit yum

Welche Repos sind lokal aktiv?

yum repolist

Umgang mit parallel installierten Repos

So schränkt man die Suche auf ein bestimmtes Repository ein:

yum --disablerepo="*" --enablerepo="epel" list
yum --disablerepo="*" --enablerepo="epel" list installed
yum --disablerepo="*" --enablerepo="epel" list available
yum --disablerepo="*" --enablerepo="epel" list httpd

So installiert man nur aus einem bestimmten Repository:

yum --disablerepo="*" --enablerepo="centos-sclo-rh" install rh-php70

yum-config-manager installieren

yum -y install yum-utils

Upgrade installierter Versionen

Wer beispielsweise einen installierten Dovecot 2.2.10 (egal aus welchem Repo) durch eine neuere Version aus einem anderen Repository ersetzen will, muss dessen neuen alternativen Namen kennen und führt das hier aus:

dovecot -v
yum swap dovecot dovecot22u
dovecot -v

base, extras, updates

Das sind die bei CentOS 7 standardmässig aktivierten Software-Repositories. extras bietet Pakete, die nützlich sein können, aber für den Betrieb nicht unbedingt erforderlich sind.

CentOS SCL

SCL steht für "Software CoLlections". "Software Collections" ermöglicht es, mehrere Versionen einer Software auf einem System zu bauen, zu installieren und zu verwenden, ohne systemweit installierte Pakete zu tangieren. Die enthaltenen Pakete sind inzwischen sehr aktuell; zusätzlich gibt es einige Software-Kollektionen als Docker Formatted Container.

SCL sollte dann verwendet werden, wenn man beispielsweise PHP 5.4 und PHP 7.1 auf einer Maschine parallel fahren und jederzeit umschalten möchte. Kann darauf verzichtet werden, wählt man die Installation aus einem Repo, welches in dem Fall PHP systemweit ersetzt.

Seit Ende November 2017 stehen im SCL neue Versionen folgender Softwarepakete zur Verfügung:

  • MariaDB 10.2 (damit kann auf die Hersteller-Repos verzichtet werden)
  • Maven 3.5
  • MongoDB 3.4
  • nginx 1.12
  • NodeJS 8
  • PHP 7.1 (damit kann auf das Remi-Repo verzichtet werden)
  • PostgreSQL 9.6
  • Python 3.6

Installation

Auf CentOS:

yum -y install centos-release-scl

Auf RHEL:

yum-config-manager --enable rhel-server-rhscl-7-rpms

Verwendung

Beispiel anhand von Python:

yum install rh-python36
# runs bash instance with rh-python36 Software Collections enabled
scl enable rh-python36 bash
python --version
exit
python --version

Anschauen, was SCL für Python liefert:

yum list rh-python36\*

Beispiel für PHP 7.1:

yum install centos-release-scl
yum install rh-php71 rh-php71-php-devel
scl enable rh-php71 bash
php my-app.php

Hier findet sich eine Suchmaschine über verfügbare SCL-Pakete.

Atomic / Atomicorp

Atomicorp ist der Lieferant des kostenpflichtigen "Atomic Secured Linux" (ASL). Darüber hinaus stellen sie einige RPMs in einem kostenlosen Repo zur Verfügung. Ihr Repository ist unter anderem für die Installation von OpenVAS oder OSSEC hilfreich.

Installation

Auf CentOS in den Versionen 4 bis 7, ab Fedora 10 sowie OpenSUSE 12.3 und 13.1 gilt:

wget -q -O - https://www.atomicorp.com/installers/atomic | sh

Hier findet sich die Liste der verfügbaren RPMs.

EPEL

Das von der Fedora-Community gepflegte "Extra Packages for Enterprise Linux" (EPEL) Software-Repository für Yum erweitert RHEL, CentOS und Scientific Linux um viele dort nicht als Pakete lieferbare Anwendungen und Treiber. Seit September 2014 ist das "epel-release"-Paket direkt im "CentOS Base Extras" Repository integriert und daher unter CentOS einfach per Yum installierbar.

EPEL liefert unter anderem Pakete für bekannte Software-Grössen wie Ceph, Drupal, Mono, Nagios, OpenVPN, Puppet, R oder Wine. Red Hat gibt auf aus dem EPEL-Repository installierte Pakete keine Garantie oder Support.

Auf der RepoView-Seite für "Fedora EPEL 7" lässt sich vorab erkunden, welche Pakete verfügbar sind und wann sie aktualisiert wurden.

Installation

Die Installation des EPEL-Repos setzt ein aktiviertes CentOS Extras Repository voraus.

yum -y install epel-release

IUS

Das "IUS Community Project" stellt RPM-Pakete für neuere Versionen ausgewählter Software zur Verfügung. IUS bedeutet Inline with Upstream Stable.

Es wird bevorzugt für die aktuellste Python3-Version verwendet, liefert aber auch dovecot, git, haproxy, httpd, MariaDB oder PHP in sehr aktuellen Versionen.

IUS bietet "Safe Replacement Packages" und "Parallel Installable Packages".

Installation

yum -y install https://centos7.iuscommunity.org/ius-release.rpm

Verwendung

Ist ein Paket wie beispielsweise Redis aus dem Standard- oder EPEL-Repository installiert, muss es vorher deinstalliert werden. Danach:

yum -y install redis30u

Remi

Remi richtet sich an alle, die einen modernen PHP-Stack benötigen. Es liefert alle aktuellen PHP-Versionen (5.6, 7.0, 7.1) plus die dazu notwendigen Module und Tools.

Achtung: Remi verwendet die gleichen Paketnamen wie die offiziellen Repos - das kann zur Verwirrung führen, besonders, wenn im Standard-Repo PHP-Module verfügbar sind, für eine neuere PHP-Version aus dem Remi-Repo jedoch gar nicht oder nicht mehr.

Installation

Remi setzt das EPEL-Repository voraus.

yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Verwendung

Aufgrund der Namensgleichheit ist besondere Sorgfalt bei der Software-Installation empfohlen, d.h. man arbeitet mit yum-config-manager, um Verwechslungen auszuschliessen. Am Beispiel der Installation von PHP:

yum-config-manager --enable remi-php70
yum -y install php

Damit weiss yum, in welchem Repository es zu suchen hat.

Wer von PHP 7.0 auf 5.6 downgraden möchte:

yum remove php
yum-config-manager --disable remi-php70
yum-config-manager --enable remi-php56
yum -y install php

Hersteller-Repos

Immer öfters bieten die Projekte eigene Repos an, wie beispielsweise Elasticsearch, Graylog, Icinga2, MariaDB oder MongoDB, aus denen die neueste Software frisch und direkt vom Hersteller bezogen werden kann.


Related Posts

Published by

Markus Frei

Markus Frei

von der Linuxfabrik GmbH.