Gen 04 2008
Manuale su Licnux Capitolo 18 Manca un programma importante

Manca un programma importante
Finalmente, dopo tutte le volte che si è notato che un programma che vorremmo usare manca, impareremo ad installare nuovi pacchetti in modo molto semplice.
Si è già detto di quanto la gestione del filesystem di Linux, unitamente all’uso di un sistema di pacchetti, consentano di gestire efficientemente i programmi installati nel sistema. In Windows si lascia che chi
scrive il programma crei anche il programma di installazione. Quando un nuovo programma viene installato sul computer, esso verrà copiato in parte in una nuova directory (tipicamente C:\Programmi\Nome_programma), ed in parte in directory condivise (C:\Windows\ ed altre). Anche se il sistema in qualche modo ricorda chi ha messo questi files, quando si disinstalla un programma, o quando se ne installa una versione più recente con files di nome differente, è molto difficile dire se un file va tolto, o se è usato da qualche altro programma (è poi impossibile sapere a chi serva). In Linux questo non accade: grazie all’uso di un database, si sa precisamente a chi appartiene un file, e qualora si tenti di disinstallare un programma che contiene files fondamentali per altri, verrà dato un avvertimento del tipo:
“Il programma x è necessario all’esecuzione del programma y. Eliminando x, anche y verrà eliminato”, e si lascerà scegliere all’utente se eliminare tutto o salvare tutto.
Il database, inoltre, permette al sistema di ricordare tutti i programmi presenti nei cd di installazione, compresi quelli non installati, e di gestirli molto semplicemente. Ci sono poi dei database in rete, che permettono di tenere il computer costantemente aggiornato, e ne vedremo uno particolarmente utile.
Ci sono diversi metodi per accedere in modo semplice al sistema di gestione dei pacchetti: con il servizio presente nel menù applicazioni, con dei servizi web (automatici o meno) o andando a cercare i pacchetti sui cd di installazione.
Per usare il servizio di gestione pacchetti basato sui cd di installazione, dal menù delle applicazioni, è sufficiente andare in “Impostazioni di sistema” -> “Pacchetti”. una lista, poco dettagliata della situazione dei programmi nel nostro computer (Figura 1).
Premendo su dettagli, è possibile vedere una lista dettagliata dei programmi installati e ancora non installati (Figura 2).
Per esempio, andando a fare click accanto alla voce “Internet grafico”, è possibile installare ‘galeon’, il browser di cui abbiamo parlato in una delle lezioni precedenti senza poterlo usare, semplicemente facendo click nel quadratino alla sinistra del nome. Potete, per esempio, eliminare il programma ‘balsa’ dallo stesso menù, che è uno dei tanti clienti di posta installati da RedHat, che non offre niente di più di kmail, mozilla o evolution.
Confermando con il tasto ‘Chiudi’, si torna alla lista generica.
Andate per esempio nella categoria “Internet text based”, per installare ‘lynx’, il browser testuale di cui si è parlato (vi consiglio di usarlo almeno una volta da una shell, per avere un’idea di come alcuni utenti possano vedere le pagine).
Fate un giro fra tutte le categorie, per vedere come ci siano davvero i programmi più disparati (se avete una macchina fotografica digitale, in “Grafica” troverete alcuni programmi per poterla usare).
Ci sono poi numerosissimi server per servizi di rete, come server web, server FTP, server per database distribuiti e così via, ma vi consiglio di non installare niente sul vostro computer a meno che non siate davvero consapevoli di cosa state facendo: un server è una porta d’accesso al vostro computer che, se configurato male o non controllato, può facilitare il compito a degli hacker che cercano una macchina con cui giocherellare.

