This file is indexed.

/usr/share/doc/apt-doc/guide.it.html/ch4.html is in apt-doc 1.0.9.8.4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Capitolo 4. L'interfaccia</title>
    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"/>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <link rel="home" href="index.html" title="Guida dell'utente di APT"/>
    <link rel="up" href="index.html" title="Guida dell'utente di APT"/>
    <link rel="prev" href="ch3.html" title="Capitolo 3. DSelect"/>
  </head>
  <body>
    <div class="navheader">
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">Capitolo 4. L'interfaccia</th>
        </tr>
        <tr>
          <td align="left"><a accesskey="p" href="ch3.html">Indietro</a> </td>
          <th width="60%" align="center"> </th>
          <td align="right"> </td>
        </tr>
      </table>
      <hr/>
    </div>
    <div class="chapter">
      <div class="titlepage">
        <div>
          <div>
            <h1 class="title"><a id="ch4"/>Capitolo 4. L'interfaccia</h1>
          </div>
        </div>
      </div>
      <div class="toc">
        <p>
          <strong>Indice</strong>
        </p>
        <dl class="toc">
          <dt>
            <span class="section">
              <a href="ch4.html#s4.1">4.1. Avvio</a>
            </span>
          </dt>
          <dt>
            <span class="section">
              <a href="ch4.html#s4.2">4.2. Il resoconto sullo stato</a>
            </span>
          </dt>
          <dt>
            <span class="section">
              <a href="ch4.html#s4.3">4.3. La visualizzazione dello stato</a>
            </span>
          </dt>
          <dt>
            <span class="section">
              <a href="ch4.html#s4.4">4.4. Dpkg</a>
            </span>
          </dt>
        </dl>
      </div>
      <p>
Both that APT <span class="command"><strong>dselect</strong></span> method and
<span class="command"><strong>apt-get</strong></span> share the same interface. It is a simple system
that generally tells you what it will do and then goes and does
it. <a href="#ftn.idp52530144" class="footnote" id="idp52530144"><sup class="footnote">[2]</sup></a> After printing out a summary of
what will happen APT then will print out some informative status messages so
that you can estimate how far along it is and how much is left to do.
</p>
      <div class="section">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title"><a id="s4.1"/>4.1. Avvio</h2>
            </div>
          </div>
        </div>
        <p>
Prima di ogni operazione, eccetto update, APT compie alcune operazioni per
preparare il suo stato interno; fa inoltre dei controlli sullo stato del
sistema. In qualsiasi momento le stesse operazioni possono essere fatte con
<code class="literal">apt-get check</code>.
</p>
        <pre class="screen">
# apt-get check
Lettura elenco pacchetti... Fatto
Generazione albero delle dipendenze... Fatto
</pre>
        <p>
La prima cosa che fa è leggere tutti i file dei pacchetti in memoria; APT
usa un sistema di cache in modo da rendere la stessa operazione più veloce
la seconda volta che la si fa. Se alcuni dei file dei pacchetti non vengono
trovati, sono ignorati e viene stampato un avvertimento all'uscita di
apt-get.
</p>
        <p>
L'operazione finale consiste in un'analisi dettagliata delle dipendenze del
sistema: viene controllato che tutte le dipendenze dei singoli pacchetti
installati o non scompattati siano soddisfatte. Se vengono individuati dei
problemi, viene stampato un resoconto, e <span class="command"><strong>apt-get</strong></span> esce
senza eseguire alcuna operazione.
</p>
        <pre class="screen">
# apt-get check
Lettura elenco pacchetti... Fatto
Generazione albero delle dipendenze... Fatto
È utile eseguire "run apt-get -f install" per correggere ciò.
I seguenti pacchetti hanno dipendenze non soddisfatte:
  9fonts: Dipende: xlib6g ma non è installato
  uucp: Dipende: mailx ma non è installato
  blast: Dipende: xlib6g (&gt;= 3.3-5) ma non è installato
  adduser: Dipende: perl-base ma non è installato
  aumix: Dipende: libgpmg1 ma non è installato
  debiandoc-sgml: Dipende: sgml-base ma non è installato
  bash-builtins: Dipende: bash (&gt;= 2.01) ma la versione 2.0-3 è installata
  cthugha: Dipende: svgalibg1 ma non è installato
           Dipende: xlib6g (&gt;= 3.3-5) ma non è installato
  libreadlineg2: Va in conflitto: libreadline2 (&lt;&lt; 2.1-2.1)
</pre>
        <p>
