DESCRIZIONE:
Un grande vantaggio del codice sorgente è avere il controllo su di esso, e
installare software dal codice sorgente è un dovere per qualsiasi utente LFS, ma disinstallarlo è
un grosso problema. Ho fatto molte ricerche per trovare un metodo facile
ed efficiente per disinstallare un programma attraverso il sorgente,
sfortunatamente la ricerca non ha avuto successo. Così ho deciso di
scrivere questo hint. Sono certo che LPM sarà utile non solo alla
comunità LFS, ma a chiunque voglia il controllo del proprio codice.
ALLEGATI:
Software: install-log http://ioioio.net/devel/install-log/install-log-cvs.tar.bz2
LPM script: http://www.zilli.gulinuxsul.org/lpm/lpm
HINT:
Contenuti:
1. Introduzione
Tutti sanno che non ci sono sistemi di package management su LFS e che
dovrebbe essere intrapresa questa strada. Un sistema di package
management non è obbligatorio (soltanto RPM se si vuol fare un sistema
compatibile LSB) ma non c'è dubbio che possa facilitare la vita,
specialmente se si preferiscono i pacchetti binari ai pacchetti di codice
sorgente. Sfortunatamente i package management tipo rpm, dpkg e pkgtool
non gestiscono i codici sorgenti. Il mio lavoro è stato produrre un
semplice (amo questa parola!) ed efficiente ambiente per
lavorare con il codice sorgente. Questa procedura è basata sugli hint
Installwatch e Install-log e altre cose.
2. Note
3. Installazione e Download
La configurazione, compilazione, e installazione di install-log è molto semplice.
##--BEGIN-CODE--## ./configure make make install ##--END-CODE--##
Lo script LPM è ancora più semplice.
##--BEGIN-CODE--## chmod +x lpm mv lpm /usr/sbin ##--END-CODE--##
4. Come funziona
Install-log è un semplice script di shell per aiutare nella gestione dei pacchetti durante
l'installazione dal codice sorgente. Eseguire “install-log <package-name>” immediatamente dopo
aver digitato “make install” (o quaòlunque cosa si esegua per installare qualcosa), e verrà
costruito un elenco di tutte le modifiche al proprio filesystem in un file e memorizzato in
/var/log/install-log, per disinstallazioni, aggiornamenti, o solo semplice
controllo del proprio sistema.
5. Come utilizzarlo
Quando si leggono le istruzioni di installazione di qualsiasi cosa, e si legge “make install”, dopo questo aggiungere:
##--BEGIN-CODE--## lpm -l ##--END-CODE--##
Esempio:
Ogni volta che si compila un software generalmente si esegue :
##--BEGIN-CODE--## ./configure && make && make install ##--END-CODE--##
Adesso si farà
##--BEGIN-CODE--## ./configure && make && make install && lpm -l ##--END-CODE--##
Di default LPM registrerà il nome della directory corrente come il nome del file di log in
/var/log/install-log. Se si vuole modificarlo, basta passare come secondo argomento
il nome che si desidera. Esempio:
##--BEGIN-CODE--## ./configure && make && make install && lpm -l superfoo ##--END-CODE--##
Tutto qua!
Disintallare software è estremamente facile con LPM, gli si passa il nome del file
di log da /var/log/install-log, e rimuoverà il software dal proprio
sistema. Si prenda ad esempio che si voglia disinstallare un programma di nome 'foobar
1.0'. Dal momento che si ha il log file foobar-1.0, è possibile semplicemente fare questo:
##--BEGIN-CODE--## lpm -e foobar-1.0 ##--END-CODE--##
E LPM produrrà un output come questo:
##..Uninstalling foobar-1.0 is done!..##
Si è mostrato l'utilizzo per disinstallare software, adesso si vedrà
l'utilizzo per vedere in modo semplice quali file sono stati installati per ogni programma.
Tutto quello che occorre fare è aggiungere “-r” alla lista degli argomenti di LPM. Esempio:
##--BEGIN-CODE--## lpm -r foobar-1.0 ##--END-CODE--##
Adesso LPM mostrerà tutti i file che il programma ha installato.
Se si vuol vedere tutti i file di log dentro la directory /var/log/install-log
è sufficiente non passare alcun argomento all'opzione “-r”, o semplicemente fare:
##--BEGIN-CODE--## lpm -r ##--END-CODE--##
6. Fine
Si! E' tutto qui! Questo è tutto quello di cui si ha bisogno per controllare i software installati
dai sorgenti. Alcuni hint mostrano come creare un pacchetto binario utilizzando l'installazione
dai sorgenti. Non c'è ragione per farlo. Se si sono installati pacchetti dai sorgenti,
perché si può voler costruire pacchetti binari? In ogni modo, i problemi con
il codice sorgente sono terminati!
E' soltanto l'inizio, ma cercherò di migliorare il più possibile questo hint.
Qualsiasi suggerimento è ben accetto, quindi fatemi sapere.
RINGRAZIAMENTI:
Robert Park rbpark@ualberta.ca - Installwatch
Andy Goth unununium@openverse.com - Install-log
MODIFICHE:
[2004-05-19]
[2004-05-20]
[2004-05-21]
[2004-05-22]
[2004-05-24]
[2004-12-07]