Figura 1: Gestione dei pacchetti
In strumenti di sviluppo potete installare numerosi linguaggi di programmazione, dei quali si è già parlato: sono solo una piccola parte dei compilatori/interpreti a disposizione, ma per un utente normale sono fin troppi!
Una volta scelti i pacchetti da installare, fate click sul tasto “Aggiornamento”, e se tutto va bene, dopo il controllo delle dipendenze, i nuovi programmi dovrebbero venire installati senza problemi nel computer. Tuttavia delle volte capita che ci sia un errore nella preparazione dei pacchetti, e che vi vengano richiesti dei pacchetti che il sistema non sa dove andare a cercare.
Le possibili soluzioni sono due: scriversi i nomi dei pacchetti necessari su un foglietto, cercarli su Internet ed installarli manualmente da una shell, oppure usare uno strumento per la gestione dei pacchetti un po’ più raffinato, che possa andare a cercare dei pacchetti su internet in maniera autonoma.

Figura 2: Pacchetti - una visione dettagliata
La prima soluzione è più complessa, ma funziona quasi sempre, mentre la seconda è meno stabile, ma decisamente più utile.
Vi presenterò una soluzione che dovrebbe essere più che ragionevole (ma stabile) per qualsiasi utente.
Un metodo automatico per la gestione dei pacchetti RedHat è il Red Carpet della Ximian, una società che offre anche un desktop Gnome molto arricchito (che presto scoprirete come installare, se lo volete).
Per scaricare il Red Carpet useremo il metodo manuale, così da vederlo ed usarlo almeno una volta nella vita (in realtà potrebbe servire per trovare delle versioni particolarmente nuove di programmi, come vedremo la prossima volta).
Esistono dei siti dedicati appositamente al mantenimento di database di pacchetti, come per esempio http://rpmfind.net. Da qui, potete digitare il nome di un pacchetto in un motore di ricerca, e navigare tra i risultati alla ricerca di quello di cui voi avete bisogno.
Cerchiamo dunque il pacchetto “redcarpet”, che sarà fondamentale in futuro. La ricerca restituisce un link (al sito della Ximian), attraverso cui travare più informazioni, e ben 112 pacchetti relativi a redcarpet.
Tra tutte le possibilità, bisognerebbe scegliere, se possibile, un pacchetto della RedHat: non essendo però redcarpet incluso nella distribuzione stessa, in questo caso dovremo cercarne uno diverso. Scegliete semplicemente la versione più recente (in questo momento è la 1.4.2) che dovrebbe comparire in cima alla lista, e l’architettura del vostro computer (i386 va bene per tutti i pc, i486 solo per i 486, i586 per Pentium e K5, i686 per Pentium 2,3,4 e K6/K7). Salvate il file con estensione rpm andando sopra il link, premendoci con il tasto destro del mouse, e scegliendo l’opzione “Save link target as”, e confermando alla richiesta di quale directory usare per salvare.
Una volta terminato il download, è sufficiente aprire una shell, e digitare il comando ‘su’ per diventare root (un semplice utente infatti non ha i permessi di installare programmi in directory condivise da tutti). Digitate poi ‘rpm –i nome_pacchetto’ per avviare l’installazione (in questo caso bisogna digitare ‘rpm –i red-carpet-1.2.4-1.ximian.6.i386.rpm’).
Una volta fatta l’installazione, basterà digitare da shell ‘red-carpet’ (vi consiglio di aggiungere un’icona sulla barra di GNOME o KDE per farlo con il solo click del mouse), e vi verrà chiesto di configurare il Proxy (se non savete un proxy, date “ok” senza scegliere niente).
Dopo un tempo più o meno lungo in cui il programma andrà a scaricarsi tutte le informazioni dei pacchetti a disposizione, vi dovrebbe apparire una finestra simile a quella in Figura 3.