In questo esempio il sistema ha molti problemi, tra cui uno piuttosto serio
con libreadlineg2. Per ciascun pacchetto che ha dipendenze non soddisfatte,
viene stampata una riga che indica il pacchetto con il problema e quali
dipendenze non sono soddisfatte. Viene inclusa inoltre una breve spiegazione
del perché il pacchetto ha un problema di dipendenze.
</p>
        <p>
There are two ways a system can get into a broken state like this. The first
is caused by <span class="command"><strong>dpkg</strong></span> missing some subtle relationships
between packages when performing upgrades. <a href="#ftn.idp52540544" class="footnote" id="idp52540544"><sup class="footnote">[3]</sup></a>. The second is if a package installation fails during an
operation. In this situation a package may have been unpacked without its
dependents being installed.
</p>
        <p>
La seconda situazione è molto meno seria della prima, dato che APT pone
alcune restrizioni sull'ordine di installazione dei pacchetti. In entrambi i
casi l'opzione <code class="literal">-f</code> di <span class="command"><strong>apt-get</strong></span> farà sì
che APT trovi una soluzione possibile e possa continuare. Il metodo APT di
<span class="command"><strong>dselect</strong></span> comprende sempre l'opzione <code class="literal">-f</code>
per permettere di continuare facilmente anche in caso di script dei
manutentori errati.
</p>
        <p>
Tuttavia, se l'opzione <code class="literal">-f</code> viene usata per correggere un
sistema in uno stato molto problematico causato da una situazione del primo
tipo, è possibile che l'operazione fallisca subito o che fallisca durante la
sequenza di installazione. In entrambi i casi è necessario usare dpkg a mano
(probabilmente usando delle opzioni di forzatura) per correggere quanto
basta per poter fare continuare APT.
</p>
      </div>
      <div class="section">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title"><a id="s4.2"/>4.2. Il resoconto sullo stato</h2>
            </div>
          </div>
        </div>
        <p>
Prima di procedere, <span class="command"><strong>apt-get</strong></span> presenterà un resoconto delle
operazioni che sta per fare. In genere tale resoconto varierà con il tipo di
operazione da fare, ma ci sono svariati elementi comuni: in tutti i casi gli
elenchi riflettono lo stato finale delle cose, e tengono conto dell'opzione
<code class="literal">-f</code> e di altre attività rilevanti per il comando da
eseguire.
</p>
        <div class="section">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="s4.2.1"/>4.2.1. L'elenco dei pacchetti extra</h3>
              </div>
            </div>
          </div>
          <pre class="screen">
I seguenti pacchetti saranno inoltre installati:
  libdbd-mysql-perl xlib6 zlib1 xzx libreadline2 libdbd-msql-perl
  mailpgp xdpkg fileutils pinepgp zlib1g xlib6g perl-base
  bin86 libgdbm1 libgdbmg1 quake-lib gmp2 bcc xbuffy
  squake pgp-i python-base debmake ldso perl libreadlineg2
  ssh
</pre>
          <p>
L'elenco dei pacchetti extra mostra tutti i pacchetti che verranno
installati o aggiornati oltre a quelli indicati sulla riga di comando. Viene
generato solo per il comando <code class="literal">install</code>. I pacchetti
elencati sono spesso il risultato di un'operazione di installazione
automatica.
</p>
        </div>
        <div class="section">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="s4.2.2"/>4.2.2. I pacchetti da rimuovere</h3>
              </div>
            </div>
          </div>
          <pre class="screen">
I seguenti pacchetti saranno RIMOSSI:
  xlib6-dev xpat2 tk40-dev xkeycaps xbattle xonix
  xdaliclock tk40 tk41 xforms0.86 ghostview xloadimage xcolorsel
  xadmin xboard perl-debug tkined xtetris libreadline2-dev perl-suid
  nas xpilot xfig
</pre>
          <p>
L'elenco dei pacchetti da rimuovere indica tutti i pacchetti che verranno
rimossi dal sistema. Può essere mostrato per una qualsiasi delle operazioni,
e deve sempre essere esaminato attentamente per assicurarsi che non venga
eliminato qualcosa di importante. Con l'opzione <code class="literal">-f</code> è
particolarmente probabile che vengano eliminati dei pacchetti, perciò in
questo caso va fatta particolare attenzione. L'elenco può contenere dei
pacchetti che verranno rimossi perché sono solo parzialmente installati,
forse a causa di un'installazione non terminata correttamente.
</p>
        </div>
        <div class="section">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="s4.2.3"/>4.2.3. L'elenco dei nuovi pacchetti installati</h3>
              </div>
            </div>
          </div>
          <pre class="screen">
I seguenti pacchetti NUOVI saranno installati:
  zlib1g xlib6g perl-base libgdbmg1 quake-lib gmp2 pgp-i python-base
