Sei sulla pagina 1di 4

Devo disinstallare un

programma


Abbiamo imparato molte cose su come gestire i programmi Linux.

Ricapitolando, abbiamo detto che di norma, su Red Hat e distribuzioni simili, i
programmi vengono distribuiti in pacchetti. Ogni pacchetto ha un nome che quello del
programma pi un numero di versione pi o meno complesso: ad esempio mplayer-
common-0.90-2.rpm la versione 0.90 (seconda compilazione) del pacchetto mplayer-
common. Dal nome si intuisce che questa la parte di base di un pacchetto pi complesso
di nome mplayer.

Una gestione di questo tipo non stata studiata per complicare la vita allutente, che
ovviamente preferirebbe avere dei pacchetti autoinstallanti con un semplice click del
mouse, tipo Windows, ma serve per tenere tutto in ordine.

Mentre in Windows ogni programma si pu installare senza rivelarsi al sistema, finch
noi installiamo rpm, i programmi si dichiarano al sistema operativo (o meglio alla
componente dedicata alla gestione del pacchetto), dicendo nome, versione, da che altri
pacchetti eventualmente dipendono, e cosa offrono (per esempio una libreria chiamata
libc). E dunque possibile tenere un database di tutte le applicazioni presenti sul
computer, tenendo conto di dove sono esattamente installate, e di quali altre applicazioni
si basano su di esse. Di pi: immaginabile la possibilit di creare dei database
giganteschi in Internet che tengano conto di tutti i possibili pacchetti creati per ogni
distribuzione RedHat, e che permettano linstallazione via rete con risoluzione di
dipendenze in maniera semi automatica.

Red Carpet, che abbiamo usato qualche volta, si basa su questo concetto, ma in piccolo:
gestisce infatti tutti i pacchetti prodotti da RedHat, ed in pi (a scelta) quelli prodotti dalla
Ximian per il suo desktop Gnome.
Il sito rpmfind.net, invece, ha un database molto pi grande, ma si limita a trovare i
singoli pacchetti, ad elencarne i file e le dipendenze, e a farli scaricare uno ad uno,
lasciando allutente il compito di riunire tutto il software che gli (anche indirettamente)
necessario, e di installarlo.
Alessandro Urpi - Manuali.Net 2003 Tutti i diritti riservati


Rimuovere un pacchetto dunque uno dei punti critici del sistema: per come costruito
per minimizzare la dimensione di ogni singolo pacchetto, se nel pacchetto che per
qualche motivo vogliamo rimuovere contenuto anche un solo file necessario ad un altro
pacchetto, saremo costretti ad eliminare entrambi, o nessuno.

E duro abituarcisi le prime volte, essendo abituati al mondo Microsofr in cui tutto
permesso (anche distruggere il sistema per delle sciocchezze) dandoci una sorta didea di
onnipotenza.

Il modo pi sicuro di rimuovere un pacchetto quello di usare la gestione pacchetti di
Red Hat o il Red Carpet, che controllano automaticamente le dipendenze, e ci avvertono
di cosa dovremmo togliere se vogliamo proseguire nel nostro intento (togliendo tutto con
un semplice click).

Daltra parte questo meccanismo pu essere molto comodo in casi estremi: supponendo
per esempio di volere disinstallare tutti i programmi grafici perch ci siamo infatuati della
modalit testuale, non dovremo togliere i 500 pacchetti circa relativi a programmi con
interfacce grafiche: molto pi semplicemente baster eliminare Xfree86, perch tutto il
resto segua in maniera automatica!

Qualora non si riesca a trovare il pacchetto nella lunga lista che ci viene proposta (anche
se Red Carpet ci offre lopportunit per fare la ricerca sulla lista, eliminando anche
questo problema), baster aprire una shell, diventare root (solito comando su) e digitare:

rpm e nomePacchetto

in cui il nome del pacchetto non include la versione, e nemmeno lestensione .rpm. Se per
esempio volessimo eliminare il pacchetto contenente il browser testuale lynx, sar
sufficiente digitare rpm e lynx. Se il pacchetto dovesse essere indispensabile per altri
programmi, allora il comando terminerebbe con un errore di dipendenze fallite, dando la
lista dei programmi che hanno bisogno di ci che noi vogliamo eliminare, che andrebbero
eventualmente tolti uno per uno se davvero vogliamo completare loperazione.

