- initial import of revision 374 from cnc
[apt.git] / doc / guide.it.sgml
1 <!-- -*- mode: sgml; mode: fold -*- -->
2 <!doctype debiandoc  PUBLIC  "-//DebianDoc//DTD DebianDoc//EN">
3 <book>
4 <title>Guida dell'utente di APT</title>
5
6 <author>Jason Gunthorpe <email>jgg@debian.org</email></author>
7 <author>Traduzione di Eugenia Franzoni <email>eugenia@linuxcare.com</email>
8 </author>
9 <version>$Id: guide.it.sgml,v 1.5 2003/04/26 23:26:13 doogie Exp $</version>
10
11 <abstract>
12 Guida per l'uso del gestore di pacchetti APT.
13 </abstract>
14
15 <copyright>
16 Copyright &copy; Jason Gunthorpe, 1998.
17
18 <p>Ed. italiana Copyright &copy; Eugenia Franzoni, 2000.
19
20 <p>
21 "APT" e questo documento sono software libero, e li si può ridistribuire 
22 e/o modificare secondo i termini della Licenza Pubblica Generica GNU
23 (GPL), pubblicata dalla Free Software Foundation, nella versione 2 o
24 (se preferite) qualsiasi versione successiva.
25
26 <p>"APT" and this document are free software; you can redistribute them and/or
27 modify them under the terms of the GNU General Public License as published
28 by the Free Software Foundation; either version 2 of the License, or (at your
29 option) any later version.
30
31 <p>
32 Per ulteriori dettagli sui sistemi GNU/Linux si veda il testo
33 completo della licenza nel file
34 /usr/share/common-licenses/GPL.
35 </copyright>
36
37 <toc sect>
38
39 <!-- General                                                           {{{ -->
40 <!-- ===================================================================== -->
41 <chapt>Descrizione generale
42
43 <p>
44 Il pacchetto APT al momento contiene due sezioni, il metodo APT 
45 <prgn>dselect</> e l'interfaccia utente a linea di comando <prgn>apt-get</>;
46 entrambi danno modo di installare e rimuovere pacchetti, e di scaricarne
47 altri da Internet.
48
49 <sect>Anatomia del sistema di pacchettizzazione
50 <p>
51 Il sistema di pacchettizzazione di Debian contiene un gran numero di
52 informazioni associate a ciascun pacchetto, per assicurarsi che si
53 integri facilmente ed in maniera pulita nel sistema; la più
54 importante di esse è il sistema di dipendenze.
55
56 <p>
57 Il sistema di dipendenze permette ai singoli programmi di fare uso
58 degli elementi condivisi del sistema, quali le librerie; per 
59 ridurre il numero di elementi che l'utente medio debba installare,
60 le porzioni di programmi che non vengono usate spesso vengono poste
61 in pacchetti separati. Inoltre, è possibile avere più di una scelta per
62 cose quali i programmi di posta elettronica, i server X e così via.
63
64 <p>
65 Il primo passo per capire il sistema di dipendenze è la 
66 comprensione del concetto di dipendenza semplice: un pacchetto richiede
67 che un altro sia installato insieme ad esso per poter
68 funzionare.
69
70
71 <p>
72 Ad esempio, mail-crypt è un'estensione di emacs che aiuta a criptare le
73 mail con PGP. Se PGP non è installato, mail-crypt è inutile, quindi
74 mail-crypt ha una dipendenza semplice da PGP. Inoltre, dato che si tratta
75 di un'estensione di emacs, mail-crypt dipende anche da emacs, senza il
76 quale è totalmente inutile.
77
78 <p>
79 L'altro tipo di dipendenza importante da capire è la dipendenza di
80 conflitto; con questa, un pacchetto che venga installato insieme ad un
81 altro pacchetto non funziona, e si hanno seri problemi al sistema.
82 Come esempio, si consideri un programma di trasporto della posta,
83 quale sendmail, exim o qmail: non è possibile averne due contemporaneamente,
84 perché entrambi hanno bisogno di restare in ascolto sulla stessa porta di rete 
85 per ricevere la posta. Tentare di installarne due danneggerebbe seriamente il
86 sistema, quindi ciascun programma di trasporto della posta ha una
87 dipendenza di conflitto con tutti gli altri.
88
89 <p>
90 Come ulteriore complicazione, c'è la possibilità che un pacchetto
91 voglia prendere il posto di un altro; ad esempio, exim e sendmail per molte
92 cose sono identici, dato che entrambi gestiscono la posta e comprendono
93 un'interfaccia comune, quindi il sistema di pacchettizzazione deve dichiarare
94 che sono entrambi agenti di trasporto della posta, e che gli altri
95 pacchetti a cui serve uno dei due devono dipendere da un pacchetto
96 fittizio agente-di-trasporto-della-posta. Quando si modificano
97 a mano i pacchetti, questo può portare a moltissima confusione.
98
99 <p>
100 In ciascun momento una singola dipendenza può essere soddisfatta o meno
101 dai pacchetti già installati; APT cerca di risolvere i problemi
102 di dipendenze con un buon numero di algoritmi automatici, che aiutano
103 a selezionare i pacchetti da installare.
104 </sect>
105
106 </chapt>
107                                                                   <!-- }}} -->
108 <!-- apt-get                                                           {{{ -->
109 <!-- ===================================================================== -->
110 <chapt>apt-get
111
112 <p>
113 <prgn>apt-get</> fornisce un modo semplice di installare i pacchetti dalla
114 linea di comando. Diversamente da <prgn>dpkg</>, <prgn>apt-get</> non 
115 capisce i nomi dei file .deb, ma utilizza il vero nome dei pacchetti,
116 e può installare archivi .deb solo da una fonte.
117
118 <p>
119 La prima <footnote>Se state usando un proxy server http, dovete prima ancora
120 impostare la variabile d'ambiente http_proxy; vedere 
121 sources.list(5).</footnote>
122 cosa da fare prima di usare <prgn>apt-get</> è impostare l'elenco dei
123 pacchetti dalle fonti in modo che il programma sappia quali pacchetti
124 sono disponibili. Lo si fa con <tt>apt-get update</>. Ad esempio,
125
126 <p>
127 <example>
128 # apt-get update
129 Get http://ftp.de.debian.org/debian-non-US/ stable/binary-i386/ Packages
130 Get http://llug.sep.bnl.gov/debian/ testing/contrib Packages
131 Reading Package Lists... Done
132 Building Dependency Tree... Done
133 </example>
134
135 <p>
136 Dopo aver aggiornato l'elenco si possono usare molti comandi:
137 <taglist>
138 <tag>upgrade<item>
139 Upgrade tenterà di fare un aggiornamento indolore del sistema completo,
140 senza installare nuovi pacchetti o rimuoverne di esistenti, e senza
141 aggiornare un pacchetto che possa rovinarne altri. Upgrade farà un elenco
142 di tutti i pacchetti che non avrà potuto aggiornare, cosa che in genere
143 significa che questi dipendono da nuovi pacchetti o vanno in conflitto
144 con altri. Per forzare la loro installazione si può usare 
145 <prgn>dselect</> o <tt>apt-get install</>.
146
147 <tag>install<item>
148 Install viene usato per installare i singoli pacchetti dando il loro nome. 
149 Il pacchetto viene automaticamente scaricato ed installato, cosa molto utile
150 se già se ne conosce il nome e non si vuole entrare in grafica per 
151 selezionarlo. Al comando si possono passare anche più pacchetti, che saranno
152 tutti scaricati. L'installazione automatica cerca di risolvere i problemi
153 di dipendenze con gli altri pacchetti elencati, stampa un riassunto e
154 chiede conferma se si devono modificare altri pacchetti che non siano quelli
155 sulla linea di comando.
156
157 <tag>dist-upgrade<item>
158 Dist-upgrade fa un aggiornamento completo, progettato in modo da rendere 
159 semplici gli aggiornamenti tra versioni di Debian. Usa un algoritmo 
160 sofisticato per determinare il miglior insieme di pacchetti da installare,
161 aggiornare e rimuovere per arrivare alla versione più aggiornata
162 del sistema possibile. In alcune situazioni può essere vantaggioso usare
163 dist-upgrade invece che sprecare tempo a risolvere manualmente le 
164 dipendenze con <prgn>dselect</>. Una volta completato dist-upgrade, si può
165 usare <prgn>dselect</> per installare eventuali pacchetti che sono stati
166 tralasciati.
167
168 <p>
169 È importante controllare attentamente cosa intende fare dist-upgrade,
170 dato che le sue decisioni a volte possono essere abbastanza sorprendenti.
171 </taglist>
172
173 <p>
174 <prgn>apt-get</> ha diverse opzioni a linea di comando, che vengono 
175 documentate dettagliatamente nella sua pagina man, 
176 <manref name="apt-get" section="8">. L'opzione più utile è 
177 <tt>-d</>, che non installa i file scaricati: se il sistema deve
178 scaricare un gran numero di pacchetti, non è bene farglieli installare
179 subito, in caso dovesse andare male qualcosa. Dopo aver usato <tt>-d</>,
180 gli archivi scaricati possono essere installati semplicemente dando di
181 nuovo lo stesso comando senza l'opzione <tt>-d</>.
182
183 </chapt>
184                                                                   <!-- }}} -->
185 <!-- DSelect                                                           {{{ -->
186 <!-- ===================================================================== -->
187 <chapt>DSelect
188 <p>
189 Il metodo APT di <prgn>dselect</> fornisce tutte le funzionalità di APT
190 all'interno dell'interfaccia grafica di selezione dei pacchetti 
191 <prgn>dselect</>. <prgn>dselect</> viene usato per selezionare i pacchetti
192 da installare o rimuovere, ed APT li installa.
193
194 <p>
195 Per abilitare il metodo APT dovete selezionare [A]ccess in <prgn>dselect</> 
196 e scegliere il metodo APT; vi verrà chiesto un insieme di fonti
197 (<em>Sources</>), cioè di posti da cui scaricare gli archivi.
198 Tali fonti possono essere siti Internet remoti, mirror locali di Debian
199 o CDROM; ciascuna di esse può fornire una parte dell'archivio Debian,
200 ed APT le combinerà insieme in un set completo di pacchetti. Se avete un
201 CDROM è una buona idea indicare quello per primo, e poi i mirror, in modo
202 da avere accesso alle ultime versioni; APT userà in questo modo automaticamente
203 i pacchetti sul CDROM prima di scaricarli da Internet.
204
205 <p>
206 <example>
207    Set up a list of distribution source locations
208          
209  Please give the base URL of the debian distribution.
210  The access schemes I know about are: http file
211            
212  For example:
213       file:/mnt/debian,
214       ftp://ftp.debian.org/debian,
215       http://ftp.de.debian.org/debian,
216       
217       
218  URL [http://llug.sep.bnl.gov/debian]: 
219 </example>
220
221 <p>
222 La configurazione delle fonti inizia chiedendo la base dell'archivio Debian,
223 propone come default un mirror HTTP, e poi chiede la distribuzione
224 da scaricare.
225
226 <p>
227 <example>
228  Please give the distribution tag to get or a path to the
229  package file ending in a /. The distribution
230  tags are typically something like: stable unstable testing non-US
231    
232  Distribution [stable]: 
233 </example>
234
235 <p>
236 La distribuzione (``distribution'') fa riferimento alla versione Debian
237 dell'archivio: <em>stable</> è l'ultima rilasciata, ed <em>unstable</> 
238 è quella di sviluppo. <em>non-US</> è disponibile solo su alcuni mirror,
239 e contiene dei pacchetti in cui viene usata della tecnologia di criptazione
240 o altre cose che non possano essere esportate dagli Stati Uniti; importare
241 questi pacchetti negli US è però legale.
242
243 <p>
244 <example>
245  Please give the components to get
246  The components are typically something like: main contrib non-free
247   
248  Components [main contrib non-free]:
249 </example>
250
251 <p>
252 L'elenco dei componenti (``components'') si riferisce alla lista di
253 sotto-distribuzioni da scaricare. Ciascuna distribuzione viene divisa in
254 base al copyright del software: la main contiene pacchetti la cui licenza
255 soddisfa le DFSG, mentre contrib e non-free contengono software che ha
256 diverse restrizioni sull'uso e sulla distribuzione.
257
258 <p>
259 Si possono inserire un qualsiasi numero di fonti, e lo script di 
260 configurazione continuerà a chiedere fino a che abbiate specificato tutti gli
261 elementi che volete.
262
263 <p>
264 Prima di cominciare ad usare <prgn>dselect</> è necessario aggiornare 
265 l'elenco dei pacchetti disponibili selezionando [U]pdate dal menù:
266 si tratta di un sovrainsieme di ciò che fa <tt>apt-get update</>,
267 che rende l'informazione scaricata disponibile a
268 <prgn>dselect</>. [U]pdate deve essere fatto anche se prima è stato dato 
269 <tt>apt-get update</>.
270
271 <p>
272 Si può a questo punto continuare selezionando i pacchetti desiderati
273 usando [S]elect e poi installando con [I]nstall. Se si usa il metodo APT,
274 i comandi [C]onfig e [R]emove non hanno significato, dato che entrambe le
275 fasi sono contenute in [I]nstall.
276
277 <p>
278 Per default APT rimuoverà automaticamente i pacchetti che sono stati installati
279 con successo. Per modificare questo comportamento, si inserisca 
280 <tt>Dselect::clean "prompt";</> in /etc/apt/apt.conf.
281
282 </chapt>
283                                                                   <!-- }}} -->
284 <!-- The Interfaces                                                    {{{ -->
285 <!-- ===================================================================== -->
286 <chapt>L'interfaccia
287
288 <p>
289 Entrambi i metodi,  <prgn>dselect</> APT ed <prgn>apt-get</>, condividono la
290 stessa interfaccia; si tratta di un sistema semplice che indica in genere
291 cosa sta per fare, e poi lo fa.
292 <footnote>
293 Il metodo <prgn>dselect</> è in realtà un insieme di script di wrapper ad
294 <prgn>apt-get</>. Il metodo fornisce delle funzionalità maggiori del
295 solo <prgn>apt-get</>.
296 </footnote>
297 Dopo la stampa di un riassunto delle operazioni che saranno fatte,
298 APT stampa dei messaggi informativi sullo stato del sistema, in modo che
299 possiate avere davanti agli occhi a quale punto dell'operazione si trova,
300 e quanto ancora si deve aspettare.
301
302 <!-- ===================================================================== -->
303 <sect>Avvio
304
305 <p>
306 Prima di ciascuna operazione, eccetto l'aggiornamento della lista, APT
307 compie alcune operazioni per prepararsi, oltre a dei controlli dello
308 stato del sistema. In qualsiasi momento le stesse operazioni possono essere
309 fatte con <tt>apt-get check</>
310 <p>
311 <example>
312 # apt-get check
313 Reading Package Lists... Done
314 Building Dependancy Tree... Done
315 </example>
316
317 <p>
318 La prima cosa che fa è leggere tutti i file dei pacchetti in memoria,
319 usando uno schema di caching in modo da rendere la stessa operazione più
320 veloce la seconda volta che la si fa. Se alcuni dei file dei pacchetti
321 non vengono trovati, sono ignorati e viene stampato un avvertimento
322 all'uscita di apt-get.
323
324 <p>
325 L'operazione finale consiste in un'analisi dettagliata delle
326 dipendenze del sistema: viene controllato che tutte le dipendenze dei
327 singoli pacchetti installati o non scompattati siano soddisfatte.
328 Se vengono individuati dei problemi, viene stampato un resoconto,
329 ed <prgn>apt-get</> esce senza eseguire alcuna operazione.
330
331 <p>
332 <example>
333 # apt-get check
334 Reading Package Lists... Done
335 Building Dependancy Tree... Done
336 You might want to run apt-get -f install' to correct these.
337 Sorry, but the following packages have unmet dependencies:
338   9fonts: Depends: xlib6g but it is not installed
339   uucp: Depends: mailx but it is not installed
340   blast: Depends: xlib6g (>= 3.3-5) but it is not installed
341   adduser: Depends: perl-base but it is not installed
342   aumix: Depends: libgpmg1 but it is not installed
343   debiandoc-sgml: Depends: sgml-base but it is not installed
344   bash-builtins: Depends: bash (>= 2.01) but 2.0-3 is installed
345   cthugha: Depends: svgalibg1 but it is not installed
346            Depends: xlib6g (>= 3.3-5) but it is not installed
347   libreadlineg2: Conflicts:libreadline2 (<< 2.1-2.1)
348 </example>
349
350 <p>
351 In questo esempio il sistema ha molti problemi, tra cui uno piuttosto serio
352 con la libreadlineg2. Per ciascun pacchetto che ha dipendenze non soddisfatte,
353 viene stampata una linea che indica il pacchetto che crea il problema e
354 quali problemi ci sono. Viene inclusa inoltre una breve spiegazione
355 del perché il pacchetto ha un problema di dipendenze.
356
357 <p>
358 Ci sono due modi in cui un sistema possa arrivare in uno stato problematico
359 di questo genere: il primo è causato dal fatto che <prgn>dpkg</> possa
360 mancare alcune relazioni sottili tra pacchetti durante un aggiornamento
361 del sistema<footnote>APT considera comunque tutte le dipendenze note,
362 e cerca di prevenire problemi ai pacchetti</footnote>; il secondo è possibile
363 se l'installazione di un pacchetto fallisce, ed in questo caso è possibile
364 che un pacchetto venga scompattato senza che tutti quelli da cui dipende
365 siano stati installati.
366
367 <p>
368 La seconda possibilità è meno seria della prima, dato che APT gestisce
369 l'ordine di installazione dei pacchetti; in entrambi i casi l'opzione
370 <tt>-f</> di <prgn>apt-get</> gli farà trovare una soluzione e lo farà
371 continuare. Il metodo APT di <prgn>dselect</> comprende sempre l'opzione 
372 <tt>-f</> per permettere di configurare facilmente anche i pacchetti con
373 script errati.
374
375 <p>
376 Se viene usata però l'opzione <tt>-f</> per correggere un sistema in uno
377 stato molto problematico, è possibile che anche con l'opzione il programma
378 fallisca, subito o durante la sequenza di installazione. In entrambi i casi
379 è necessario usare dpkg a mano (probabilmente usando delle opzioni
380 di forzatura) per correggere quanto basta per poter fare continuare APT.
381 </sect>
382
383 <!-- ===================================================================== -->
384 <sect>Il resoconto sullo stato
385
386 <p>
387 Prima di procedere,  <prgn>apt-get</> presenterà un resoconto delle operazioni
388 che sta per fare. In genere tale resoconto varierà con il tipo di operazioni
389 da fare, ma ci sono alcuni elementi comuni: in tutti i casi gli elenchi 
390 dipendono dallo stato finale delle cose, e tengono conto dell'opzione 
391 <tt>-f</> e di altre attività rilevanti per il comando da eseguire.
392
393 <sect1>L'elenco dei pacchetti Extra
394 <p>
395 <example>
396 The following extra packages will be installed:
397   libdbd-mysql-perl xlib6 zlib1 xzx libreadline2 libdbd-msql-perl
398   mailpgp xdpkg fileutils pinepgp zlib1g xlib6g perl-base
399   bin86 libgdbm1 libgdbmg1 quake-lib gmp2 bcc xbuffy
400   squake pgp-i python-base debmake ldso perl libreadlineg2
401   ssh
402 </example>
403
404 <p>
405 L'elenco dei pacchetti Extra mostra tutti i pacchetti che verranno installati
406 o aggiornati oltre a quelli indicati sulla linea di comando. Viene generato
407 solo per il comando <tt>install</>. I pacchetti elencati sono spesso il
408 risultato di un'operazione di auto installazione (Auto Install).
409 </sect1>
410
411 <sect1>I pacchetti da rimuovere
412 <p>
413 <example>
414 The following packages will be REMOVED:
415   xlib6-dev xpat2 tk40-dev xkeycaps xbattle xonix
416   xdaliclock tk40 tk41 xforms0.86 ghostview xloadimage xcolorsel
417   xadmin xboard perl-debug tkined xtetris libreadline2-dev perl-suid
418   nas xpilot xfig 
419 </example>
420
421 <p>
422 L'elenco dei pacchetti da rimuovere (Remove) indica tutti i pacchetti che
423 verranno rimossi dal sistema. Può essere mostrato per una qualsiasi delle
424 operazioni, e deve sempre essere esaminato attentamente per assicurarsi
425 che non venga eliminato qualcosa di importante. Con l'opzione <tt>-f</>
426 è particolarmente probabile che vengano eliminati dei pacchetti, ed in questo
427 caso va fatta estrema attenzione. La lista può contenere dei pacchetti
428 che verranno rimossi perché sono già rimossi parzialmente, forse a causa
429 di un'installazione non terminata correttamente.
430 </sect1>
431
432 <sect1>L'elenco dei nuovi pacchetti installati
433 <p>
434 <example>
435 The following NEW packages will installed:
436   zlib1g xlib6g perl-base libgdbmg1 quake-lib gmp2 pgp-i python-base
437 </example>
438
439 <p>
440 L'elenco dei nuovi pacchetti installati (New) è semplicemente un appunto
441 su quello che accadrà. I pacchetti nell'elenco non sono al momento installati
442 nel sistema, ma lo saranno alla fine delle operazioni di APT.
443 </sect1>
444
445 <sect1>L'elenco dei pacchetti trattenuti
446 <p>
447 <example>
448 The following packages have been kept back
449   compface man-db tetex-base msql libpaper svgalib1
450   gs snmp arena lynx xpat2 groff xscreensaver
451 </example>
452
453 <p>
454 In ogni caso in cui il sistema viene aggiornato nel suo insieme, c'è la
455 possibilità che non possano venire installate nuove versioni di alcuni 
456 pacchetti, dato che potrebbero richiedere l'installazione di pacchetti non
457 presenti nel sistema, o entrare in conflitto con altri già presenti. 
458 In questo caso, il pacchetto viene elencato nella lista di quelli
459 trattenuti (Kept Back). Il miglior modo per convincere i pacchetti 
460 elencati in questa lista è di installarli con <tt>apt-get install</> o 
461 usare <prgn>dselect</> per risolvere i problemi.
462 </sect1>
463
464 <sect1>Messaggi di attenzione sui pacchetti trattenuti
465 <p>
466 <example>
467 The following held packages will be changed:
468   cvs 
469 </example>
470
471 <p>
472 A volte si può richiedere ad APT di installare un pacchetto
473 che è stato trattenuto; in questi casi viene stampato un messaggio di
474 attenzione, che avverte che il pacchetto verrà modificato. Questo 
475 dovrebbe accadere solo durante operazioni di dist-upgrade o di install.
476 </sect1>
477
478 <sect1>Resoconto finale
479 <p>
480 Infine, APT stamperà un riassunto di tutte le modifiche che accadranno.
481
482 <p>
483 <example>
484 206 packages upgraded, 8 newly installed, 23 to remove and 51 not upgraded.
485 12 packages not fully installed or removed.
486 Need to get 65.7M/66.7M of archives. After unpacking 26.5M will be used. 
487 </example>
488
489 <p>
490 La prima linea del riassunto è semplicemente una versione ridotta di tutte
491 le liste, ed include il numero di aggiornamenti -- cioè dei pacchetti
492 già installati per cui sono disponibili nuove versioni. La seconda
493 linea indica il numero di pacchetti con problemi di configurazione,
494 probabilmente in conseguenza di un'installazione non andata a buon fine.
495 La linea finale indica i requisiti di spazio dell'installazione: i primi
496 due numeri indicano rispettivamente il numero di byte che devono
497 essere trasferiti da posizioni remote, ed il secondo la dimensione totale
498 di tutti gli archivi necessari per l'installazione. Il numero successivo
499 indica la differenza in dimensione tra i pacchetti già installati
500 e quelli che lo saranno, ed è approssimativamente equivalente allo spazio
501 richiesto in /usr dopo l'installazione. Se si stanno rimuovendo dei
502 pacchetti, il valore può indicare lo spazio che verrà liberato.
503
504 <p>
505 Si possono generare altri resoconti usando l'opzione -u per mostrare
506 i pacchetti da aggiornare, ma sono simili all'esempio precedente.
507 </sect>
508
509 <!-- ===================================================================== -->
510 <sect>La visualizzazione dello stato
511 <p>
512 Durante il download degli archivi e dei file dei pacchetti, APT
513 stampa una serie di messaggi di stato.
514
515 <p>
516 <example>
517 # apt-get update
518 Get:1 http://ftp.de.debian.org/debian-non-US/ stable/non-US/ Packages
519 Get:2 http://llug.sep.bnl.gov/debian/ testing/contrib Packages
520 Hit http://llug.sep.bnl.gov/debian/ testing/main Packages
521 Get:4 http://ftp.de.debian.org/debian-non-US/ unstable/binary-i386/ Packages
522 Get:5 http://llug.sep.bnl.gov/debian/ testing/non-free Packages
523 11% [5 testing/non-free `Waiting for file' 0/32.1k 0%] 2203b/s 1m52s
524 </example>
525
526 <p>
527 Le linee che cominciano con <em>Get</> vengono stampate quando APT inizia
528 a scaricare un file, e l'ultima linea indica il progresso dell'operazione.
529 Il primo valore in percentuale indica la percentuale totale di tutti i file;
530 dato che la dimensione dei file Package non è nota, purtroppo a volte
531 <tt>apt-get update</> fa una stima poco accurata.
532
533 <p>
534 La sezione successiva della linea di stato viene ripetuta una volta per 
535 ciascuna fase del download, ed indica l'operazione in corso, insieme
536 ad alcune informazioni utili su cosa stia accadendo. A volte questa
537 sezione contiene solamente <em>Forking</>, che significa che il sistema
538 operativo sta caricando il modulo. La prima parola dopo la parentesi quadra
539 aperta è il nome breve dell'oggetto che si sta scaricando, che per gli archivi 
540 è il nome del pacchetto.
541
542 <p>
543 All'interno delle virgolette c'è una stringa informativa, che indica il 
544 progresso della fase di negoziazione del download. Tipicamente comincia con
545 <em>Connecting</>, procede con <em>Waiting for file</> e poi con 
546 <em>Downloading</> o <em>Resuming</>. Il valore finale è il numero di byte 
547 che sono stati scaricati dal sito remoto: una volta cominciato il 
548 download viene rappresentato come <tt>102/10.2k</>, che indica che
549 sono stati scaricati 102 byte di 10.2 kilobyte. La dimensione totale
550 viene sempre espressa in notazione a quattro cifre, per risparmiare 
551 spazio. Dopo la dimensione viene indicato un indicatore
552 progressivo della percentuale del file. Il penultimo elemento è la velocità
553 istantanea media, che viene aggiornata ogni 5 secondi, e riflette la
554 velocità di trasferimento dei dati in quel periodo. Infine, viene 
555 visualizzato il tempo stimato per il trasferimento, che viene aggiornato
556 periodicamente e riflette il tempo necessario per completare tutte le
557 operazioni alla velocità di trasferimento mostrata.
558
559 <p> 
560 La visualizzazione dello stato viene aggiornata ogni mezzo secondo per
561 fornire un feedback costante del processo di download, e le linee Get
562 scorrono indietro quando viene cominciato il download di un nuovo file.
563 Dato che la visualizzazione dello stato viene costantemente
564 aggiornata, non è adatta per essere registrata in un file; per non 
565 visualizzarla si può usare l'opzione <tt>-q</>.
566 </sect>
567
568 <!-- ===================================================================== -->
569 <sect>Dpkg
570
571 <p>
572 APT usa <prgn>dpkg</> per installare gli archivi e passerà all'interfaccia
573 <prgn>dpkg</> una volta finito il download. 
574 <prgn>dpkg</> porrà anche alcune domande durante la manipolazione dei
575 pacchetti, ed i pacchetti stessi 
576 potranno farne altre. Prima di ciascuna domanda viene
577 proposta una descrizione di quello che sta per chiedere, e le domande
578 sono troppo diverse per poter essere discusse in maniera completa in questa
579 occasione.
580 </sect>
581
582 </chapt>
583                                                                   <!-- }}} -->
584
585 </book>