</pre>
          <p>
L'elenco dei nuovi pacchetti installati è semplicemente un promemoria su
quello che accadrà. I pacchetti nell'elenco non sono al momento installati
nel sistema, ma lo saranno alla fine delle operazioni di APT.
</p>
        </div>
        <div class="section">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="s4.2.4"/>4.2.4. L'elenco dei pacchetti bloccati</h3>
              </div>
            </div>
          </div>
          <pre class="screen">
I seguenti pacchetti sono stati mantenuti alla versione attuale:
  compface man-db tetex-base msql libpaper svgalib1
  gs snmp arena lynx xpat2 groff xscreensaver
</pre>
          <p>
In ogni caso in cui il sistema viene aggiornato nel suo insieme, c'è la
possibilità che non possano venire installate nuove versioni di alcuni
pacchetti, dato che potrebbero richiedere l'installazione di pacchetti non
presenti nel sistema o entrare in conflitto con altri già presenti. In
questo caso, il pacchetto viene elencato nella lista di quelli mantenuti
alla versione attuale. Il miglior modo per forzare l'installazione dei
pacchetti elencati in questa lista è installarli con <code class="literal">apt-get
install</code> o usare <span class="command"><strong>dselect</strong></span> per risolvere i
problemi.
</p>
        </div>
        <div class="section">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="s4.2.5"/>4.2.5. Messaggi di avvertimento sui pacchetti bloccati</h3>
              </div>
            </div>
          </div>
          <pre class="screen">
I seguenti pacchetti bloccati saranno cambiati:
  cvs
</pre>
          <p>
A volte si può richiedere ad APT di installare un pacchetto che è stato
bloccato; in questi casi viene stampato un messaggio che avverte che il
pacchetto verrà modificato. Questo dovrebbe accadere solo durante operazioni
di dist-upgrade o di install.
</p>
        </div>
        <div class="section">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="s4.2.6"/>4.2.6. Resoconto finale</h3>
              </div>
            </div>
          </div>
          <p>
Infine, APT stamperà un riassunto di tutte le modifiche che accadranno.
</p>
          <pre class="screen">
206 aggiornati, 8 installati, 23 da rimuovere e 51 non aggiornati.
12 non completamente installati o rimossi..
È necessario scaricare 65.7M/66.7M di archivi. Dopo quest'operazione, verranno occupati 26.5M di spazio su disco.
</pre>
          <p>
La prima riga del riassunto è semplicemente una versione ridotta di tutti
gli elenchi ed include il numero di aggiornamenti, cioè dei pacchetti già
installati per cui è disponibile una nuova versione. La seconda riga indica
il numero di pacchetti con problemi di configurazione, probabilmente in
conseguenza di un'installazione non andata a buon fine. La riga finale
indica i requisiti di spazio dell'installazione; i primi due numeri
riguardano la dimensione dei file archivio: indicano rispettivamente il
numero di byte che devono essere trasferiti da posizioni remote e la
dimensione totale di tutti gli archivi necessari. Il numero successivo
indica la differenza in dimensione tra i pacchetti già installati e quelli
che lo saranno, ed è approssimativamente equivalente allo spazio richiesto
in /usr dopo l'installazione. Se si stanno rimuovendo molti pacchetti,
allora il valore può indicare lo spazio che verrà liberato.
</p>
          <p>
Si possono generare altri resoconti usando l'opzione -u per mostrare i
pacchetti da aggiornare, ma sono simili all'esempio precedente.
</p>
        </div>
      </div>
      <div class="section">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title"><a id="s4.3"/>4.3. La visualizzazione dello stato</h2>
            </div>
          </div>
        </div>
        <p>
Durante lo scaricamento degli archivi e dei file dei pacchetti APT stampa
una serie di messaggi di stato.
</p>
        <pre class="screen">
