Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:repository_einbinden_centos_5

Repository einbinden CentOS 5

Um in yum (Yellow Dog Updater)) unter CentOS in der Version 5.x für 32-bit Betriebssysteme ein zusätzliches Repository einzubinden sind folgende Tätigkeiten notwendig.

:!: Es soll hier ein Repository eines Drittanbieters, hier z.B. dies von RPMforge eingebunden werden!

RPMforge ist eine Zusammenfassung der Dag, Dries und weiterer Programmbibliotheken/-quellen. Es enthält z.Zt. über 2600 Pakete.

:!: Das RPMforge-Repository ist weder offizieller Bestandteil der RedHat-Distribution noch der CentOS-Distribution.

Ab hier werden root-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um root zu werden geben Sie bitte folgenden Befehl ein:

$ su -
Password: 

Release Paket herunterladen

Als ersten Schritt ist es notwendig ein sogenanntes Release-Paket herunterzuladen und zu installieren. Das Release-Paket welches alle Informationen zum einbinden des einsprechenden Repositorys enthält, kann unter folgendem Link heruntergeladen werden:

Dies kann z.B. mit nachfolgenden Befehlen durchgeführt werden:

Zuerst wird in das Verzeichnis /tmp gewechselt:

# cd /tmp

und anschließend erfolgt der tatsächliche download

# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm

Zusätzlich ist es ebenfalls sehr zu empfehlen den GPG-Schlüssel für RPMforge - Dag Wieers herunterzuladen, was an dieser Stelle mit folgenden Befehlen realisiert werden sollte.

Zuerst wird in das Verzeichnis /tmp gewechselt:

# cd /tmp

und anschließend der GPG-Schlüssel für RPMforge heruntergeladen und installiert:

# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

:!: Es erscheint keine Meldung über einen erfolgreichen Import des GPG-Schlüssels !

Release Paket Integrität prüfen

Nachdem der GPG-Schlüssel erfolgreich heruntergeladen und importiert wurde, kann die Integrität des RPM-Paketes rpmforge-release-0.5.1-1.el5.rf.i386.rpm mit folgendem Befehl überprüft werden:

# rpm -K rpmforge-release-0.5.1-1.el5.rf.i386.rpm

:!: WICHTIG - Es sollte eine Ausgabe wie folgende, mit einem OK am Ende der zweiten Zeile erfolgen!

Release Paket installieren

Unter CentOS besteht die Möglichkeit eine Installation über folgende Befehle durchzuführen, ausgehend davon das sich die RPM-Pakete im Verzeichnis /tmp befinden:

# yum localinstall --nogpgcheck /tmp/rpmforge-release-0.5.1-1.el5.rf.i386.rpm

Nach erfolgreich Installation, kann der Inhalt der des soeben installierten RPM-Paketes rpmforge-release-0.5.1-1.el5.rf.i386.rpm mit folgendem Befehl überprüft werden:

