lunedì 26 luglio 2010

Come Funziona APT

Fino ad oggi quale è stato il mio problema più grosso?

Sapere dove trovare/archiviare documentazione sul nostro OS preferito.

Ebbene in Lab of Gods da oggi posterò tutti i link qui gli articoli secondo me interessanti che leggo in giro e li metto a disposizione dei lettori casuali sperando che altri come me ne traggano beneficio.

P.s.

Chiunque abbia a disposizione materiale che desidera condividere non deve far altro che  scrivermi una mail per vedere il contenuto pubblicato.

Oggi si parla di:

Come Funziona APT


APT è l’acronimo di Advanced Packaging Tool ed è un gestore di pacchetti da linea di comando che è divenuto uno standard nelle distribuzione Debian e sue derivate.

Cerchiamo di capire passo passo come funziona APT:
Prima di tutto per capire il funzionamento di APT bisogna sapere cosa sono i repository.
Il termine “repository” può essere tradotto in italiano come “deposito” e non è altro che un archivio contenente una lista di pacchetti dal quale è possibile attingere per l’installazione di software in ambiente GNU/Linux.

Ogni distribuzione GNU/Linux ha i propri repository ufficiali (curati dal team di sviluppo) e non ufficiali (curati da persone esterne al team) ed essi possono essere sia locali (CD-ROM o DVD) oppure remoti (esempio i repository ufficiali raggiungibili via http o ftp).  (tratto da Linuxpedia)
La sources.list non è altro che un file di testo localizzata in /etc/apt/  e contenente un elenco di repository.

Le righe presenti nella sources.list possono essere commentate oppure no, cioè precedute dal simbolo “#” oppure no. 

Se la riga relativa ad un repository è commentata allora vuol dire che il relativo repository è stato disattivato dall’utente e pertanto non verra sfruttato da APT.
Il sistema di gestione dei pacchetti usa un suo database per tenere traccia di quali pacchetti sono installati, quali non lo sono e quali sono disponibili per l’installazione.  Il programma apt-get usa questo database per capire come installare i pacchetti richiesti dall’utente e per scoprire quali ulteriori pacchetti sono necessari per farli funzionare correttamente (dipendenze). (Tratto dai manuali http://www.debian.org)
Generalmente nei repository debian e derivate ci sono 3 file:
  1. Packages: non è altro che un file di testo contenente le informazioni relative ai singoli pacchetti contenuti nel repository (indice).  All’interno di questo file per ogni pacchetto presente nel repository vengono riportate le seguenti voci:

    • Package
    • Source
    • Priority
    • Section
    • Installed-Size
    • Maintainer
    • Architecture
    • Version
    • Recommends
    • Replaces
    • Suggests
    • Depends
    • Conflicts
    • Filename
    • Size
    • MD5sum
    • Description
     
  2. Packages.gz: non è altro che la versione compressa del file di testo Packages
  3. Release: è un file di testo che contiene le informazioni relative all’architettura, distribuzione linux, e versione per la quale il proprietario dei repository ha realizzato i pacchetti debian ivi presenti.
Ogni qualvolta eseguiamo il comando “sudo apt-get update” vengono scaricati i file Packages.gz presenti in tutti i repository inseriti nella sources.list.  I file Packages.gz vengono estratti e conservati nella cartella /var/lib/apt/lists.

Una volta scaricati questi file contenenti gli indici dei pacchetti disponibili nei repository, APT può confrontare le versioni dei pacchetti disponibili nei repository con le versioni dei pacchetti installati sulla vostra distro.

Se sono disponibili nei repository versioni più aggiornate dei pacchetti installati, APT vi propone l’aggiornamento che viene attuato quando eseguite il comando “sudo apt-get dist-upgrade”.

Ogni volta che eseguite l’aggiornamento della vostra distro oppure installare dei nuovi pacchetti (tramite “sudo apt-get install nomepacchetto) APT legge dal file di indice (Packages) presente in /var/lib/apt/lists/ la locazione nel pacchetto all’interno del repository (specificata dalla voce Filename). 

Dopodichè APT scarica il pacchetto dalla locazione appena letta. Una volta che è stato scaricato il pacchetto, viene passato a dpkg che si occuperà di installarlo.

Inoltre un grosso vantaggio che si riscontra nell’uso di APT è che quando si installa un pacchetto non c’è bisogno di preoccuparsi delle dipendenze. Infatti come si vede tra le voci presenti nel file Packages vengono specificati eventuali pacchetti raccomandati, suggeriti,  da rimpiazzare, le dipendenze e i conflitti da risolvere. In questo modo APT può automaticamente risolvere i conflitti, soddisfare le dipendenze e suggerire l’installazione di pacchetti che possono risultare utili.

Nessun commento:

Posta un commento