Supponiamo ora di voler conoscere a quale pacchetto appartiene uno specifico file, non
necessariamente per cancellarlo: la tecnica di inserire tutte le informazioni sui pacchetti
in un database permette di gestire in modo assolutamente efficiente una qualsiasi
interrogazione (o query, per dirla in gergo da database) su di esso.
Baster pertanto digitare

rpm qf nomeFile

per vedersi rispondere in un tempo di solito molto breve (provate ad esempio a digitare
rpm qf /bin/ls).

Se invece avete scaricato un nuovo pacchetto rpm, ma non sapete esattamente cosa sia, si
Alessandro Urpi - Manuali.Net 2003 Tutti i diritti riservati

pu vedere che informazioni ci hanno attaccato gli autori, con il comando

rpm qpi nomeCompletoDelPacchetto

Eseguendo il comando sul pacchetto mplayer-common, che abbiamo scaricato ed
installato nella scorsa lezione, si ottiene il seguente risultato:



Name : mplayer-common Relocations: (not relocateable)
Version : 0.90rc3 Vendor: The MPlayer Project
Release : 2 Build Date: mer 22 gen 2003
23:41:55 CET
Install date: (not installed) Build Host:
rathann.rangers.eu.org
Group : Applications/Multimedia Source RPM: mplayer-
0.90rc3-2.src.rpm
Size : 2375944 License: GPL
Signature : DSA/SHA1, gio 01 gen 1970 01:00:00 CET, Key ID 0000000000000000
Packager : Dominik Mierzejewski <dominik@rangers.eu.org>
URL : http://www.mplayerhq.hu
Alessandro Urpi - Manuali.Net 2003 Tutti i diritti riservati


Linux per Principianti
Lezione 20

Summary : Configuration files and documentation for mplayer.
Description :
Configuration files, man page and HTML documentation for mplayer.

Notate che ci sono numerose informazioni legate ad un pacchetto, che permettono di caratterizzarlo
a pieno per la sua versione, per il suo tipo (in questo caso Multimedia), e per chi lha prodotto. Ci
sono inoltre informazioni su dove trovare il codice sorgente (obbligatorie, se il software free), e
descrizioni del sistema in cui stato compilato, per capire eventualmente cosa non va.

Richiedendo poi la pagina del manuale relativa a rpm (comando man rpm), possibile vedere le
innumerevoli opzioni che si hanno a disposizione per la gestione dei pacchetti, anche se raramente
se ne usano pi di quante riportate in questa lezione.

Che fare se invece si vuole eliminare un programma che non stato installato con il metodo rpm?
Le cose si complicano notevolmente, perch non c un metodo standard. Alcuni programmi, come
Netscape 7 o Acrobat Reader si installano in una directory separata da tutto il resto (ad esempio
/usr/local/Acrobat). E dunque sufficiente eliminare questa per aver risolto semplicemente il
problema.

Altri programmi di solito vengono installati nella directory /usr/local come base, andandosi a
distribuire nelle sottodirectory:
bin per quanto riguarda gli eseguibili
share per quanto riguarda i dati (icone, file contenenti i messaggi visualizzati, etc)
lib per quanto riguarda le librerie di supporto
etc per quanto la configurazione
A meno che voi non sappiate ESATTAMENTE di quali file composto il programma che volete
disinstallare, vi sconsiglio di provare a farlo manualmente, perch rischiate di compromettere il
funzionamento di tutto il sistema!

Dopo questa lezione, sapete come gestire i pacchetti nel vostro sistema: nella prossima esercitazione
avrete modo di installare alcune applicazioni davvero utili che mancano allappello, mentre nelle
prossime lezioni impareremo altri piccoli trucchi per rendere il nostro sistema davvero funzionale.

Alessandro Urpi - Manuali.Net 2003 Tutti i diritti riservati
4

