Gestione di un repository con debarchiver: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Riga 2: Riga 2:


=Introduzione=
=Introduzione=
[http://packages.debian.org/debarchiver Debarchiver] uno strumento comodo e potente per poter gestire facilmente un repository Debian ben strutturato e suddiviso. Oltre a questo permette di mantenerlo in ordine (evitando il mantenimento di versioni vecchie) senza richiedere manutenzione da parte dell'amministratore.
[http://packages.debian.org/debarchiver Debarchiver] è uno strumento comodo e potente per poter gestire facilmente un repository Debian ben strutturato e suddiviso. Oltre a questo permette di mantenerlo in ordine (evitando il mantenimento di versioni vecchie) senza richiedere manutenzione da parte dell'amministratore.


=Installazione=
=Installazione=
L'installazione semplice, in quanto il programma incluso in debian:
L'installazione è semplice, in quanto il programma è incluso in debian:
<pre>
<pre>
# apt-get install debarchiver
# apt-get install debarchiver
</pre>
</pre>


Raccomando agli utenti di Sarge di installare la versione presente in testing, in quanto molto pi� aggiornata e funzionale di quella inclusa nella release ''Stable''.
Raccomando agli utenti di Sarge di installare la versione presente in testing, in quanto molto più aggiornata e funzionale di quella inclusa nella release ''Stable''.


=Configurazione=
=Configurazione=
Tutta la configurazione di debarchiver racchiusa in un unico file:'''/etc/debarchiver.conf''', che analizziamo nel dettaglio:
Tutta la configurazione di debarchiver è racchiusa in un unico file:'''/etc/debarchiver.conf''', che analizziamo nel dettaglio:


{{Box|Nota Bene:|le opzioni riportate nel file di configurazione sono inizialmente commentate in quanto i valori riportati sono quelli di default.}}
{{Box|Nota Bene:|le opzioni riportate nel file di configurazione sono inizialmente commentate in quanto i valori riportati sono quelli di default.}}
Riga 21: Riga 21:
$inputdir = "/var/lib/debarchiver/incoming";
$inputdir = "/var/lib/debarchiver/incoming";
</pre>
</pre>
Dove verr� creato il repository (''destdir'') e dove vengono inseriti i pacchetti da aggiungere al repository (''inputdir'')
Dove verrà creato il repository (''destdir'') e dove vengono inseriti i pacchetti da aggiungere al repository (''inputdir'')


<pre>
<pre>
Riga 65: Riga 65:
         );
         );
</pre>
</pre>
Permette di indicare i nomi delle directory contenute nella directory ''incoming'' che provvederanno a raccogliere i pacchetti di una deretminata release. In questo caso, nella release ''stable'' verranno inseriti i pacchetti presenti nella directory ''/var/lib/debarchiver/incoming/stable/''.


<pre>
<pre>
Riga 90: Riga 91:
  @sections = ('main', 'contrib', 'non-free');
  @sections = ('main', 'contrib', 'non-free');
</pre>
</pre>
Indica le sezioni in cui suddiviso il repository. La sezione ''non-free'' non � pi� presente nelle release ufficiali Debian a partire dal rilascio di Sarge.
Indica le sezioni in cui è suddiviso il repository. La sezione ''non-free'' non è più presente nelle release ufficiali Debian a partire dal rilascio di Sarge.


<pre>
<pre>
  @mailtos = ('Maintainer', 'Uploaders', '@knio.it', 'maxer@knio.it');
  @mailtos = ('Maintainer', 'Uploaders', '@knio.it', 'admin@dominio.it');
</pre>
</pre>
Permette di indicare a chi verrà inviata una email di conferma dell'inserimento del pacchetto... è possibile specificare i seguenti parametri:
; Indirizzo Email : l'email verrà inviata a quel determinato indirizzo email
; Indirizzo email incompleto : l'email verrà inviata all'utente proprietario del file usando l'host specificato dopo il simbolo ''@''. Nel caso riportato, se l'utente proprietario del file è ''maxer'', l'email verrà inviata a ''maxer@knio.it''.
; Stringa senza @ : Verrà usato il valore del campo espresso (nell'esempio vengono utilizzati ''Maintainer'' e ''Uploader'') come indirizzo email.


<pre>
<pre>
Riga 101: Riga 106:
                 'description' => "");
                 'description' => "");
</pre>
</pre>
Informazioni aggiuntive da inserire nel file Release.


<pre>
<pre>
# $cachedir = '/var/cache/debarchiver';
# $cachedir = '/var/cache/debarchiver';
</pre>
</pre>
Nel caso venga usato ''apt-ftparchive'', indica la directory di cache da usare.


