Requisiti
Hai creato o scaricato pacchetti RPM e vuoi renderli disponibili per SUSE LINUX 10.0 tramite APT nel modo più semplice possibile.
Prerequisiti
Hai già configurato un server FTP. Questo rilascia, ad esempio, la directory /var/lib/ftp
.
Procedura
Copia i pacchetti RPM in una sottodirectory del server FTP, ad esempio in rpms
:
root@linux# cd /var/lib/ftp
root@linux# mkdir rpms
root@linux# cp /tmp/*.rpm rpms
Per creare il repository APT, è necessario il programma aptate
, che si trova nel pacchetto apt4rpm
di SUSE. Richiede un file di configurazione /etc/apt/aptate.conf
, che deve essere simile a questo:
/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>
È importante in questo caso: Il percorso /var/lib/ftp
e la directory rpms
a <name
>.
Il repository può ora essere generato con una semplice chiamata a aptate
. Questo passaggio è necessario anche ogni volta che un pacchetto RPM viene aggiunto, modificato o cancellato nel repository:
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
Utilizzo sul client
Il client deve avere installato il pacchetto apt. Nel file /etc/apt/sources.list
è necessaria una voce con l'URL della nuova sorgente:
/etc/apt/sources.list:rpm ftp://Aptserver/apt eigenerpms/1-noarch eigenerpms
Importante: affinché il client accetti pacchetti non firmati, è necessario disabilitare la verifica della firma in gpg-checker.conf
:
/etc/apt/apt.conf.d/gpg-checker.conf:GPG::Check false;
Test
Se tutto funziona, è ora possibile scaricare le descrizioni dei pacchetti sul client con apt-get update
:
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
... e installare i pacchetti con apt-get install
come al solito:
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.