APT-Repository für eigene RPM-Pakete anlegen31. Oktober 2005
Ihr VorhabenSie haben RPM Pakete erstellt oder heruntergeladen und wollen diese für SUSE LINUX 10.0 per APT auf einfachst mögliche Weise zur Verfügung stellen. VoraussetzungenSie haben bereits einen FTP-Server konfiguriert. Dieser gibt z.B. das Verzeichnis /var/lib/ftp frei. VorgehenKopieren Sie Ihre RPM-Pakete in ein Unterverzeichnis des FTP-Servers, z.B. nach rpms: root@linux# cd /var/lib/ftp root@linux# mkdir rpms root@linux# cp /tmp/*.rpm rpms Um das APT-Repository anzulegen, benötigen Sie das Programm aptate, welches sich bei SUSE im Paket apt4rpm befindet. Dieses benötigt eine Konfigurationsdatei /etc/apt/aptate.conf, welche wie folgt aussehen muss: /etc/apt/aptate.conf:
<?xml version='1.0' encoding="iso-8859-1"?>
<!DOCTYPE opt SYSTEM "/usr/share/apt4rpm/aptate.dtd">
<opt signed-pkgs-only="no">
<topdir>/var/lib/ftp</topdir>
<distribution id="eigenerpms">
<name>eigenerpms</name>
<version>1</version>
<architecture>noarch</architecture>
<component>
<name>eigenerpms</name>
<url>rpms</url>
</component>
</distribution>
</opt>
Wichtig hier: Der Pfad /var/lib/ftp und das Verzeichnis rpms bei <name>. Das Repositorium kann nun generiert werden mit einem einfachen Aufruf von aptate. Dieser Schritt ist auch jedesmal notwendig, wenn im Repositorium ein RPM-Paket hinzukommt, geändert oder gelöscht wird:
root@linux# cd /var/lib/ftp
root@linux# aptate
Distribution(s) to be processed: eigenerpms
Processing: eigenerpms
Archive structure: 1 => eigenerpms/1-noarch
Entering cache build stage
eigenerpms -> RPMs added: 30
-> RPMs removed: 0
Entering apt repository creation stage
eigenerpms -> Bin: MD5/GPG: 30/3
-> Src: MD5/GPG: 0/0
Entering apt database building stage
eigenerpms -> Bin: 0030/0030
eigenerpms -> Src:
Creating global release file: done
Installing apt repository at: /var/lib/ftp/apt/eigenerpms/1-noarch
aptate: finished successfully
Verwendung auf dem ClientDer Client muss das Paket apt installiert haben. In der Datei /etc/apt/sources.list benötigen Sie einen Eintrag mit der URL zu der neuen Quelle: /etc/apt/sources.list:
rpm ftp://Aptserver/apt eigenerpms/1-noarch eigenerpms Wichtig: Damit der Client auch nicht signierte Pakete akzeptiert, müssen Sie die Überprüfung der Signatur in der Datei gpg-checker.conf abschalten: /etc/apt/apt.conf.d/gpg-checker.conf:
GPG::Check false; TestWenn alles klappt, können Sie jetzt auf dem Client mit apt-get update zunächst die Paketbeschreibungen herunterladen: root@linux# apt-get update Hole:1 ftp://Aptserver eigenerpms/1-noarch release [469B] 469B in 0s (0B/s) geholt Treffer ftp://Aptserver eigenerpms/1-noarch/eigenerpms pkglist Treffer ftp://Aptserver eigenerpms/1-noarch/eigenerpms release Lese Paketlisten... Fertig Erzeuge Abhängigkeitsbaum... Fertig ... und wie gewohnt Pakete mit apt-get install installieren: root@linux# apt-get install sendmail-cf Lese Paketlisten... Fertig Erzeuge Abhängigkeitsbaum... Fertig Die folgenden NEUEN Pakete werden installiert werden: sendmail-cf 0 upgraded, 1 newly installed, 0 entfernt und 0 nicht upgegradet. Muss 297kB an Archiven holen. Nach dem Auspacken werden 911kB zusätzlicher Plattenplatz benutzt werden. Hole:1 ftp://Aptserver eigenerpms/1-noarch/eigenerpms sendmail-cf 8.12.11-3 [297kB] 297kB in 0s (18,5MB/s) geholt Committing changes... Preparing... ########################################### [100%] 1:sendmail-cf ########################################### [100%] Done. |
| |||||||||||||||||||||