# rpm -qil rpmforge-release
Name        : rpmforge-release             Relocations: (not relocatable)
Version     : 0.5.1                             Vendor: Dag Apt Repository, http://dag.wieers.com/apt/
Release     : 1.el5.rf                      Build Date: Mon 04 Jan 2010 02:55:55 PM CET
Install Date: Tue 05 Jan 2010 06:33:27 PM CET      Build Host: lisse.hasselt.wieers.com
Group       : System Environment/Base       Source RPM: rpmforge-release-0.5.1-1.el5.rf.src.rpm
Size        : 14333                            License: GPL
Signature   : DSA/SHA1, Mon 04 Jan 2010 02:56:38 PM CET, Key ID a20e52146b8d79e6
Packager    : Dag Wieers <dag@wieers.com>
URL         : http://rpmforge.net/
Summary     : RPMforge release file and RPM repository configuration
Description :
RPMforge.net release file. This package contains apt, yum and smart
configuration for the RPMforge RPM Repository, as well as the public
GPG keys used to sign them.
/etc/apt
/etc/apt/sources.list.d
/etc/apt/sources.list.d/rpmforge-testing.list
/etc/apt/sources.list.d/rpmforge.list
/etc/pki/rpm-gpg
/etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
/etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dries
/etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-fabian
/etc/smart
/etc/smart/channels
/etc/smart/channels/rpmforge-testing.channel
/etc/smart/channels/rpmforge.channel
/etc/sysconfig/rhn
/etc/sysconfig/rhn/sources.rpmforge.txt
/etc/yum.repos.d
/etc/yum.repos.d/mirrors-rpmforge
/etc/yum.repos.d/rpmforge-testing.repo
/etc/yum.repos.d/rpmforge.repo
/usr/share/doc/rpmforge-release-0.5.1
/usr/share/doc/rpmforge-release-0.5.1/RPM-GPG-KEY-rpmforge-dag
/usr/share/doc/rpmforge-release-0.5.1/RPM-GPG-KEY-rpmforge-dries
/usr/share/doc/rpmforge-release-0.5.1/RPM-GPG-KEY-rpmforge-fabian
/usr/share/doc/rpmforge-release-0.5.1/mirrors-rpmforge.yum
/usr/share/doc/rpmforge-release-0.5.1/rpmforge.apt
/usr/share/doc/rpmforge-release-0.5.1/rpmforge.smart
/usr/share/doc/rpmforge-release-0.5.1/rpmforge.up2date
/usr/share/doc/rpmforge-release-0.5.1/rpmforge.yum

YUM-Priorities

Unter dem Plugin für yum (Yellow Dog Updater) verbirgt sich die Möglichkeit Prioritäten innerhalb der yum-Paket-Bibliotheken zu vergeben. Das Ziel ist es zu verhindern, dasd yum-Paket-Bibliotheken mit höherer Prioritätenkennung, yum-Paket-Bibliotheken mit niedrigerer Prioritätenkennung überschrieben, falls RPM-Pakete in mehreren yum-Paket-Bibliotheken existieren sollten!

:!: Eine yum-Paket-Bibliotheken mit der Priorität 1 ist einer yum-Paket-Bibliotheken mit der Priorität 10 also vorzuziehen, falls RPM-Pakete in mehreren yum-Paket-Bibliotheken existieren sollten!

YUM-Priorities installieren

Da das Plugin für den yum-Paketmanager in der yum-Paket-Bibliotheken base, welche standardmäßig bei CentOS installiert ist, enthalten ist, ist eine Installation mit folgendem Befehl möglich:

# yum install yum-priorities

Nach erfolgreich Installation, kann der Inhalt der des soeben installieren RPM-Paketes yum-priorities mit folgendem Befehl überprüft werden:

# rpm -qil yum-priorities
Name        : yum-priorities               Relocations: (not relocatable)
Version     : 1.1.10                            Vendor: CentOS
Release     : 9.el5.centos                  Build Date: Mon 09 Jun 2008 12:25:46 AM CEST
Install Date: Fri 02 Jan 2009 11:06:16 AM CET      Build Host: builder16.centos.org
Group       : System Environment/Base       Source RPM: yum-utils-1.1.10-9.el5.centos.src.rpm
Size        : 12698                            License: GPL
Signature   : DSA/SHA1, Sun 15 Jun 2008 01:23:04 AM CEST, Key ID a8a447dce8562897
URL         : http://linux.duke.edu/yum/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

YUM-Priorities konfigurieren

:!: Es handelt sich hier nicht direkt um die Konfiguration von yum-priorities, sondern vielmehr um die einzelnen yum-Paket-Bibliotheken!

Eine Auflistung aller aktuell im yum-Paketmanager existierender yum-Paket-Bibliotheken, kann mit folgendem Befehl ausgegeben werden:

# ll /etc/yum.repos.d/
total 20
-rw-r--r-- 1 root root 2049 Sep  3 13:46 CentOS-Base.repo
-rw-r--r-- 1 root root  626 Jun 19  2008 CentOS-Media.repo
-rw-r--r-- 1 root root  684 Mar  8  2007 mirrors-rpmforge
-rw-r--r-- 1 root root  428 Mar  8  2007 rpmforge.repo