Figura 3: Schermata di benvenuto di Red Carpet
Ora bisogna iscriversi ad uno o più canali di software che ci interessano: premendo su “Unsubscribed Channels” vedremo una lista di canali disponibili a cui non siamo ancora iscritti (Figura 4).
Tra tutti i canali a disposizione, dovremo scegliere di sicuro “Red Hat Linux 8.0”, che contiene i pacchetti relativi alla nostra distribuzione. Di tutti gli altri, alcuni sono per utenti piuttosto esperti, ed installano versioni sperimentali di alcuni programmi per chi ha voglia di provarli.
Potete iscrivervi, se volete, a “Ximian Desktop”, che installa una versione un po’ più carina del Desktop GNOME (se usate KDE dunque non fatelo!), e a “Ximian Evolution”, per avere sempre una versione aggiornata del cliente di posta.
Come già detto in una delle lezioni precedenti, “mono” è invece una piattaforma alternativa a .NET di Microsoft, anche se ancora piuttosto sperimentale.
Una volta fatto click su “RedHat Linux 8.0”, dovrebbe apparirvi una finestra simile a quella mostrata in Figura 5.

Figura 4: Canali disponibili
A questo punto, bisogna premere sul tasto “Subscribe” per abbonarsi, ed avere tutto il software a disposizione in modo molto intuitivo. Una volta avuta la conferma dell’iscrizione al canale, è sufficiente fare click sull’icona “Subscribed Channels” sulla sinistra della finestra, ed entrare nel canale RedHat. Qualora ci siano aggiornamenti che sarebbe meglio installare, questi vengono proposti in una lista, e si può far partire l’aggiornamento semplicemente selezionandoli tutti e premendo sul tasto “Update”.
Se non ci fossero aggiornamenti disponibili, allora si può premere sul tasto “Install”, per entrare nella finestra di installazione software (Figura 6).
Si può scorrere la lista alla ricerca del pacchetto desiderato, o lo si può cercare con “keyword search” (se non avete idee in particolare, provate a cercare xcdroast, un software per la masterizzazione). Una volta trovato, lo si seleziona premendo sul tasto alla sinistra del nome, e si preme il bottone “Install packages”. La cosa veramente bella di questo strumento è che tutte le dipendenze verranno risolte automaticamente (tranne alcuni casi in cui ci sono dei problemi, ed in cui è meglio lasciar perdere per un paio di giorni, entro i quali il problema verrà certamente sistemato), e TUTTI i pacchetti necessari per l’installazione per quello scelto da noi saranno scaricati ed installati.

Figura 5: Il canale RedHat

