Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03406.jsonl.gz/959

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.