# apt-get update
Scaricamento di:1 http://ftp.de.debian.org/debian-non-US/ stable/non-US/ Packages
Scaricamento di:2 http://llug.sep.bnl.gov/debian/ testing/contrib Packages
Trovato http://llug.sep.bnl.gov/debian/ testing/main Packages
Scaricamento di:4 http://ftp.de.debian.org/debian-non-US/ unstable/binary-i386/ Packages
Scaricamento di:5 http://llug.sep.bnl.gov/debian/ testing/non-free Packages
11% [5 testing/non-free `Waiting for file' 0/32.1k 0%] 2203b/s 1m52s
</pre>
        <p>
Le righe che cominciano con <span class="emphasis"><em>Scaricamento di</em></span> vengono
stampate quando APT inizia a scaricare un file, mentre l'ultima riga indica
il progresso dell'operazione. Il primo valore in percentuale nella riga di
progresso indica la percentuale totale scaricata di tutti i file; dato che
la dimensione dei file Package non è nota, purtroppo a volte
<code class="literal">apt-get update</code> fa una stima poco accurata.
</p>
        <p>
La sezione successiva della riga di stato viene ripetuta una volta per
ciascuna istanza di scaricamento, ed indica l'operazione in corso, insieme
ad alcune informazioni utili su cosa stia accadendo. A volte questa sezione
contiene solamente <span class="emphasis"><em>Forking</em></span>, che significa che il
sistema operativo sta caricando il modulo per lo scaricamento. La prima
parola dopo la parentesi quadra aperta è il numero dello scaricamento come
mostrato nelle righe della cronologia. La parola successiva è il nome breve
dell'oggetto che si sta scaricando, che per gli archivi è il nome del
pacchetto.
</p>
        <p>
All'interno delle virgolette singole c'è una stringa informativa, che indica
il progresso della fase di negoziazione dello scaricamento. Tipicamente
comincia con <span class="emphasis"><em>Connecting</em></span>, procede con <span class="emphasis"><em>Waiting
for file</em></span> e poi con <span class="emphasis"><em>Downloading</em></span> o
<span class="emphasis"><em>Resuming</em></span>; il valore finale è il numero di byte che sono
stati scaricati dal sito remoto. Una volta cominciato lo scaricamento, viene
rappresentato come <code class="literal">102/10.2k</code>, che indica che sono stati
scaricati 102 byte su 10,2 kilobyte attesi. La dimensione totale viene
sempre espressa in notazione a quattro cifre, per risparmiare spazio. Dopo
la dimensione viene indicato un indicatore progressivo della percentuale del
file. Il penultimo elemento è la velocità istantanea media, che viene
aggiornata ogni 5 secondi e riflette la velocità di trasferimento dei dati
in quel periodo. Infine, viene visualizzato il tempo stimato per il
trasferimento, che viene aggiornato periodicamente e riflette il tempo
necessario per completare tutte le operazioni alla velocità di trasferimento
mostrata.
</p>
        <p>
La visualizzazione dello stato viene aggiornata ogni mezzo secondo per
fornire un feedback costante sul processo di scaricamento, e le righe Get
scorrono in alto quando viene avviato lo scaricamento di un nuovo file. Dato
che la visualizzazione dello stato viene costantemente aggiornata, non è
adatta per essere registrata in un file; per non visualizzarla si può usare
l'opzione <code class="literal">-q</code>.
</p>
      </div>
      <div class="section">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title"><a id="s4.4"/>4.4. Dpkg</h2>
            </div>
          </div>
        </div>
        <p>
APT usa <span class="command"><strong>dpkg</strong></span> per installare gli archivi e passerà
all'interfaccia di <span class="command"><strong>dpkg</strong></span> una volta completati gli
scaricamenti. <span class="command"><strong>dpkg</strong></span> porrà anche alcune domande durante
l'elaborazione dei pacchetti, ed i pacchetti stessi potranno farne
altre. Prima di ciascuna domanda viene proposta di solito una descrizione di
ciò che viene chiesto, e le domande sono troppo diverse per poter essere
discusse in maniera completa in questa occasione.
</p>
      </div>
      <div class="footnotes">
        <br/>
        <hr/>
        <div id="ftn.idp52530144" class="footnote">
          <p><a href="#idp52530144" class="para"><sup class="para">[2] </sup></a> The <span class="command"><strong>dselect</strong></span> method actually is a set of wrapper scripts
to <span class="command"><strong>apt-get</strong></span>. The method actually provides more
functionality than is present in <span class="command"><strong>apt-get</strong></span> alone. </p>
        </div>
        <div id="ftn.idp52540544" class="footnote">
          <p><a href="#idp52540544" class="para"><sup class="para">[3] </sup></a> APT however considers all known dependencies and attempts to prevent broken
packages </p>
        </div>
      </div>
    </div>
    <div class="navfooter">
      <hr/>
      <table width="100%" summary="Navigation footer">
        <tr>
          <td align="left"><a accesskey="p" href="ch3.html">Indietro</a> </td>
          <td align="center"> </td>
          <td align="right"> </td>
        </tr>
        <tr>
          <td align="left" valign="top">Capitolo 3. DSelect </td>
          <td align="center">
            <a accesskey="h" href="index.html">Partenza</a>
          </td>
          <td align="right" valign="top"> </td>
        </tr>
      </table>
    </div>
  </body>
</html>