<pre>
<pre>
Riga 114: Riga 121:
# $gpgpassfile = "$ENV{HOME}/.gnupg/passphrase";
# $gpgpassfile = "$ENV{HOME}/.gnupg/passphrase";
</pre>
</pre>
Indica il percorso del file contenente la password per l'utilizzo della chiave GPG citata nella spiegazione alla direttiva precendente. Trattandosi di un dato molto importante, consigliabile usare dei permessi restrittivi, come ad esempio permettendole la lettura solo all'utente ''debarchiver'' (l'utente usato da debarchiver).
Indica il percorso del file contenente la password per l'utilizzo della chiave GPG citata nella spiegazione alla direttiva precendente. Trattandosi di un dato molto importante, è consigliabile usare dei permessi restrittivi, come ad esempio permettendole la lettura solo all'utente ''debarchiver'' (l'utente usato da debarchiver).





Versione delle 23:00, 22 set 2005

Document-page-setup.png Attenzione: questo articolo è ancora incompleto e in fase di scrittura da parte del suo autore.

Sentitevi liberi di contribuire, proponendo modifiche alla guida tramite l'apposita pagina di discussione, in modo da non interferire con il lavoro portato avanti sulla voce. Per altre informazioni si rimanda al template.



Introduzione

Debarchiver è uno strumento comodo e potente per poter gestire facilmente un repository Debian ben strutturato e suddiviso. Oltre a questo permette di mantenerlo in ordine (evitando il mantenimento di versioni vecchie) senza richiedere manutenzione da parte dell'amministratore.

Installazione

L'installazione è semplice, in quanto il programma è incluso in debian:

# apt-get install debarchiver

Raccomando agli utenti di Sarge di installare la versione presente in testing, in quanto molto più aggiornata e funzionale di quella inclusa nella release Stable.

Configurazione

Tutta la configurazione di debarchiver è racchiusa in un unico file:/etc/debarchiver.conf, che analizziamo nel dettaglio:

Info.png Nota Bene:
le opzioni riportate nel file di configurazione sono inizialmente commentate in quanto i valori riportati sono quelli di default.


$destdir = "/var/lib/debarchiver/dists";
$inputdir = "/var/lib/debarchiver/incoming";

Dove verrà creato il repository (destdir) e dove vengono inseriti i pacchetti da aggiungere al repository (inputdir)

# $copycmd = "cp -af";
# $movecmd = "mv";
# $rmcmd = "rm -f";
# $vrfycmd = "dscverify";

La lista dei comandi utilizzati nella gestione del repository... quelli di default, normalmente, sono corretti per la maggior parte delle situazioni.

# $cinstall = "installed";

Dove verranno messi i file .changes.

# $distinputcriteria = "^kernel.*\\.deb\$";
# $distinputdirs = "/path";

Indica il criterio con il quale verranno accettati i pacchetti non aventi un file .changes e dove devono essere inseriti per essere presi dal sistema

# $verifysignatures = 0;

Attiva (1) o disattiva (0) la verifica della firma dei pacchetti inseriti nella inputdir.

# $verifysignaturesdistinput = 0;

come sopra, ma riguarda la directory distinputdirs

# $bzip = 0;

Attiva la generazione di file compressi con bz2

 %distinputdirs =
        (
        stable => 'stable',
        testing => 'testing',
        unstable => 'unstable'
        );

Permette di indicare i nomi delle directory contenute nella directory incoming che provvederanno a raccogliere i pacchetti di una deretminata release. In questo caso, nella release stable verranno inseriti i pacchetti presenti nella directory /var/lib/debarchiver/incoming/stable/.

@distributions = ('stable', 'testing', 'unstable');

Questa lista indica le release presenti nel repository (in questo caso le 3 release stable, testing e unstable.


%distmapping =
        (
        stable => 'sarge',
        testing => 'etch',
        unstable => 'sid'
        );

Schema per la creazione di link tra i nomi delle release reali e i nomi dello stato delle release.

# @architectures = ('i386');

Permette di indicare la lista di archietture (racchiuse tra apici e separate da una virgola) presenti nel repository.

 @sections = ('main', 'contrib', 'non-free');

Indica le sezioni in cui è suddiviso il repository. La sezione non-free non è più presente nelle release ufficiali Debian a partire dal rilascio di Sarge.

 @mailtos = ('Maintainer', 'Uploaders', '@knio.it', 'admin@dominio.it');

Permette di indicare a chi verrà inviata una email di conferma dell'inserimento del pacchetto... è possibile specificare i seguenti parametri:

Indirizzo Email
l'email verrà inviata a quel determinato indirizzo email
Indirizzo email incompleto
l'email verrà inviata all'utente proprietario del file usando l'host specificato dopo il simbolo @. Nel caso riportato, se l'utente proprietario del file è maxer, l'email verrà inviata a maxer@knio.it.
Stringa senza @
Verrà usato il valore del campo espresso (nell'esempio vengono utilizzati Maintainer e Uploader) come indirizzo email.
%release = (   'origin' => "",
                'label' => "",
                'description' => "");

Informazioni aggiuntive da inserire nel file Release.

# $cachedir = '/var/cache/debarchiver';

Nel caso venga usato apt-ftparchive, indica la directory di cache da usare.

# $gpgkey = "";

Imposta la chiave GPG con cui firmare i pacchetti che vengono inseriti nel database.

# $gpgpassfile = "$ENV{HOME}/.gnupg/passphrase";

Indica il percorso del file contenente la password per l'utilizzo della chiave GPG citata nella spiegazione alla direttiva precendente. Trattandosi di un dato molto importante, è consigliabile usare dei permessi restrittivi, come ad esempio permettendole la lettura solo all'utente debarchiver (l'utente usato da debarchiver).


Permessi

Utilizzo Reale

Conclusione