ATrpms-Repository einbinden
ATrpms ist ein Repository, welches „Extra Packages for Enterprise Linux“ darstellt. Es ist eine Interessensgruppe welche überwiegend, aber nicht nur, Pakete für wissenschaftliche Belange zur Verfügung stellen will.
Bevor externe Repository's auf den Servern/Knoten eingebunden werden, sollte sichergestellt werden, dass keine Pakete aus externen Repositorys, die der eigentlichen CentOS-Repositorys überschreiben.
Dies kann durch die Installation des sogenannten
- Priorities-Plugin für den Paket-Manager
yum
erfolgen.
Die Installation des Priorities-Plugin für den Paket-Manager yum
wird durch nachfolgenden Befehl durchgeführt:
# yum install yum-plugin-priorities Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package yum-plugin-priorities.noarch 0:1.1.30-14.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: yum-plugin-priorities noarch 1.1.30-14.el6 base 22 k Transaction Summary ================================================================================ Install 1 Package(s) Total download size: 22 k Installed size: 28 k Is this ok [y/N]: y Downloading Packages: yum-plugin-priorities-1.1.30-14.el6.noarch.rpm | 22 kB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : yum-plugin-priorities-1.1.30-14.el6.noarch 1/1 Verifying : yum-plugin-priorities-1.1.30-14.el6.noarch 1/1 Installed: yum-plugin-priorities.noarch 0:1.1.30-14.el6 Complete!
Der Inhalt des Paketes yum-plugin-priorities
kann mit nachfolgendem Befehl angezeigt werden:
# rpm -qil yum-plugin-priorities Name : yum-plugin-priorities Relocations: (not relocatable) Version : 1.1.30 Vendor: CentOS Release : 14.el6 Build Date: Fri 22 Jun 2012 02:23:05 PM CEST Install Date: Fri 07 Sep 2012 11:28:52 AM CEST Build Host: c6b8.bsys.dev.centos.org Group : System Environment/Base Source RPM: yum-utils-1.1.30-14.el6.src.rpm Size : 28555 License: GPLv2+ Signature : RSA/SHA1, Mon 25 Jun 2012 12:20:22 AM CEST, Key ID 0946fca2c105b9de Packager : CentOS BuildSystem <http://bugs.centos.org> URL : http://yum.baseurl.org/download/yum-utils/ Summary : plugin to give priorities to packages from different repos Description : This plugin allows repositories to have different priorities. Packages in a repository with a lower priority can't be overridden by packages from a repository with a higher priority even if repo has a later version. /etc/yum/pluginconf.d/priorities.conf /usr/lib/yum-plugins/priorities.py /usr/lib/yum-plugins/priorities.pyc /usr/lib/yum-plugins/priorities.pyo /usr/share/doc/yum-plugin-priorities-1.1.30 /usr/share/doc/yum-plugin-priorities-1.1.30/COPYING
Entscheidend ist nun, im Verzeichnis
/etc/yum.repos.d/
den dort enthaltenen Repository-Konfigurationsdateien, durch Ergänzung nachfolgender Zeile, eine Priorität zuzuweisen (nur relevanter Ausschnitt):
... priority=1 ...
Was im Beispiel der Konfigurationsdatei
/etc/yum.repos.d/Centos-Base-repo
dann wie folgt aussehen könnte (nur beispielhafter relevanter Ausschnitt):
# CentOS-Base.repo # # The mirror system uses the connecting IP address of the client and the # update status of each mirror to pick mirrors that are updated to and # geographically close to the client. You should use this for CentOS updates # unless you are manually picking other mirrors. # # If the mirrorlist= does not work for you, as a fall back you can try the # remarked out baseurl= line instead. # # [base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 priority=1 ...
HINWEIS - Den eigenen Repository's aus CentOS sollte eine höhere Priorität, durch Zuweisung einer kleineren Zahl gegeben werden!
Um ATrpms auf den Servern/Knoten Nutzen zu können, muss nachfolgende Datei heruntergeladen werden, was mit nachfolgendem Befehl durchgeführt werden kann:
# wget http://dl.atrpms.net/all/atrpms-repo-6-7.el6.x86_64.rpm --2014-03-13 14:50:38-- http://dl.atrpms.net/all/atrpms-repo-6-7.el6.x86_64.rpm Resolving dl.atrpms.net... 160.45.254.22 Connecting to dl.atrpms.net|160.45.254.22|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 8152 (8.0K) [application/x-rpm] Saving to: “atrpms-repo-6-7.el6.x86_64.rpm” 100%[======================================>] 8,152 --.-K/s in 0.05s 2014-03-13 14:50:38 (149 KB/s) - “atrpms-repo-6-7.el6.x86_64.rpm” saved [8152/8152]
Anschließend sollte zur Prüfung der Echtheit des soeben heruntergeladenen rpm
-Pakets
atrpms-repo-6-7.el6.x86_64.rpm
dessen Schlüssel, mit dem das Paket signiert wurde, in die RPM-Paket-Verwaltung importiert werden:
# rpm --import http://packages.atrpms.net/RPM-GPG-KEY.atrpms
Danach kann das so heruntergeladene Paket, mit nachfolgendem Befehl auf dessen Echtheit, überprüft werden:
# rpm -K atrpms-repo-6-7.el6.x86_64.rpm atrpms-repo-6-7.el6.x86_64.rpm: (sha1) dsa sha1 md5 gpg OK
Abschließend kann dann, mit nachfolgendem Befehl, das Paket installiert werden:
# yum localinstall atrpms-repo-6-7.el6.x86_64.rpm Loaded plugins: priorities Setting up Local Package Process Examining atrpms-repo-6-7.el6.x86_64.rpm: atrpms-repo-6-7.el6.x86_64 Marking atrpms-repo-6-7.el6.x86_64.rpm to be installed 1333 packages excluded due to repository priority protections Resolving Dependencies --> Running transaction check ---> Package atrpms-repo.x86_64 0:6-7.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: atrpms-repo x86_64 6-7.el6 /atrpms-repo-6-7.el6.x86_64 7.0 k Transaction Summary ================================================================================ Install 1 Package(s) Total size: 7.0 k Installed size: 7.0 k Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : atrpms-repo-6-7.el6.x86_64 1/1 Verifying : atrpms-repo-6-7.el6.x86_64 1/1 Installed: atrpms-repo.x86_64 0:6-7.el6 Complete!
Der Inhalt des Pakets atrpms-repo-6-7.el6.x86_64.rpm
kann mit nachfolgendem Befehl angezeigt werden:
# rpm -qil atrpms-repo Name : atrpms-repo Relocations: (not relocatable) Version : 6 Vendor: ATrpms.net Release : 7.el6 Build Date: Tue 31 Dec 2013 11:15:16 PM CET Install Date: Thu 13 Mar 2014 02:54:20 PM CET Build Host: flocki.atrpms.net Group : System Environment/Base Source RPM: atrpms-repo-6-7.el6.src.rpm Size : 7167 License: GPLv3 Signature : DSA/SHA1, Tue 31 Dec 2013 11:15:16 PM CET, Key ID 508ce5e666534c2b Packager : ATrpms <http://ATrpms.net/> URL : http://ATrpms.net/ Summary : Configuration files for package managers. Description : This package contains configuration files for yum, smart and apt. /etc/apt /etc/apt/sources.d /etc/apt/sources.d/atrpms-bleeding.list /etc/apt/sources.d/atrpms-testing.list /etc/apt/sources.d/atrpms.list /etc/pki /etc/pki/rpm-gpg /etc/pki/rpm-gpg/RPM-GPG-KEY-atrpms /etc/smart /etc/smart/channels /etc/smart/channels/atrpms-bleeding.channel /etc/smart/channels/atrpms-testing.channel /etc/smart/channels/atrpms.channel /etc/yum.repos.d /etc/yum.repos.d/atrpms-bleeding.repo /etc/yum.repos.d/atrpms-testing.repo /etc/yum.repos.d/atrpms.repo
HINWEIS - Abschließend sollte hier die Priorität des ATrpms-Repositorys, eine niedrigere Priorität, durch Zuweisung einer größeren Zahl, als die der eigenen Rpository's aus CentOS gegeben werden!
Was im Beispiel der Konfigurationsdateien
/etc/yum.repos.d/atrpms.repo
/etc/yum.repos.d/atrpms-bleeding.repo
/etc/yum.repos.d/atrpms-testing.repo
dann wie folgt aussehen könnte (nur beispielhafter relevanter Ausschnitt):
[atrpms] name=Red Hat Enterprise Linux $releasever - $basearch - ATrpms failovermethod=priority baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-atrpms priority=30 ...