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 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML LANG="it">
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html">
<META NAME="Generator" CONTENT="Alml">
<META NAME="Description" CONTENT="GNU/Linux e altro software libero">
<META NAME="Keywords" CONTENT="Linux, GNU/Linux, Unix, software, software libero, free software">
<META NAME="Author" CONTENT="Daniele Giacomini daniele @ swlibero.org">
<META NAME="Date" CONTENT="2001.08.18 ">
<META NAME="Resource-type" LANG="en" CONTENT="Document" >
<META NAME="Revisit-after" LANG="en" CONTENT="15 days" >
<META NAME="Robots" CONTENT="ALL" >
<TITLE> Appunti di informatica libera</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="a2.css">
<LINK REL="Start" TITLE="Start" HREF="a2.html">
<LINK REL="Prev" TITLE="Previous" HREF="a235.html">
<LINK REL="Next" TITLE="Next" HREF="a237.html">
</HEAD>
<BODY>
<P>
<A HREF="a237.html">[successivo]</A>
<A HREF="a235.html">[precedente]</A>
<A HREF="a2.html">[inizio]</A>
<A HREF="a2506.html">[fine]</A>
<A HREF="a21.html">[indice generale]</A>
<A HREF="a26.html">[violazione GPL]</A>
<A HREF="a2504.html">[licenze]</A>
<A HREF="a2505.html">[indice analitico]</A>
<A HREF="a29.html">[tomo]</A>
<A HREF="a229.html">[parte]</A>
</P>
<HR>
<DIV>
<H1>Capitolo 22. <A NAME="title409"></A><A NAME="anchor490"></A> Pacchetti <A NAME="index1986"></A>Debian: <A NAME="index1987"></A>APT <A NAME="index1988"></A> <A NAME="index1989"></A> <A NAME="index1990"></A> </H1>
<P><A NAME="index1991"></A>APT <SUP><A HREF="#footnote1" NAME="footnote-ref1">(1)</A></SUP> è un sistema di gestione dei pacchetti <A NAME="index1992"></A>Debian più evoluto di <A NAME="index1993"></A>DSelect, per il quale sono disponibili diversi <A NAME="index1994"></A>programmi frontali.</P>
<P>Tutto il sistema si avvale di due file di configurazione: <CODE>/etc/apt/apt.conf</CODE> e <CODE>/etc/apt/sources.list</CODE>. Il secondo di questi due file serve a stabilire la fonte da cui attingere per installare i pacchetti, mentre il primo è un file di configurazione generale.</P>
<TABLE BORDER="3" WIDTH="100%">
<TR><TD>
<P>Quando si utilizzano programmi interattivi che sfruttano la console, se si dispone soltanto di uno schermo monocromatico occorre ricordarsi di intervenire sulla variabile di ambiente <SAMP>TERM</SAMP>, in modo che questa contenga un nome di un terminale monocromatico (potrebbe trattarsi del nome <SAMP>linux-m</SAMP>, basta verificare nella directory <CODE>/usr/share/terminfo/l/</CODE>), altrimenti può essere faticoso interpretare o leggere le informazioni.</P>
</TD></TR>
</TABLE>
<H2>22.1 <A NAME="title410"></A><A NAME="anchor491"></A>
Configurazione generale <A NAME="index1995"></A> <A NAME="index1996"></A> </H2>
<P>Come già accennato, i file di configurazione più importanti del sistema <A NAME="index1997"></A>APT sono <CODE>/etc/apt/apt.conf</CODE> e <CODE>/etc/apt/sources.list</CODE>. Per entrambi questi file vengono ignorate le righe bianche e quelle vuote, mentre cambia il modo di rappresentare i commenti: per <CODE>/etc/apt/sources.list</CODE> si rappresentano precedendoli con il simbolo <SAMP>#</SAMP>, mentre <CODE>/etc/apt/apt.conf</CODE> ignora quanto contenuto tra <SAMP>/*</SAMP> e <SAMP>*/</SAMP>, oppure quanto preceduto da <SAMP>//</SAMP>.</P>
<P>Le direttive del file <CODE>/etc/apt/apt.conf</CODE> sono organizzate a gruppi e sottogruppi, secondo una forma simile a quella seguente:</P>
<P class="syntax"><TT><VAR>gruppo</VAR>::<VAR>sottogruppo</VAR>::<VAR>opzione</VAR><VAR>valore_assegnato</VAR>;
</TT></P>
<P>In pratica, il valore che si assegna alla direttiva complessiva può essere una stringa delimitata da apici doppi, oppure senza delimitazione se questo non è necessario.</P>
<P>Per evitare di dover riscrivere ogni volta il gruppo e il sottogruppo di un insieme di direttive, si può usare una notazione alternativa:</P>
<P class="syntax"><TT><VAR>gruppo</VAR>{
<BR>
<VAR>sottogruppo</VAR>{
<BR>
<VAR>opzione</VAR><VAR>valore_assegnato</VAR>;
<BR>
<VAR>opzione</VAR><VAR>valore_assegnato</VAR>;
<BR>
...
<BR>
}
<BR>
<VAR>sottogruppo</VAR>{
<BR>
<VAR>opzione</VAR><VAR>valore_assegnato</VAR>;
<BR>
<VAR>opzione</VAR><VAR>valore_assegnato</VAR>;
<BR>
...
<BR>
}
<BR>
...
<BR>
}
</TT></P>
<P>La classificazione in gruppi e sottogruppi serve a definire il contesto a cui riferire le opzioni, permettendo uno sviluppo indipendente della configurazione da parte dei programmi che compongono il sistema <A NAME="index1998"></A>APT.</P>
<P>In generale non dovrebbe essere necessario modificare il file <CODE>/etc/apt/apt.conf</CODE>; a ogni modo, la <A NAME="index1999"></A>pagina di manuale <EM>apt.conf</EM>(5) descrive bene i vari gruppi e sottogruppi, mentre sono disponibili degli esempi nella directory <CODE>/usr/share/doc/apt/</CODE>.</P>
<P>Il file <CODE>/etc/apt/sources.list</CODE> serve a definire come raggiungere i pacchetti della distribuzione. Si distinguono due situazioni: pacchetti <A NAME="index2000"></A>Debian binari e pacchetti <A NAME="index2001"></A>Debian sorgenti.</P>
<P class="syntax"><TT>deb<VAR>uri</VAR><VAR>percorso_distribuzione</VAR><STRONG><BIG>[</BIG></STRONG><VAR>componente</VAR><STRONG><BIG>]</BIG></STRONG>...
</TT></P>
<P class="syntax"><TT>deb-src<VAR>uri</VAR><VAR>percorso_distribuzione</VAR><STRONG><BIG>[</BIG></STRONG><VAR>componente</VAR><STRONG><BIG>]</BIG></STRONG>...
</TT></P>
<P>A seconda che si tratti di pacchetti binari o sorgenti, la direttiva inizierà con la parola chiave <SAMP>deb</SAMP> oppure <SAMP>deb-src</SAMP>.</P>
<P>Queste direttive servono a definire il percorso necessario a raggiungere i pacchetti, come se fossero scritte nel modo seguente:</P>
<PRE><VAR>uri</VAR>/<VAR>percorso_distribuzione</VAR>/<VAR>componente_1</VAR>
<VAR>uri</VAR>/<VAR>percorso_distribuzione</VAR>/<VAR>componente_2</VAR>
<VAR>uri</VAR>/<VAR>percorso_distribuzione</VAR>/<VAR>componente_3</VAR>
...</PRE>
<P>Per esempio, se la distribuzione è raggiungibile presso <CODE>http://http.it.debian.org/debian/stable/</CODE>, che poi si articola nelle directory <CODE>main/</CODE>, <CODE>contrib/</CODE> e <CODE>non-free/</CODE>, la direttiva potrà essere espressa nel modo seguente:</P>
<PRE>deb http://http.it.debian.org/debian stable main contrib non-free</PRE>
<P>Nello stesso modo, se ciò può risultare più chiaro, si potevano utilizzare tre direttive come nell'esempio seguente, avendo cura di indicare il punto finale che rappresenta la directory corrente:</P>
<PRE>deb http://http.it.debian.org/debian stable/main .
deb http://http.it.debian.org/debian stable/contrib .
deb http://http.it.debian.org/debian stable/non-free .</PRE>
<P>Nell'ambito dei percorsi che si indicano in queste direttive, si può usare la stringa <SAMP>$(ARCH)</SAMP>, che viene rimpiazzata con la sigla della propria architettura.</P>
<P>Gli URI possono essere indicati in diversi modi, che vengono elencati nel seguito.</P>
<UL>
<LI>
<P class="syntax"><TT>file:<VAR>percorso_assoluto</VAR><STRONG><BIG>|</BIG></STRONG>file://<VAR>percorso_assoluto</VAR>
</TT></P>
<P>Permette di fare riferimento a una distribuzione accessibile nell'ambito del <A NAME="index2002"></A>file system. Il percorso assoluto inizia con la barra obliqua, per cui si avranno URI del tipo <SAMP>file:/uno/due</SAMP>, oppure <SAMP>file:///uno/due</SAMP> indifferentemente.</P>
</LI>
<LI>
<P class="syntax"><TT>copy:<VAR>percorso_assoluto</VAR><STRONG><BIG>|</BIG></STRONG>copy://<VAR>percorso_assoluto</VAR>
</TT></P>
<P>Si tratta di una variante del tipo <SAMP>file</SAMP>, in cui si prevede di copiare i file nella memoria di transito, costituita normalmente dalla directory <CODE>/var/cache/apt/archives/</CODE>. Alcuni programmi come <A NAME="index2003"></A>Deity e <A NAME="index2004"></A>Aptitude potrebbero avere difficoltà ad accedere a un URI del tipo <SAMP>file</SAMP>, preferendo invece questa seconda alternativa.</P>
</LI>
<LI>
<P class="syntax"><TT>http://<VAR>host</VAR><STRONG><BIG>[</BIG></STRONG>:<VAR>porta</VAR><STRONG><BIG>]</BIG></STRONG><STRONG><BIG>[</BIG></STRONG>/<VAR>percorso</VAR><STRONG><BIG>]</BIG></STRONG>
</TT></P>
<P class="syntax"><TT>ftp://<VAR>host</VAR><STRONG><BIG>[</BIG></STRONG>:<VAR>porta</VAR><STRONG><BIG>]</BIG></STRONG><STRONG><BIG>[</BIG></STRONG>/<VAR>percorso</VAR><STRONG><BIG>]</BIG></STRONG>
</TT></P>
<P>Si tratta di un accesso a un servizio HTTP o FTP.</P>
</LI>
</UL>
<P>Esiste anche un altro tipo di URI, che inizia con la parola chiave <SAMP>cdrom</SAMP>, allo scopo di fare riferimento a distribuzioni su CD-ROM. Tuttavia, le direttive di questo tipo sono troppo complesse e vanno realizzate con l'aiuto del programma <SAMP>apt-cdrom</SAMP>.</P>
<H2>22.2 <A NAME="title411"></A><A NAME="anchor492"></A>
<A NAME="index2005"></A>Deity <A NAME="index2006"></A> <A NAME="index2007"></A> <A NAME="index2008"></A> </H2>
<P><A NAME="index2009"></A>Deity, <SUP><A HREF="#footnote2" NAME="footnote-ref2">(2)</A></SUP> ovvero <A NAME="index2010"></A>Console APT, ovvero <A NAME="index2011"></A>Capt, è un <A NAME="index2012"></A>programma frontale per console della serie che riguarda <A NAME="index2013"></A>APT. Si compone in pratica dell'eseguibile <SAMP>deity</SAMP> (oppure <SAMP>capt</SAMP> o anche <SAMP>console-apt</SAMP>), che può funzionare in modo interattivo e anche non interattivo, attraverso l'uso di opzioni della riga di comando.</P>
<TABLE BORDER="3" WIDTH="100%">
<TR><TD>
<P>Nel caso si intenda accedere agli archivi <A NAME="index2014"></A>Debian collocati nel <A NAME="index2015"></A>file system, è probabile sia necessario utilizzare la direttiva <SAMP>copy:...</SAMP> nel file <CODE>/etc/apt/sources.list</CODE>, mentre la direttiva <SAMP>file:...</SAMP> potrebbe creare dei problemi a causa dell'indicazione del percorso dei file.</P>
</TD></TR>
</TABLE>
<P>È disponibile una scheda riassuntiva dell'uso di <A NAME="index2016"></A>Deity nel capitolo <A HREF="a2463.html#anchor6452">362</A>.</P>
<H3>22.2.1 <A NAME="title412"></A><A NAME="anchor493"></A>
Uso non interattivo </H3>
<P class="syntax"><TT>deity<STRONG><BIG>[</BIG></STRONG><VAR>opzione</VAR><STRONG><BIG>[</BIG></STRONG><VAR>nome_pacchetto</VAR><STRONG><BIG>]</BIG></STRONG>...<STRONG><BIG>]</BIG></STRONG>...
</TT></P>
<P>Quando si avvia l'eseguibile <SAMP>deity</SAMP> con degli argomenti, questo esegue gli ordini e termina di funzionare, senza avviare l'interfaccia interattiva; diventa interattivo solo se ci sono dei problemi di dipendenze, per cui può chiedere l'intervento dell'utente. Il modello sintattico mostra l'indicazione di un'opzione alla quale può seguire un elenco di nomi di pacchetti <A NAME="index2017"></A>Debian, che può essere seguita da altre opzioni. In questo modo si può indicare una sequenza di operazioni differente, ognuna delle quali può prevedere o meno l'indicazione di pacchetti <A NAME="index2018"></A>Debian.<SUP><A HREF="#footnote3" NAME="footnote-ref3">(3)</A></SUP></P>
<DL>
<DT><STRONG>Alcune opzioni</STRONG></DT>
<DD>
<P class="syntax"><TT>-u<STRONG><BIG>|</BIG></STRONG>-update-lists
</TT></P>
<P>Aggiorna l'elenco dei pacchetti disponibili.</P>
<P class="syntax"><TT>-i<VAR>pacchetto</VAR>...<STRONG><BIG>|</BIG></STRONG>-install<VAR>pacchetto</VAR>...
</TT></P>
<P>Installa i pacchetti indicati, se sono rispettate le dipendenze.</P>
<P class="syntax"><TT>-g<STRONG><BIG>|</BIG></STRONG>-upgrade
</TT></P>
<P>Aggiorna i pacchetti già installati.</P>
<P class="syntax"><TT>-d<STRONG><BIG>|</BIG></STRONG>-dist-upgrade
</TT></P>
<P>Aggiorna cercando di risolvere le dipendenze, arrivando anche a disinstallare dei pacchetti.</P>
<P class="syntax"><TT>-r<VAR>pacchetto</VAR>...<STRONG><BIG>|</BIG></STRONG>-remove<VAR>pacchetto</VAR>...
</TT></P>
<P>Disinstalla i pacchetti indicati, lasciando i file di configurazione.</P>
<P class="syntax"><TT>-p<VAR>pacchetto</VAR>...<STRONG><BIG>|</BIG></STRONG>-purge<VAR>pacchetto</VAR>...
</TT></P>
<P>Elimina completamente i pacchetti indicati, cancellando anche i file di configurazione.</P>
<DT><STRONG>Esempi</STRONG></DT>
<DD>
<P class="command"><CODE># </CODE><STRONG><CODE>deity -u -i gnome-stones gnome-games-locale <SUB><EM>(segue)</EM></SUB><BR> -p bsdgames bsdgames-nonfree</CODE></STRONG></P>
<P>Esegue tre operazioni in sequenza: aggiorna l'elenco dei pacchetti disponibili; installa i pacchetti <SAMP>gnome-stones</SAMP> e <SAMP>gnome-games-locale</SAMP>; elimina i pacchetti <SAMP>bsdgames</SAMP> e <SAMP>bsdgames-nonfree</SAMP>.</P>
<P class="command"><CODE># </CODE><STRONG><CODE>deity -u -g</CODE></STRONG></P>
<P>Aggiorna i pacchetti già installati, dopo aver rivisto l'elenco dei pacchetti disponibili.</P>
</DD>
</DL>
<H3>22.2.2 <A NAME="title413"></A><A NAME="anchor494"></A>
Uso interattivo </H3>
<P>Avviando <A NAME="index2019"></A>Deity in modo interattivo (ovvero senza argomenti di alcun tipo), si ottiene una situazione simile a quanto si vede nella figura <A HREF="a236.html#anchor495">22.1</A>.</P>
<TABLE ID="anchor495" BORDER="0" WIDTH="100%">
<TR><TD>
<HR>
<PRE>> Operation > Movement > Toggles > Alter > Filters > Sorting
<> Pri Package Section Target-Ver Instld-Ver PkgSZ InstSZ Des
| | |-- admin: Administration packages for super users
| | | |-+ a
| | | |-+ c
| | | |-- d
| | | | |-+ UH opt debconf admin 0.2.80.17 0.2.80.17 0 352 De
| | | | |-+ UH opt deity admin 0.8.0.4 0.8.0.4 0 168 Co
| | | | |-+ UH opt deity-curses admin 0.8.0.4 0.8.0.4 0 124 Cu
| | | | |-+ UH opt dpkg-awk admin 1.0.0 1.0.0 0 36 Ga
| | | | `-+ UH opt dpkg-repack admin 1.2 1.2 0 23 pu
| | | |-+ g
| | | |-+ m
| | | |-+ v
deity installed, upgraded; unchanged
Deity is a next generation package manager that is
useful for upgrading, installing and removing packages
from a Debian GNU/Linux system which supports APT.
Features:
* progress indicators for downloads,
* selective upgrading of packages,
* complete many operations in one swoop,
[sc0, 023%] Install..2 Delete...123 Keep....0 Broken...0 [deity 0.8.0.4]</PRE>
<HR>
<P class="caption"> Figura <A HREF="a236.html#anchor495">22.1</A>. Esempio di come si potrebbe presentare <A NAME="index2020"></A>Deity all'avvio. In questa situazione il cursore sull'elenco dei pacchetti risulta posizionato su <SAMP>deity</SAMP>. </P>
</TD></TR>
</TABLE>
<P><A NAME="index2021"></A>Deity cerca di recuperare alcune convenzioni di <A NAME="index2022"></A>DSelect, funzionando in un modo un po' più intuitivo.</P>
<P>Come nel caso di <A NAME="index2023"></A>DSelect si può vedere che lo schermo è suddiviso in due porzioni: la parte superiore in cui appare l'elenco dei pacchetti, classificato ad albero, con delle informazioni sintetiche; la parte inferiore in cui appare una descrizione del pacchetto corrispondente alla voce su cui si trova il cursore.</P>
<P>La navigazione è simile a quella di <A NAME="index2024"></A>DSelect e la tabella <A HREF="a236.html#anchor496">22.1</A> riepiloga i tasti più importanti che possono essere utilizzati per questo scopo. Naturalmente, è disponibile una guida interna che si ottiene con il tasto [<KBD>?</KBD>] oppure [<KBD>h</KBD>] che è facile da scorrere. Inoltre, è bene ricordare che in base al contesto, è possibile usare il tasto [<KBD>q</KBD>] per tornare indietro, così come è possibile chiudere il funzionamento del programma quando ci si trova sulla sua maschera principale.</P>
<TABLE ID="anchor496" BORDER="3">
<THEAD>
<TR><TD>Tasto </TD><TD>Effetto </TD></TR>
</THEAD>
<TBODY>
<TR><TD>freccia su, k </TD><TD>Sposta il cursore sulla voce precedente. </TD></TR>
<TR><TD>freccia giù, j </TD><TD>Sposta il cursore sulla voce successiva. </TD></TR>
<TR><TD>Inizio, ^, g </TD><TD>Sposta il cursore sulla prima voce dell'elenco. </TD></TR>
<TR><TD>Fine, $, G </TD><TD>Sposta il cursore sull'ultima voce dell'elenco. </TD></TR>
<TR><TD>pagina su, Ctrl+b </TD><TD>Fa scorrere l'elenco di una schermata indietro. </TD></TR>
<TR><TD>pagina giù, Ctrl+f </TD><TD>Fa scorrere l'elenco di una schermata in avanti. </TD></TR>
<TR><TD>freccia sinistra </TD><TD>Scorrimento orizzontale indietro. </TD></TR>
<TR><TD>freccia destra </TD><TD>Scorrimento orizzontale in avanti. </TD></TR>
<TR><TD>< </TD><TD>Raggiunge la classificazione precedente. </TD></TR>
<TR><TD>> </TD><TD>Raggiunge la classificazione successiva. </TD></TR>
<TR><TD>[ </TD><TD>Scorre all'indietro la descrizione del pacchetto evidenziato. </TD></TR>
<TR><TD>] </TD><TD>Scorre in avanti la descrizione del pacchetto evidenziato. </TD></TR>
<TR><TD>/ </TD><TD>Cerca la stringa nell'elenco. </TD></TR>
<TR><TD>n </TD><TD>Cerca la corrispondenza successiva. </TD></TR>
</TBODY>
</TABLE>
<P><EM> Tabella <A HREF="a236.html#anchor496">22.1</A>. Navigazione con <A NAME="index2025"></A>Console APT. </EM></P>
<P><A NAME="index2026"></A>Deity offre anche l'accesso a un <A NAME="index2027"></A>menù a tendina, a cui si accede premendo la lettera maiuscola che appare nei nomi della prima riga dello schermo. Per esempio, per aprire la tendina della voce {<CODE>Operation</CODE>} basta premere il tasto [<KBD>O</KBD>]. Una volta aperta questa o un'altra tendina, si può scorrere nel modo consueto con i tasti freccia e si può selezionare una voce premendo il tasto [<KBD>Invio</KBD>].</P>
<PRE>> Operation > Movement > Toggles > Alter > Filters > Sorting</PRE>
<P>La disponibilità di questo <A NAME="index2028"></A>menù riduce il problema della memorizzazione dei comandi basati sulla pressione di tasti a cui viene attribuito questo o quel significato.</P>
<P>I nomi dei raggruppamenti e dei pacchetti si mostrano normalmente preceduti da un simbolo: <SAMP>+</SAMP> oppure <SAMP>-</SAMP>. Quando il cursore di selezione si trova su una voce che mostra il simbolo <SAMP>+</SAMP>, è possibile premere il tasto [<KBD>Tab</KBD>], oppure [<KBD>Invio</KBD>] per conoscere l'elenco delle dipendenze di questo. A quel punto il simbolo viene trasformato in <SAMP>-</SAMP>.</P>
<TABLE ID="anchor497" BORDER="0" WIDTH="100%">
<TR><TD>
<HR>
<PRE>> Operation > Movement > Toggles > Alter > Filters > Sorting
<> Pri Package Section Target-Ver Instld-Ver PkgSZ InstSZ Des
| | |-- admin: Administration packages for super users
| | | |-+ a
| | | |-+ c
| | | |-- d
| | | | |-+ UH opt debconf admin 0.2.80.17 0.2.80.17 0 352 De
| | | | |-- UH opt deity admin 0.8.0.4 0.8.0.4 0 168 Co
| | | | | |-- Depends libapt-pkg-libc6.2-3
| | | | | |-+ Depends libc6 >= 2.2.3-1
| | | | | |-+ Depends libstdc++2.10-glibc2
| | | | | |-+ Depends deity-curses
| | | | | |-- Depends deityui
| | | | | |-+ Conflicts console-apt < 0.8.0
deity installed, upgraded; unchanged
Deity is a next generation package manager that is
useful for upgrading, installing and removing packages
from a Debian GNU/Linux system which supports APT.
Features:
* progress indicators for downloads,
* selective upgrading of packages,
* complete many operations in one swoop,
[sc0, 023%] Install..2 Delete...123 Keep....0 Broken...0 [deity 0.8.0.4]</PRE>
<HR>
<P class="caption"> Figura <A HREF="a236.html#anchor497">22.2</A>. Dipendenze di <A NAME="index2029"></A>Deity, come si vede attraverso il programma stesso. </P>
</TD></TR>
</TABLE>
<P>L'esempio della figura <A HREF="a236.html#anchor497">22.2</A> mostra il caso del pacchetto <SAMP>deity</SAMP>. Naturalmente è possibile continuare ad «aprire» anche altri pacchetti elencati nelle dipendenze. Quando non serve, si possono richiudere questi sottoelenchi premendo nuovamente [<KBD>Tab</KBD>] o [<KBD>Invio</KBD>].</P>
<P>La selezione di un pacchetto avviene in modo molto simile a quello di <A NAME="index2030"></A>DSelect e la tabella <A HREF="a236.html#anchor498">22.2</A> riepiloga i tasti necessari.</P>
<TABLE BORDER="3" WIDTH="100%">
<TR><TD>
<P>Per annullare una richiesta applicata a un pacchetto, è necessario usare lo stesso tasto selezionato. Per esempio, se si seleziona un pacchetto per l'installazione con il tasto [<KBD>+</KBD>], volendo togliere questa selezione è necessario intervenire nuovamente con lo stesso tasto [<KBD>+</KBD>], perché [<KBD>-</KBD>] oppure [<KBD>_</KBD>] non possono intervenire.</P>
</TD></TR>
</TABLE>
<TABLE ID="anchor498" BORDER="3">
<THEAD>
<TR><TD>Tasto di selezione </TD><TD>Effetto </TD></TR>
</THEAD>
<TBODY>
<TR><TD>+, barra spaziatrice </TD><TD>Richiede l'installazione o l'aggiornamento del pacchetto. </TD></TR>
<TR><TD>- </TD><TD>Richiede la disinstallazione del pacchetto lasciando la configurazione. </TD></TR>
<TR><TD>_ </TD><TD>Richiede l'eliminazione totale del pacchetto. </TD></TR>
<TR><TD>\ </TD><TD>Richiede la reinstallazione. </TD></TR>
<TR><TD>t </TD><TD>Scorre tra le versioni disponibili. </TD></TR>
<TR><TD>U </TD><TD>Aggiorna i pacchetti vecchi. </TD></TR>
<TR><TD>D </TD><TD>Aggiorna la distribuzione. </TD></TR>
<TR><TD>R </TD><TD>Ripristina tutto allo stato iniziale. </TD></TR>
</TBODY>
</TABLE>
<P><EM> Tabella <A HREF="a236.html#anchor498">22.2</A>. Tasti di selezione dei pacchetti. </EM></P>
<P>Oltre alla possibilità di cercare i pacchetti con i tasti [<KBD>/</KBD>] e [<KBD>n</KBD>], è possibile definire un'<A NAME="index2031"></A>espressione regolare con la quale filtrare i nomi dei pacchetti e ridurre così l'elenco. I filtri possono essere definiti attraverso selezioni successive; per esempio, la prima volta si può cercare la corrispondenza con la stringa <SAMP>gnome</SAMP>, mentre la seconda volta si può cercare la corrispondenza con <SAMP>game</SAMP>: si rimarrà con l'elenco dei nomi che corrispondono sia la prima che la seconda volta. La tabella <A HREF="a236.html#anchor499">22.3</A> riepiloga i comandi relativi alla gestione dei filtri, accessibili anche dal <A NAME="index2032"></A>menù.</P>
<TABLE ID="anchor499" BORDER="3">
<THEAD>
<TR><TD>Tasto di selezione </TD><TD>Effetto </TD></TR>
</THEAD>
<TBODY>
<TR><TD>f </TD><TD>Aggiunge un filtro. </TD></TR>
<TR><TD>r </TD><TD>Elimina tutti i filtri ripristinando l'elenco completo. </TD></TR>
<TR><TD>l </TD><TD>Mostra la sequenza di filtri attivi. </TD></TR>
<TR><TD>v </TD><TD>Mostra i pacchetti che non corrispondono alle espressioni selezionate. </TD></TR>
</TBODY>
</TABLE>
<P><EM> Tabella <A HREF="a236.html#anchor499">22.3</A>. Tasti di selezione dei filtri di visualizzazione. </EM></P>
<P>L'elenco dei pacchetti può essere strutturato in maniera differente, specificando l'ordine con cui vanno presentati. Per intervenire in questo modo si preme [<KBD>s</KBD>], per accedere a una maschera particolare, come quella che si vede nella figura <A HREF="a236.html#anchor500">22.3</A>.</P>
<TABLE ID="anchor500" BORDER="0" WIDTH="100%">
<TR><TD>
<HR>
<PRE>.-----------------------Sort Editor------------------------.
| |
| Please select an option to change your sorting: |
| |
| A == Append new at end of the list |
| I == Insert new before an installed method |
| D == Delete installed sort method |
| M == Modify installed sort method |
| Q == Quit back to main list |
| |
| |
| You currently have 2 sorting methods installed. |
| |
| ` Method 1 (Packages by installed/upgraded status) |
| ` Method 2 (Packages by name, alphabetically) |
| |
| |
| |
`----------------------------------------------------------'</PRE>
<HR>
<P class="caption"> Figura <A HREF="a236.html#anchor500">22.3</A>. Maschera iniziale per la selezione dell'ordine in cui mostrare i pacchetti nell'elenco. </P>
</TD></TR>
</TABLE>
<P>Quello che si vede nella figura significa che attualmente i nomi dei pacchetti sono suddivisi in base al fatto di essere installati o meno, quindi sono ordinati in modo alfabetico per nome. La maschera mostra in che modo agire per aggiungere, inserire, cancellare o modificare i vari metodi di ordinamento, premendo il tasto corrispondente: [<KBD>a</KBD>], [<KBD>i</KBD>], [<KBD>d</KBD>], [<KBD>m</KBD>] o [<KBD>q</KBD>]. Se si chiede di eliminare un metodo di ordinamento, viene poi richiesto su quale numero intervenire. Se si chiede di inserire un metodo viene richiesto il numero di quello che si dovrà trovare subito dopo il nuovo aggiunto. L'inserimento e l'aggiunta portano a un <A NAME="index2033"></A>menù simile a quello seguente, con il quale si potrà specificare quale criterio inserire o aggiungere:</P>
<PRE>T == Type / section / area
N == Name (alphabetically)
P == Priority (needworthyness)
S == Status (installed / upgraded)
A == Archive size (download)
I == Installed size (unpacked)
Q == Go back [Exit]</PRE>
<P>Una volta selezionate le azioni da compiere con i pacchetti (installare, aggiornare, disinstallare, eliminare) si può procedere con il tasto [<KBD>c</KBD>], che dovrebbe portare a un elenco speciale, nel quale vengono riassunte le cose che verranno fatte. Se necessario, premendo ancora [<KBD>c</KBD>] si passa all'esecuzione delle richieste; in alternativa, se si preferisce rinunciare basta premere il tasto [<KBD>q</KBD>], come al solito.</P>
<H2>22.3 <A NAME="title414"></A><A NAME="anchor501"></A>
<A NAME="index2034"></A>Aptitude <A NAME="index2035"></A> </H2>
<P><A NAME="index2036"></A>Aptitude, <SUP><A HREF="#footnote4" NAME="footnote-ref4">(4)</A></SUP> è un altro programma frontale per il sistema <A NAME="index2037"></A>APT, che si presenta molto sofisticato e altamente configurabile. Qui si vuole mostrare soltanto un uso «normale» del programma, trascurando la sua configurazione e facendo riferimento al funzionamento predefinito.</P>
<TABLE BORDER="3" WIDTH="100%">
<TR><TD>
<P>La configurazione di <A NAME="index2038"></A>Aptitude consente di cambiare notevolmente il funzionamento del programma. Anche se non si intende modificare l'impostazione predefinita, è necessario sapere che i comandi della tastiera, i colori e le informazioni che appaiono sullo schermo possono essere modificati deliberatamente.</P>
</TD></TR>
</TABLE>
<P>Il programma mette a disposizione anche un <A NAME="index2039"></A>menù a tendina, a cui si può accedere con il tasto [<KBD>F10</KBD>], all'interno del quale ci si muove come di consueto, con i tasti freccia, selezionando le voci con il tasto [<KBD>Invio</KBD>]. Proprio nel primo di questi <A NAME="index2040"></A>menù si può trovare la possibilità di accedere ai privilegi dell'utente <SAMP>root</SAMP> inserendo la <A NAME="index2041"></A>parola d'ordine necessaria.</P>
<P>Il programma si avvia generalmente senza argomenti, indicando l'eseguibile <SAMP>aptitude</SAMP>. Se il file di configurazione <CODE>/etc/apt/sources.list</CODE> fa riferimento a una distribuzione accessibile attraverso il <A NAME="index2042"></A>file system, può essere conveniente usare URI di tipo <SAMP>copy</SAMP>, invece di <SAMP>file</SAMP>.</P>
<P>Sono disponibili due schede riassuntive dell'uso di <A NAME="index2043"></A>Aptitude nei capitoli <A HREF="a2464.html#anchor6455">363</A> e <A HREF="a2465.html#anchor6458">364</A>.</P>
<H3>22.3.1 <A NAME="title415"></A><A NAME="anchor502"></A>
Classificazione e ordinamento dei pacchetti </H3>
<P>L'impatto iniziale con il programma dipende da come è stato definito il raggruppamento dei pacchetti. Per raggruppamento qui si intende il modo di organizzare la classificazione dei i pacchetti in base a qualche criterio, generando una struttura ad albero. In condizioni normali, la classificazione avviene in base al loro «stato», in cui si distingue tra pacchetti installati, non installati, obsoleti, aggiornabili e virtuali. A titolo di esempio, all'avvio <A NAME="index2044"></A>Aptitude si potrebbe presentare come si vede nella figura <A HREF="a236.html#anchor503">22.4</A>, dove appaiono solo le classificazioni <SAMP>New Packages</SAMP>, <SAMP>Obsolete and Locally Created Packages</SAMP> e <SAMP>Virtual Packages</SAMP>.</P>
<TABLE ID="anchor503" BORDER="0" WIDTH="100%">
<TR><TD>
<HR>
<PRE> Actions Undo Options Views Help
aptitude 0.2.3 Will use 225kB of disk space DL Size: 95,9kB
[-] New Packages
[-] Obsolete and Locally Created Packages
[-] Virtual Packages</PRE>
<HR>
<P class="caption"> Figura <A HREF="a236.html#anchor503">22.4</A>. Parte superiore dello schermo dopo l'avvio di <A NAME="index2045"></A>Aptitude. </P>
</TD></TR>
</TABLE>
<P>Per aprire o per richiudere una classificazione basta portarvi sopra il cursore e premere [<KBD>Invio</KBD>]; lo stesso si può fare per le sottoclassificazioni successive.</P>
<TABLE ID="anchor504" BORDER="0" WIDTH="100%">
<TR><TD>
<HR>
<PRE> Actions Undo Options Views Help
aptitude 0.2.3 Will use 225kB of disk space DL Size: 95,9kB[+] New Packages
[-] Tasks: Packages which set up your computer to perform a particular task
[-] Unknown: Packages with no declared section
[+] admin: Administrative utilities (install software, manage users, etc)
[-] contrib: Programs which depend on software not in Debian
[+] main: The main Debian archive
i anacron 2.1-5.1 2.1-5.1
i aptitude 0.2.3-1 0.2.3-1
p base-config <none> 0.27
p cfengine <none> 1.5.3-3
c console-apt <none> <none>
curses-based apt frontend
aptitude is a curses-based apt frontend with a number of useful extended
features, including: a mutt-like syntax for matching packages in a flexible
manner, dselect-like persistence of user actions, the ability to retrieve and
display the Debian changelog of most packages, and extreme flexibility and
customization.
</PRE>
<HR>
<P class="caption"> Figura <A HREF="a236.html#anchor504">22.5</A>. Accesso all'elenco dei pacchetti attraversando le classificazioni precedenti. In questo caso il cursore si trova sul pacchetto <SAMP>aptitude</SAMP>. </P>
</TD></TR>
</TABLE>
<P>Una volta raggiunto un gruppo di pacchetti che non viene classificato ulteriormente, ne appare l'elenco, come si vede nella figura <A HREF="a236.html#anchor504">22.5</A>, dove si può vedere anche la parte inferiore dello schermo dedicata alla descrizione del pacchetto evidenziato.</P>
<P>La classificazione dei pacchetti può essere modificata con il comando relativo, a cui si accede con il tasto [<KBD>G</KBD>]. Si ottiene una mascherina in cui si deve inserire l'espressione relativa alla nuova classificazione. Si possono definire più classificazioni in sequenza, in un elenco separato da virgole:</P>
<P class="syntax"><TT><VAR>politica_di_raggruppamento</VAR><STRONG><BIG>[</BIG></STRONG>,<VAR>politica_di_raggruppamento</VAR><STRONG><BIG>]</BIG></STRONG>...
</TT></P>
<P>Di certo, le prime volte non conviene creare strutture troppo complesse. La tabella <A HREF="a236.html#anchor505">22.4</A> riepiloga brevemente le definizioni principali che si possono usare per ottenere la classificazione preferita, tenendo presente che alcune definizioni prevedono delle opzioni, per le quali è necessario leggere la documentazione originale.</P>
<TABLE ID="anchor505" BORDER="3">
<THEAD>
<TR><TD>Politica </TD><TD>Raggruppamento corrispondente </TD></TR>
</THEAD>
<TBODY>
<TR><TD>section(topdir) </TD><TD>Sezione principale a cui appartiene il pacchetto. </TD></TR>
<TR><TD>section(subdir) </TD><TD>Sottosezione a cui appartiene il pacchetto. </TD></TR>
<TR><TD>section(none) </TD><TD>Sezione e sottosezione a cui appartiene il pacchetto. </TD></TR>
<TR><TD>priority </TD><TD>Priorità del pacchetto. </TD></TR>
<TR><TD>status </TD><TD>Stato: installato, non installato, obsoleto, aggiornabile e virtuale. </TD></TR>
<TR><TD>action </TD><TD>Azione richiesta sui pacchetti e non ancora applicata. </TD></TR>
<TR><TD>firstchar </TD><TD>Classifica in base all'iniziale del nome. </TD></TR>
</TBODY>
</TABLE>
<P><EM> Tabella <A HREF="a236.html#anchor505">22.4</A>. Alcune delle definizioni utilizzabili per cambiare la struttura di classificazione dei pacchetti. </EM></P>
<P>Dopo aver definito in che modo raggruppare i pacchetti, può essere utile definire l'ordine in cui questi devono apparire, nell'ambito di ogni gruppo finale. Si accede al comando per l'ordinamento con il tasto [<KBD>S</KBD>] e subito dopo viene richiesto l'inserimento dell'espressione con cui specificare l'ordinamento.</P>
<P class="syntax"><TT><STRONG><BIG>{</BIG></STRONG><STRONG><BIG>[</BIG></STRONG>~<STRONG><BIG>]</BIG></STRONG>name<STRONG><BIG>|</BIG></STRONG>installsize<STRONG><BIG>|</BIG></STRONG>priority<STRONG><BIG>}</BIG></STRONG><STRONG><BIG>[</BIG></STRONG>,...<STRONG><BIG>]</BIG></STRONG>
</TT></P>
<P>In pratica, come si vede dal modello sintattico, si può usare una delle parole chiave indicate, per indicare un metodo di ordinamento, preceduto eventualmente dalla tilde (<SAMP>~</SAMP>), con cui si vuole invertire l'ordine. Per indicare un criterio successivo, basta aggiungere una virgola e continuare. Dalle parole chiave disponibili si intende che sia possibile ordinare per nome, per dimensione e per priorità.</P>
<P>Infine, è anche possibile limitare la visualizzazione a un insieme ridotto di pacchetti, specificando un criterio di selezione. Per ottenere questo risultato si preme il tasto [<KBD>l</KBD>], dopo il quale viene richiesto di inserire un'espressione particolare, che si indica nello stesso modo in cui si specifica un'espressione di ricerca.</P>
<H3>22.3.2 <A NAME="title416"></A><A NAME="anchor506"></A>
Ricerca e filtro </H3>
<P>La ricerca di un pacchetto si comincia premendo il tasto [<KBD>/</KBD>], mentre il filtro di visualizzazione dei pacchetti inizia con la pressione del tasto [<KBD>l</KBD>]. In entrambi i casi, viene richiesto l'inserimento di un'espressione particolare, o di una stringa letterale. Un'espressione elementare inizia con la tilde (<SAMP>~</SAMP>); a una o più espressioni semplici si possono abbinare degli operatori booleani, per invertirne il significato o per creare espressioni più complesse; inoltre si possono usare le parentesi tonde per cambiare l'ordine nella risoluzione delle espressioni. Una stringa che non sembra essere un'espressione, viene comparata letteralmente con i nomi dei pacchetti, che devono combaciare almeno in parte.</P>
<P>Un'espressione elementare inizia con una tilde seguita da una lettera che ne definisce il significato. A seconda dei casi può essere necessario aggiungere una stringa di ricerca in base al contesto stabilito dalla lettera iniziale.</P>
<P class="syntax"><TT>~<VAR>x</VAR><STRONG><BIG>|</BIG></STRONG>~<VAR>x</VAR><VAR>stringa</VAR>
</TT></P>
<P>Le stringhe non vanno delimitate e sono presi in considerazione tutti gli spazi inseriti. Dal momento che gli spazi hanno importanza, quando si abbinano più espressioni attraverso l'uso di operatori booleani, è necessario evitare l'inserzione di spazi aggiuntivi. Ciò è particolarmente importante in considerazione del fatto che l'operatore booleano AND si ottiene semplicemente mettendo in sequenza due espressioni. Per esempio, <SAMP>~snet~nicq</SAMP> cerca la corrispondenza per i pacchetti appartenenti alla sezione <SAMP>net</SAMP>, contenenti la stringa <SAMP>icq</SAMP> nel nome. La tabella <A HREF="a236.html#anchor507">22.5</A> riepiloga la sintassi delle espressioni elementari principali, compresi gli operatori booleani con cui si possono abbinare o modificare.</P>
<TABLE ID="anchor507" BORDER="3">
<THEAD>
<TR><TD>Espressione </TD><TD>Descrizione </TD></TR>
</THEAD>
<TBODY>
<TR><TD>~v </TD><TD>Pacchetto virtuale. </TD></TR>
<TR><TD>~E </TD><TD>Pacchetto essenziale. </TD></TR>
<TR><TD>~i </TD><TD>Pacchetto installato attualmente. </TD></TR>
<TR><TD>~c </TD><TD>Pacchetto rimosso lasciando i file di configurazione. </TD></TR>
<TR><TD>~a<VAR>azione_richiesta</VAR> </TD><TD>Pacchetto per il quale è stata richiesta un'azione particolare. </TD></TR>
<TR><TD>~ainstall </TD><TD>Pacchetto da installare. </TD></TR>
<TR><TD>~aupgrade </TD><TD>Pacchetto da aggiornare. </TD></TR>
<TR><TD>~aremove </TD><TD>Pacchetto da disinstallare. </TD></TR>
<TR><TD>~apurge </TD><TD>Pacchetto da eliminare. </TD></TR>
<TR><TD>~ahold </TD><TD>Pacchetto da conservare nella versione installata attualmente. </TD></TR>
<TR><TD>~B<VAR>dipendenza</VAR> </TD><TD>Pacchetto con problemi di dipendenze di qualche tipo. </TD></TR>
<TR><TD>~Bdepends </TD><TD>Pacchetto che dipende da altri per funzionare. </TD></TR>
<TR><TD>~Bpredepends </TD><TD>Pacchetto che dipende da altri per poter essere installato. </TD></TR>
<TR><TD>~Brecommends </TD><TD>Pacchetto che raccomanda la presenza di altri pacchetti. </TD></TR>
<TR><TD>~Bsuggests </TD><TD>Pacchetto che suggerisce la presenza di altri pacchetti. </TD></TR>
<TR><TD>~Bconflics </TD><TD>Pacchetto che va in conflitto con altri pacchetti. </TD></TR>
<TR><TD>~n<VAR>nome</VAR> </TD><TD>Pacchetto contenente la stringa indicata nel nome. </TD></TR>
<TR><TD>~d<VAR>descrizione</VAR> </TD><TD>Pacchetto contenente la stringa indicata nella descrizione. </TD></TR>
<TR><TD>~m<VAR>curatore</VAR> </TD><TD>Pacchetto contenente la stringa indicata nel nome del curatore. </TD></TR>
<TR><TD>~p<VAR>priorità</VAR> </TD><TD>Pacchetto appartenente alla priorità indicata. </TD></TR>
<TR><TD>~prequired </TD><TD>Pacchetto necessario. </TD></TR>
<TR><TD>~pimportant </TD><TD>Pacchetto importante. </TD></TR>
<TR><TD>~pstandard </TD><TD>Pacchetto standard. </TD></TR>
<TR><TD>~poptional </TD><TD>Pacchetto opzionale. </TD></TR>
<TR><TD>~pextra </TD><TD>Pacchetto extra. </TD></TR>
<TR><TD>~punknown </TD><TD>Pacchetto non classificato per quanto riguarda la priorità. </TD></TR>
<TR><TD>~s<VAR>sezione</VAR> </TD><TD>Pacchetto appartenente alla sezione indicata. </TD></TR>
<TR><TD>~V<VAR>versione</VAR> </TD><TD>Pacchetto con la versione indicata. </TD></TR>
<TR><TD><VAR>espr_1</VAR><VAR>espr_2</VAR> </TD><TD>AND: si devono verificare entrambe le condizioni. </TD></TR>
<TR><TD><VAR>espr_1</VAR>|<VAR>espr_2</VAR> </TD><TD>OR: è sufficiente che si verifichi una sola delle due espressioni. </TD></TR>
<TR><TD>!<VAR>espr_1</VAR> </TD><TD>NOT: inverte il senso dell'espressione. </TD></TR>
<TR><TD>( ) </TD><TD>Raggruppa le espressioni. </TD></TR>
</TBODY>
</TABLE>
<P><EM> Tabella <A HREF="a236.html#anchor507">22.5</A>. Alcune delle espressioni di ricerca e di selezione. </EM></P>
<H3>22.3.3 <A NAME="title417"></A><A NAME="anchor508"></A>
Navigazione e altri comandi affini </H3>
<P>La navigazione sull'elenco dei pacchetti avviene in modo abbastanza intuitivo, dove in particolare il tasto [<KBD>Tab</KBD>] consente di mettere a fuoco aree diverse sullo schermo, dove quindi si può intervenire con i soliti tasti freccia; inoltre, la selezione delle azioni da compiere sui pacchetti è abbastanza simile a quella di <A NAME="index2046"></A>DSelect. In particolare, occorre considerare che l'uso del tasto [<KBD>+</KBD>] porta normalmente alla selezione del pacchetto, con la sistemazione delle dipendenze relative; inoltre, il tasto [<KBD>-</KBD>] può essere usato ripetutamente per diminuire il livello di installazione del pacchetto, in base alle richieste precedenti (normalmente si può verificare direttamente sullo schermo l'effetto dei cambiamenti, per cui basta provare per vedere il risultato). Una volta definite le azioni da compiere sui pacchetti, si passa all'azione con il tasto [<KBD>g</KBD>]. La tabella <A HREF="a236.html#anchor509">22.6</A> riepiloga i tasti usati per la navigazione e per le azioni più importanti.</P>
<TABLE ID="anchor509" BORDER="3">
<THEAD>
<TR><TD>Tasto </TD><TD>Descrizione </TD></TR>
</THEAD>
<TBODY>
<TR><TD>Ctrl+l </TD><TD>Ridisegna lo schermo. </TD></TR>
<TR><TD>Ctrl+_, Ctrl+u </TD><TD>Annulla l'ultima operazione. </TD></TR>
<TR><TD>Tab </TD><TD>Mette a fuoco una zona diversa dello schermo. </TD></TR>
<TR><TD>u </TD><TD>Aggiorna l'elenco dei pacchetti. </TD></TR>
<TR><TD>?, F1 </TD><TD>Mostra la guida interna. </TD></TR>
<TR><TD>F10 </TD><TD>Richiama il <A NAME="index2047"></A>menù a tendina. </TD></TR>
<TR><TD>freccia su, k </TD><TD>Sposta il cursore sul pacchetto precedente. </TD></TR>
<TR><TD>freccia giù, j </TD><TD>Sposta il cursore sul pacchetto successivo. </TD></TR>
<TR><TD>Invio </TD><TD>Espande o richiude un ramo. </TD></TR>
<TR><TD>[ </TD><TD>Espande una ramificazione completa. </TD></TR>
<TR><TD>] </TD><TD>Chiude una ramificazione completa. </TD></TR>
<TR><TD>^ </TD><TD>Si porta sul raggruppamento a cui appartiene la voce evidenziata. </TD></TR>
<TR><TD>K </TD><TD>Si porta sulla voce precedente allo stesso livello di quella attuale. </TD></TR>
<TR><TD>J </TD><TD>Si porta sulla voce successiva allo stesso livello di quella attuale. </TD></TR>
<TR><TD>+ </TD><TD>Seleziona la voce. </TD></TR>
<TR><TD>- </TD><TD>Diminuisce il livello di installazione. </TD></TR>
<TR><TD>_ </TD><TD>Richiede l'eliminazione del pacchetto. </TD></TR>
<TR><TD>= </TD><TD>Richiede il mantenimento della versione attuale. </TD></TR>
<TR><TD>D </TD><TD>Mostra o toglie l'area di descrizione del pacchetto evidenziato. </TD></TR>
<TR><TD>a </TD><TD>Fa arretrare il testo della descrizione del pacchetto. </TD></TR>
<TR><TD>z </TD><TD>Fa avanzare il testo della descrizione del pacchetto. </TD></TR>
<TR><TD>d </TD><TD>Mostra le dipendenze del pacchetto evidenziato. </TD></TR>
<TR><TD>r </TD><TD>Mostra l'elenco dei pacchetti che dipendono da quello evidenziato. </TD></TR>
<TR><TD>v </TD><TD>Mostra l'elenco delle versioni disponibili del pacchetto. </TD></TR>
<TR><TD>g </TD><TD>Procede con le operazioni richieste. </TD></TR>
<TR><TD>q </TD><TD>Conclude il contesto attuale, conservando le modifiche apportate. </TD></TR>
<TR><TD>x </TD><TD>Conclude il contesto attuale, annullando le modifiche apportate. </TD></TR>
<TR><TD>/ </TD><TD>Definisce un modello di ricerca. </TD></TR>
<TR><TD>\ </TD><TD>Continua la ricerca con l'ultimo modello fornito. </TD></TR>
<TR><TD>i </TD><TD>Mostra tutte le informazioni disponibili su un pacchetto. </TD></TR>
<TR><TD>l </TD><TD>Riduce l'elenco dei pacchetti in base a un'espressione. </TD></TR>
<TR><TD>G </TD><TD>Cambia la modalità di raggruppamento dei pacchetti. </TD></TR>
<TR><TD>S </TD><TD>Cambia la modalità di ordinamento dei pacchetti. </TD></TR>
</TBODY>
</TABLE>
<P><EM> Tabella <A HREF="a236.html#anchor509">22.6</A>. Navigazione e comandi principali. </EM></P>
<P>A seconda delle circostanze, <A NAME="index2048"></A>Aptitude può entrare in un contesto differente, che si annida di un livello rispetto alla situazione precedente. Per concludere l'attività nel contesto nuovo, basta usare il tasto [<KBD>q</KBD>] (oppure [<KBD>x</KBD>] se opportuno), dopo il quale si raggiunge il livello precedente. Giunti all'ultimo livello, si conclude il funzionamento del programma.</P>
<H3>22.3.4 <A NAME="title418"></A><A NAME="anchor510"></A>
Informazioni sintetiche sulla situazione dei pacchetti </H3>
<P>In condizioni normali, salvo una configurazione differente, i pacchetti vengono elencati mostrando inizialmente una o due lettere: la prima indica lo stato del pacchetto, la seconda serve a specificare l'azione richiesta sul pacchetto. Oltre a questo, lo stato e le richieste sui pacchetti viene messo in evidenza anche con l'uso del colore di sfondo sulle righe che li riguardano. Le tabelle <A HREF="a236.html#anchor511">22.7</A> e <A HREF="a236.html#anchor512">22.8</A> descrivono brevemente i simboli utilizzati in questo modo.</P>
<TABLE ID="anchor511" BORDER="3">
<THEAD>
<TR><TD>Simbolo </TD><TD>Sfondo </TD><TD>Descrizione </TD></TR>
</THEAD>
<TBODY>
<TR><TD>v </TD><TD> </TD><TD>Pacchetto virtuale. </TD></TR>
<TR><TD>B </TD><TD>rosso </TD><TD>Pacchetto con problemi di qualche tipo. </TD></TR>
<TR><TD>u </TD><TD> </TD><TD>Pacchetto estratto ma non configurato. </TD></TR>
<TR><TD>C </TD><TD> </TD><TD>Pacchetto configurato parzialmente. </TD></TR>
<TR><TD>H </TD><TD> </TD><TD>Pacchetto installato parzialmente. </TD></TR>
<TR><TD>c </TD><TD> </TD><TD>Pacchetto disinstallato lasciando la configurazione. </TD></TR>
<TR><TD>i </TD><TD> </TD><TD>Pacchetto installato regolarmente. </TD></TR>
<TR><TD>E </TD><TD> </TD><TD>Errore interno al programma. </TD></TR>
</TBODY>
</TABLE>
<P><EM> Tabella <A HREF="a236.html#anchor511">22.7</A>. Simbologia relativa allo stato dei pacchetti. </EM></P>
<TABLE ID="anchor512" BORDER="3">
<THEAD>
<TR><TD>Simbolo </TD><TD>Sfondo </TD><TD>Descrizione </TD></TR>
</THEAD>
<TBODY>
<TR><TD>h </TD><TD>bianco </TD><TD>Mantenere la versione attuale. </TD></TR>
<TR><TD>p </TD><TD>magenta </TD><TD>Disinstallare completamente, compresi i file di configurazione. </TD></TR>
<TR><TD>d </TD><TD>magenta </TD><TD>Disinstallare lasciando la configurazione. </TD></TR>
<TR><TD>B </TD><TD>rosso </TD><TD>Problemi di qualche tipo. </TD></TR>
<TR><TD>i </TD><TD>verde </TD><TD>Installare. </TD></TR>
<TR><TD>r </TD><TD> </TD><TD>Reinstallare. </TD></TR>
<TR><TD>u </TD><TD>blu </TD><TD>Aggiornare. </TD></TR>
</TBODY>
</TABLE>
<P><EM> Tabella <A HREF="a236.html#anchor512">22.8</A>. Simbologia relativa alle azioni da applicare ai pacchetti. </EM></P>
<H3>22.3.5 <A NAME="title419"></A><A NAME="anchor513"></A>
Configurazione interattiva </H3>
<P>La configurazione di <A NAME="index2049"></A>Aptitude può essere estremamente complessa, intervenendo nel file <CODE>/etc/apt/apt.conf</CODE>, come descritto ampiamente nella guida interna del programma. A fianco di quella generale, viene creata automaticamente una configurazione personalizzata, corrispondente al file <CODE>~/.aptitude/config</CODE>. Questo file viene gestito attraverso le voci del <A NAME="index2050"></A>menù {<CODE>Options</CODE>} ed è sufficiente intervenire lì perché questo file venga aggiornato.</P>
<P>Pur non rappresentando un sistema completo di configurazione, dalle voci di questo <A NAME="index2051"></A>menù si può modificare notevolmente l'aspetto delle informazioni che vengono mostrate. Fortunatamente, la voce {<CODE>Revert options</CODE>} consente di ripristinare tutto alla configurazione predefinita, che in questo caso è rappresentata da quanto contenuto (o non contenuto) nel file <CODE>/etc/apt/apt.conf</CODE>.</P>
<H2>22.4 <A NAME="title420"></A><A NAME="anchor514"></A>
<A NAME="index2052"></A>Gnome APT <A NAME="index2053"></A> </H2>
<P><A NAME="index2054"></A>Gnome APT, <SUP><A HREF="#footnote5" NAME="footnote-ref5">(5)</A></SUP> è un applicativo grafico per la gestione dei pacchetti secondo il sistema <A NAME="index2055"></A>APT. Il funzionamento del programma è molto intuitivo e le voci del <A NAME="index2056"></A>menù sono organizzate in modo logico. La figura <A HREF="a236.html#anchor515">22.6</A> mostra come potrebbe presentarsi all'avvio (eseguibile <SAMP>gnome-apt</SAMP>).</P>
<TABLE ID="anchor515" BORDER="0" WIDTH="100%">
<TR><TD>
<P><IMG SRC="38.jpg" ALT="figure/a2-apt-gnome-apt" WIDTH="850" ></P>
<P class="caption"> Figura <A HREF="a236.html#anchor515">22.6</A>. <A NAME="index2057"></A>Gnome APT. </P>
</TD></TR>
</TABLE>
<P>La finestra sul lato destro elenca i pacchetti in una struttura ad albero, secondo la classificazione in gruppi e l'ordinamento determinato attraverso le funzioni accessibili dal <A NAME="index2058"></A>menù {<CODE>View</CODE>}. Nella figura si vede una struttura a gruppi di tipo alfabetico, che può essere cambiata agevolmente secondo altre caratteristiche dei pacchetti.</P>
<P>L'apertura delle voci dell'elenco si ottiene facendo un clic con il primo tasto del mouse (quello sinistro), puntando sulla casellina antecedente ogni nome. Se la voce rappresenta un gruppo di pacchetti, si visualizza il ramo di pacchetti o di sottogruppi; se la voce è un pacchetto, si ottiene l'elenco delle dipendenze (che a loro volta possono avere altre dipendenze). Così come si apre un ramo, si può richiudere, facendo nuovamente un clic con il primo tasto del mouse.</P>
<P>Facendo un clic con il primo tasto del mouse su un nome dell'elenco, lo si seleziona. Se si tratta di un pacchetto, sul riquadro a sinistra appaiono le informazioni disponibili su di esso.</P>
<P>Facendo un clic con il terzo tasto (quello destro) quando si punta su un nome dell'elenco, appare un <A NAME="index2059"></A>menù a scomparsa con le azioni che possono essere applicate alla voce relativa. Se si tratta di un pacchetto può essere selezionata l'azione da compiere.</P>
<P>Le colonne che contengono le informazioni dei pacchetti elencati, possono essere spostate e omesse. In condizioni normali, le prime tre colonne, evidenziate dalle sigle <SAMP>D</SAMP>, <SAMP>K</SAMP> e <SAMP>I</SAMP>, contengono dei pulsanti di selezione, con cui è possibile, rispettivamente: disinstallare, mantenere o installare un pacchetto. Mantenere un pacchetto può significare il non disinstallarlo oppure il non aggiornarlo, a seconda del contesto.</P>
<P>Dal <A NAME="index2060"></A>menù {<CODE>Action</CODE>} è possibile accedere a due funzioni molto importanti: l'aggiornamento dell'elenco dei pacchetti, con la voce {<CODE>Update</CODE>}; l'avvio dell'esecuzione delle richieste sull'installazione, aggiornamento e disinstallazione dei pacchetti, attraverso la voce {<CODE>Complete run</CODE>}.</P>
Appunti di informatica libera 2001.08.18 --- <EM>Copyright © 2000-2001 Daniele Giacomini -- daniele @ swlibero.org</EM><HR>
<P><A HREF="#footnote-ref1" NAME="footnote1">1)</A> <STRONG>APT</STRONG> GNU GPL</P>
<P><A HREF="#footnote-ref2" NAME="footnote2">2)</A> <STRONG>Deity</STRONG> GNU GPL</P>
<P><A HREF="#footnote-ref3" NAME="footnote3">3)</A> Si fa riferimento a nomi di pacchetto, sia quando si disinstalla, sia quando di installa indifferentemente; il nome dell'archivio che contiene il pacchetto cercato viene determinato autonomamente.</P>
<P><A HREF="#footnote-ref4" NAME="footnote4">4)</A> <STRONG>Aptitude</STRONG> GNU GPL</P>
<P><A HREF="#footnote-ref5" NAME="footnote5">5)</A> <STRONG>Gnome APT</STRONG> GNU GPL</P>
</DIV>
<HR>
<P>Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome <A HREF="pacchetti_debian_apt.html">pacchetti_debian_apt.html</A></P>
<P>
<A HREF="a237.html">[successivo]</A>
<A HREF="a235.html">[precedente]</A>
<A HREF="a2.html">[inizio]</A>
<A HREF="a2506.html">[fine]</A>
<A HREF="a21.html">[indice generale]</A>
<A HREF="a26.html">[violazione GPL]</A>
<A HREF="a2504.html">[licenze]</A>
<A HREF="a2505.html">[indice analitico]</A>
</P>
</BODY>
</HTML>
|