Gianfranco Di Prinzio <gianfrdp@inwind.it>
Copyright (C) 2001-2002
Licenza: GPL >= 2
Il pacchetto mkdpkg serve per
rendere un albero di directory usabile con apt.
Per usare gli script è necessario installare
apt-utils, se la propria distribuzione non ha tale
pacchetto allora si usa dpkg-dev.
Scaricare il pacchetto
http://www.telug.it/gianfranco/mkdpkg/mkdpkg-1.1.2.tar.gz.
Scopmattarlo:
# tar zxvf mkdpkg-1.1.2.tar.gzModificare il file di confgurazione mkdpkg.conf.
# make installSe non si hanno i permessi di root si può modificare la variabile PREFIX in tutti gli script e nel Makefile, affinché punti ad una directory di cui si abbiano i permessi di scrittura (per esempio la propria HOME), oppure settare PREFIX=/usr/local.
Si presuppone che esista una stuttura del genere (la root può essere modificata in mkdpkg.conf):
${ROOT}/indices/ ${ROOT}/dists/ ${ROOT}/dists/${DIST}/ ${ROOT}/dists/${DIST}/main/ ${ROOT}/dists/${DIST}/main/binary-${ARCH}/ ${ROOT}/dists/${DIST}/main/source/ ${ROOT}/pool/main ...dove ${DIST} può essere la distribuzione che si usa: potato, woody, sid, ...
# mkdpkg-dir main # mkdpkg-dir non-free # mkdpkg-dir pippo ...
Nelle directory pool vanno i pacchetti binari (.deb) ed i sorgenti (.dsc, .diff.gz, .orig.tar.gz), secondo uno schema del genere: pool/main/a/apache, pool/main/a/agetty, pool/main/b/bzip2, ecc. Nelle dir binary-${ARCH} verranno create le liste dei pacchetti (Packages) ed in source quelle dei sorgenti (Sources).
Tale struttura ricalca quella dei CD Debian.
Innanzitutto si devono creare i file override in ${ROOT}/indices/ con l'elenco dei pacchetti binari:
# mkdpkg_override [section]dove section è un parametro opzionale che indica la sezione da prendere in considerazione (main, non-free, pippo, ...) (default tutti).
Poi si creano i file Packages nelle varie directory binary-${ARCH}:
# mkdpkg [section]
Eventualmente, se si hanno pacchetti sorgenti, si possono creare i file Sources nelle directory source:
# mkdpkg_src [section]
La directory ${ROOT} può essere, così, usata con apt per aggiornare la propria distribuzione, sia direttamnete che masterizzandola su un CD, che usando una connessione di rete tramite ftp.
Nel primo caso basta modificare il file /etc/apt/sources.list aggiungendo le righe:
deb file:/opt/archive woody main non-US non-free contrib pippo deb-src file:/opt/archive woody main non-US non-free contrib pippodove ROOT=/opt/archive, DIST=woody, main,..., pippo sono le sezioni che contengono i pacchetti.
Per aggiornare il database di apt basta fare:
# apt-get update
Dopo aver dato i permessi di lettura tramite ftp anonimo, basta copiare la dir ${ROOT} in /home/ftp/pub (oppure far puntare direttamente ROOT=/home/ftp/pub nel file mkdpkg.cfg) e modificare il file /etc/apt/sources.list in ogni macchina client collegata in rete, aggiungendo le righe:
deb ftp://indirizzo.server/pub woody main non-US non-free contrib pippo deb-src ftp://indirizzo.server/pub woody main non-US non-free contrib pippo
Per aggiornare il database di apt basta fare:
# apt-get update
Se si desidera creare un CD-ROM che possa essere usato con apt, allora si deve creare il file ${ROOT}/.disk/info contenete il titolo del CD.
Poi si può masterizzare la directory ${ROOT}
# mkisofs -v -J -r -V"etichetta" -o immagine.iso /opt/archive/ # cdrecord -v speed=8 dev=0,3,0 -pad -eject immagine.iso
Infine si può aggiungere il CD con:
# apt-cdrom add # apt-get update
Per maggiori dettagli consultare: