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.

Linux knowledge

Questi articoli sono stati scritti dal fondatore di Checkmk molti anni fa.
Tuttavia, sono ancora validi e quindi li conserviamo sul nostro sito web.
Da allora Mathias ha sviluppato un software di monitoraggio chiamato Checkmk.

Scopri di più