Figure 6: Scelta del software
Tuttavia, per vari motivi, alcune volte dei pacchetti importanti non sono presenti nella lista del Red Carpet: la soluzione è quella di usare il metodo “manuale” (cioè andare sul sito rpmfind.net, cercare i pacchetti desiderati ed installarli con il comando rpm da shell.
Io parlo con più enfasi di servizi basati su Internet perché ho una connessione alla rete quasi permanente e molto veloce: è dunque per me preferibile scaricare i pacchetti nella loro versione più recente (con dei problemi di sicurezza eventualmente risolti) che installare la versione presente nei cd di installazione.
E’ comunque possibile usare i pacchetti dei cd (saltando lo scomodo programma di gestione pacchetti presentato all’inizio della lezione) nel seguente modo.
Inserite un cd dei tre (normalmente si inizia con il primo), e montatelo (richiamo: da shell si digiti ‘mount /dev/cdrom’, da interfaccia grafica Gnome si faccia click con il tasto destro sullo sfondo, si selezioni “Dischi”->”Cdrom”, e da KDE si prema sull’icona del cd che dovrebbe già essere sullo sfondo).
Si vada nel cd (richiamo: da shell si digiti ‘cd /mnt/cdrom’, da interfaccia grafica si faccia click sull’icona del cd, qualora non si sia già aperta la finestra all’atto del montaggio), e ci si porti nella directory RedHat/RPMS (richiamo: dalla shell, essendo già nella directory /mnt/cdrom, si digiti ‘cd RedHat/RPMS’, da interfaccia grafica si faccia doppio click sulla cartella RedHat, ed al suo interno alla cartella RPMS).
Cerchiamo il pacchetto che ci interessa: da shell digitiamo “find –name “nomePacchetto” (dove come nomePacchetto possiamo anche dare un’espressione tipo “*galeon*”, se stiamo cercando qualcosa che sappiamo ha galeon nel nome, ma non ne ricordiamo tutte le parti), da interfaccia grafica scorriamo la lista dei pacchetti (in ordine alfabetico), oppure usiamo il servizio “Search for files”, nel menù delle applicazioni, mettendo il nome del pacchetto, e /mnt/cdrom/RedHat/RPMS nel campo “Search in folder” (lo si può trovare anche facendo click sul tasto “Browse”, in stile Windows).
Se non si trova il pacchetto, si può smontare il cd (richiamo: da shell digitiamo ‘umount /mnt/cdrom’, da interfaccia grafica facciamo click con il tasto destro del mouse sull’icona del cd, e selezioniamo “Espelli”), e riprovare con i seguenti (se proprio non c’è, non ci rimane che cercarlo in Internet).
Se invece c’è, possiamo installarlo (da shell: ‘rpm –i nomePacchetto’, da interfaccia grafica: click con tasto destro sul nome, selezionando “Apri con”->”Install packages”.)
Se ci fossero dipendenze, da interfaccia grafiche queste dovrebbero venir risolte automaticamente, mentre da shell dobbiamo cercare tutti i pacchetti la cui mancanza fa fallire l’instgallazione:
• se sono nello stesso cd, si può digitare ‘rpm –i listaPacchettiSeparatiDaSpazio’,
• se invece non ci fossero tutti, dobbiamo creare una directory che contenga tutti i pacchetti necessari, per poi installarli da li:
1. digitiamo ‘mkdir /tmp/pacchetti’, per creare una directory temporanea in /tmp di nome pacchetti
2. digitiamo ‘cp listaDeiPacchettiTrovatiSulCdAttualeSeparatiDaSpazi /tmp/pacchetti’ per copiare i pacchetti trovati finora (per esempio: cp pack1.rpm pack2 /tmp/pacchetti)
3. smontiamo il cd (come detto prima), inseriamo il secondo, cerchiamo i pacchetti mancanti con lo stesso metodo, copiamo quelli trovari in /tmp/pacchetti (e se ne mancano ancora, continuare con il terzo cd)
4. qualora mancassero dei pacchetti, andiamo a cercarli su Internet, scaricandoli sulla directory /tmp/pacchetti
5. andiamo nella directory /tmp/pacchetti, e digitiamo “rpm –i *rpm”
Il procedimento è in effetti complesso agli occhi di un neofita, ma è piuttosto meccanico (dunque al limite noioso, ma non difficile), e comunque di solito non è necessario.
In definitiva, abbiamo visto come cercare un pacchetto relativo alla distribuzione che abbiamo installato non è un’impresa tanto disperata, in quanto abbiamo a disposizione diversi metodi, tutti più o meno automatizzati. A volte le cose non vanno così bene, ma sono davvero dei casi rari che ad un utente inesperto si presentano di rado.
Nella prossima lezione vedremo cosa fare quando vogliamo installare una versione di un programma più recente, soprattutto se non troviamo il pacchetto rpm.
- Manuale su Linux Capitolo 8 Scelta dei pacchetti da installare
- Manuale su Linux Capitolo 23 Esercitazione
- Manuale su Linux Capitolo 20 Devo disinstallare un programma
- Manuale su Linux Capitolo 19 Ho bisogno della nuova versione di un programma che ho già!
- Manuale su Linux Capitolo 25 Internet
- Manuale su Linux Capitolo 27 I suoni e i video
- Apache Web Server - Lezione 2 Il primo avvio (fallito) di Apache
- Manule su Linux Capitolo 17 Esercitazione
- Manuale su Linux Capitolo 7 Configurazione di base di rete
- Manuale su Linux Capitolo 21 Come fare a leggere questi dati generati da un programma windows?
- Manuale su Linux Capitolo 22 Voglio passare ad una versione di Linux più recente
- Manuale su Linux Capitolo 23 Esercitazione
- Manuale su Linux Capitolo 26 La Grafica
- Manuali su Linux Capitolo 28 Peer to Peer (eredi di Napster)
- Manuale su Linux Capitolo 11 La shell (1)