Anschließend können einzelne Prioritäten, wie folgt beschrieben für die entsprechenden yum-Paket-Bibliotheken folgendermaßen vergeben werden.

Die Pakete (enthalten in /etc/yum.repos.d/CentOS-Base.repo)

  • Base - base
  • Updates - updates
  • Addons - addons
  • Extras - extras

erhalten jeweils die Priorität 1 - priority=1

Das Paket (enthalten in /etc/yum.repos.d/CentOS-Base.repo)

  • Plus - plus

erhält die Priorität 2 - priority=2

# CentOS-Base.repo
#
# This file uses a new mirrorlist system developed by Lance Davis for CentOS.
# 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=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
 
#released updates 
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
 
#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
#baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
 
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
 
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=2

Das Paket (enthalten in /etc/yum.repos.d/CentOS-Media.repo)

  • Media - c5-media

erhält ebenfalls die Priorität 2 - priority=2

# CentOS-Media.repo
#
# This repo is used to mount the default locations for a CDROM / DVD on
#  CentOS-5.  You can use this repo and yum to install items directly off the
#  DVD ISO that we release.
#
# To use this repo, put in your DVD and use it with the other repos too:
#  yum --enablerepo=c5-media [command]
#  
# or for ONLY the media repo, do this:
#
#  yum --disablerepo=\* --enablerepo=c5-media [command]
 
[c5-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/
        file:///media/cdrom/
        file:///media/cdrecorder/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=2

Das Paket (enthalten in /etc/yum.repos.d/rpmforge.repo)

  • RPMForge.net - dag - rpmforge

erhält ebenfalls die Priorität 10 - priority=10

# Name: RPMforge RPM Repository for Red Hat Enterprise 5 - dag
# URL: http://rpmforge.net/
[rpmforge]
name = Red Hat Enterprise $releasever - RPMforge.net - dag
#baseurl = http://apt.sw.be/redhat/el5/en/$basearch/dag
mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
priority=10

Repository testen

Zum Abschluss kann mit folgenden zwei Befehlen getestet werden, ob das einbinden der neuen yum-Paket-Bibliothek erfolgreich war.

Als erstes werden alle gespeicherten Informationen im cache des yum-Paketmanagers verworfen, was mit folgendem Befehl durchgeführt werden kann:

# yum clean all
Loading "priorities" plugin
Loading "fastestmirror" plugin
Cleaning up Everything
Cleaning up list of fastest mirrors

Anschließend wird die Überprüfung, ob Updates für den Rechner vorliegen, mit folgendem Befehl durchgeführt. Dabei werden dann alle yum-Paket-Bibliotheken neu angezogen und entsprechende Informationen heruntergeladen und eingelesen:

]# yum check-update
Loading "priorities" plugin
Loading "fastestmirror" plugin
Determining fastest mirrors
 * rpmforge: ftp-stud.fht-esslingen.de
 * base: mirror.silyus.net
 * updates: mirror.silyus.net
 * addons: mirror.silyus.net
 * extras: mirror.silyus.net
rpmforge                  100% |=========================| 1.1 kB    00:00     
primary.xml.gz            100% |=========================| 2.9 MB    00:02     
rpmforge  : ################################################## 8223/8223
base                      100% |=========================| 1.1 kB    00:00     
primary.xml.gz            100% |=========================| 853 kB    00:02     
base      : ################################################## 2458/2458
updates                   100% |=========================|  951 B    00:00     
primary.xml.gz            100% |=========================| 353 kB    00:01     
updates   : ################################################## 754/754
addons                    100% |=========================|  951 B    00:00     
primary.xml.gz            100% |=========================|  157 B    00:00     
extras                    100% |=========================| 1.1 kB    00:00     
primary.xml.gz            100% |=========================|  90 kB    00:00     
extras    : ################################################## 295/295
339 packages excluded due to repository priority protections
Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
tachtler/repository_einbinden_centos_5.txt · Zuletzt geändert: 2012/06/11 12:49 von klaus