Potrebbero piacerti anche

  • Serratura Cofano Post.
    Serratura Cofano Post.
    Documento4 pagine
    Serratura Cofano Post.
    IonRusu
    Nessuna valutazione finora
  • Lezione 30
    Lezione 30
    Documento4 pagine
    Lezione 30
    IonRusu
    Nessuna valutazione finora
  • Lezione 28
    Lezione 28
    Documento7 pagine
    Lezione 28
    IonRusu
    Nessuna valutazione finora
  • Lezione 21
    Lezione 21
    Documento5 pagine
    Lezione 21
    IonRusu
    Nessuna valutazione finora
  • Lezione 27
    Lezione 27
    Documento4 pagine
    Lezione 27
    IonRusu
    Nessuna valutazione finora
  • Lezione 26
    Lezione 26
    Documento6 pagine
    Lezione 26
    IonRusu
    Nessuna valutazione finora
  • Lezione 29
    Lezione 29
    Documento6 pagine
    Lezione 29
    IonRusu
    Nessuna valutazione finora
  • Lezione 24
    Lezione 24
    Documento3 pagine
    Lezione 24
    IonRusu
    Nessuna valutazione finora
  • Lezione 17
    Lezione 17
    Documento8 pagine
    Lezione 17
    IonRusu
    Nessuna valutazione finora
  • Lezione 23
    Lezione 23
    Documento4 pagine
    Lezione 23
    IonRusu
    Nessuna valutazione finora
  • Lezione 16
    Lezione 16
    Documento4 pagine
    Lezione 16
    IonRusu
    Nessuna valutazione finora
  • Lezione 18
    Lezione 18
    Documento7 pagine
    Lezione 18
    IonRusu
    Nessuna valutazione finora
  • Lezione 22
    Lezione 22
    Documento3 pagine
    Lezione 22
    IonRusu
    Nessuna valutazione finora
  • Lezione 14
    Lezione 14
    Documento6 pagine
    Lezione 14
    IonRusu
    Nessuna valutazione finora
  • Lezione 25
    Lezione 25
    Documento4 pagine
    Lezione 25
    IonRusu
    Nessuna valutazione finora
  • Lezione 06
    Lezione 06
    Documento9 pagine
    Lezione 06
    IonRusu
    Nessuna valutazione finora
  • Lezione 13
    Lezione 13
    Documento6 pagine
    Lezione 13
    IonRusu
    Nessuna valutazione finora
  • Lezione 19
    Lezione 19
    Documento3 pagine
    Lezione 19
    IonRusu
    Nessuna valutazione finora
  • Lezione 11
    Lezione 11
    Documento7 pagine
    Lezione 11
    IonRusu
    Nessuna valutazione finora
  • Lezione Linux n.7
    Lezione Linux n.7
    Documento10 pagine
    Lezione Linux n.7
    iciopi
    Nessuna valutazione finora
  • Lezione 12
    Lezione 12
    Documento3 pagine
    Lezione 12
    IonRusu
    Nessuna valutazione finora
  • Lezione 15
    Lezione 15
    Documento4 pagine
    Lezione 15
    IonRusu
    Nessuna valutazione finora
  • Lezione 10
    Lezione 10
    Documento2 pagine
    Lezione 10
    IonRusu
    Nessuna valutazione finora
  • Lezione 03
    Lezione 03
    Documento4 pagine
    Lezione 03
    IonRusu
    Nessuna valutazione finora
  • Lezione 09
    Lezione 09
    Documento5 pagine
    Lezione 09
    IonRusu
    Nessuna valutazione finora
  • Lezione Linux n.1
    Lezione Linux n.1
    Documento4 pagine
    Lezione Linux n.1
    iciopi
    Nessuna valutazione finora
  • Lezione 08
    Lezione 08
    Documento4 pagine
    Lezione 08
    IonRusu
    Nessuna valutazione finora
  • Lezione 02 Linux
    Lezione 02 Linux
    Documento3 pagine
    Lezione 02 Linux
    iciopi
    Nessuna valutazione finora
  • Lezione 04
    Lezione 04
    Documento2 pagine
    Lezione 04
    IonRusu
    Nessuna valutazione finora