GLM - 5/3/2021 - 10:17
Classifica dei relatori GLM 2014 (per numero di lezioni svolte)
- [9] Samuele Cacchiarelli
- [6] Andrea Bianchini
- [6] Gianluca Gabrielli
- [1] Matteo Ciccioli
- [1] Fabio Pagnotta
- [1] Alessandro Zampa
- [1] Emanuele
- [1] Roberto Marozzi
- [1] Giampiero Rubini
Vuoi diventare relatore GLM? presenta anche tu una lezione su un argomento che più ti piace relativo a Linux o al mondo dell'OpenSource
Archivio news
Lunedì 10 Febbraio 2003 - Gestione dei pacchetti Linux
Ripartendo dalla gestione dei pacchetti in Slackware, iniziata
nell'incontro precedente, si è passati ad illustrare i comandi
utilizzati dalle altre distribuzioni per installare, rimuovere
aggiornare i pacchetti, soffermandoci in particolare sulle
problematiche attinenti la gestione delle dipendenze dei pacchetti
e la gestione del database dei pacchetti.
La gestione dei pacchetti, in formato tgz, è caratterizzata dalla
totale assenza di controlli sulle dipendenze.
I comandi utilizzati sono:
per installare il pacchetto chiamato package.tgz
# installpkg [option] <package.tgz>...
L'installazione del pacchetto consiste essenzialmente nello scompattamento dei file in esso contenuti, visualizzabili tramite un semplice
$ tar tvzf package.tgz
e l'esecuzione di eventuali script in esso contenuti.
L'elenco dei pacchetti installati viene salvato in /var/log/packages, e consiste in una serie di file di testo, uno per ogni pacchetto installato, contenenti le informazioni basilari sugli stessi.
per disistallare il pacchetto
# removepkg [option] <package.tgz>...
per aggiornare il pacchetto package.tgz
# upgradepkg <package.tgz>
# pkgtool
Il comando pkgtool è in realtà una pratica e semplice interfaccia ai comandi sopra menzionati.
Utilizza pacchetti in formato RPM (Red-Hat Package Manager), caratterizzati da controllo
sulle dipendenze e facilità di installazione.
Tuttavia la RedHat non prevede al momento un sistema di gestione dei pacchetti in grado
di risolvere in maniera automatica il problema delle dipendenze. Infatti,qualora
l'installazione o rimozione dei pacchetti comporti un problema di dipendenze con altri
pacchetti, la relativa operazione non verrà completata e l'utente dell'esistenza del
problema di dipendenza.
I comandi maggiormente utilizzati sono:
per installare un pacchetto
# rpm -i pacchetto.rpm
per rimuoverlo
# rpm -r pacchetto
per estrapolare informazioni su un pacchetto installato
$ rpm -qi pacchetto
per estrapolare la lista dei file appartenenti al pacchetto installato
$ rpm -ql pacchetto.rpm
per trovare quale tra i pacchetti installati contiene un certo file
$ rpm -qf /percorso/assoluto/file
per estrapolare informazioni e contenuto di un pacchetto non installato
$ rpm -qpl ./percorso/relativo/pacchetto.rpm
Utilizza pacchetti in formato RPM come la RedHat e quindi contempla i medesimi comandi,
ma differenza di questa la Mandrake ha sviluppato un proprio sistema di gestione automatizzata
dei pacchetti e di gestione del database delle fonti tale da permettere con ulteriori semplici comandi
l'installazione, la rimozione, l'aggiornamento dei singoli pacchetti risolvendo autonomaticamente
il problema delle dipendenze.
Ad esempio: se l'installazione di un pacchetto richiede la presenza di un altro pacchetto,
quest'ultimo verrà installato insieme al primo; analogamente se la rimozione di un pacchetto
comporta il malfunzinamento di altri pacchetti che dipendono da questo, il sistema chiederà
di rimuovere anche questi.
I comandi in questione sono:
per installare o aggiornare un pacchetto
# urpmi pacchetto
per rimuoverlo
# urpme pacchetto
per interrogare sulla presenza di tale pacchetto tra le fonti (locali o remote)
$ urpmq pachetto
per individuare quali pacchetti contengano un determinato file
$ urpmf file
Ulteriori e più specifiche funzioni di ricerca sono inoltre possibili da interfaccia grafica attrverso i programmi rpmdrake, rpmdrake-remove.
Utilizza pacchetti in formato deb, caratterizzati anch'essi da controllo sulle dipendenze
e facilità di installazione.
Il sistema di gestione dei pacchetti in Debian è forse il più avanzato e complesso tra tutti
quelli presenti per linux. Come per Mandrake, esso permette una facile installazione, rimozione
o aggiornamento dei pacchetti risolvendo automaticamente il problema delle diendenze, ma a
differenza di Mandrake, contempla un maggior numero di comandi, tutti eseguibili da console
senza la necessità dell'ambiente grafico X.
I comandi maggiormente utilizzati sono:
per installare o aggiornare un pacchetto
# apt-get install pacchetto
per rimuoverlo
# apt-get remove pacchetto
per rimuovere un pacchetto installato compresi i relativi file di configurazione
# apt-get remove --purge pacchetto
per cercare il pacchetto che contenga tale descrizione
# dpkg -S nomefile
per avere informazioni dettaglaite su un pacchetto installato
dpkg -s nomepacchetto
Ulteriori funzioni di gestione dei pachetti sono accessibili anche da interfaccia testuale tramite il comando dselect.
Links consigliati:
Slackware Linux Essentials (Cap.16)
apt-howto
- Completa documentazione in Italiano
man rpm
man urpmi
Relatore della serata:
Samuele Cacchiarelli