Apt-file: ricerca all'interno dei pacchetti
|
Attenzione. Questa guida è da considerarsi abbandonata, per via del tempo trascorso dall'ultima verifica.
Potrà essere resa obsoleta, previa segnalazione sul forum, se nessuno si propone per l'adozione. |
Versioni Compatibili Debian 7 "wheezy" Debian 8 "jessie" |
Introduzione
Apt-file è un potente motore di ricerca in grado di indicare a quale pacchetto appartiene un determinato file; sembra una cosa da poco, ma non sempre è così, soprattutto quando si ha a che fare con le compilazioni da sorgenti o quando si ha bisogno di cercare un file appartenente a pacchetti non installati sul sistema.
Installazione
Niente di più semplice, ovviamente con privilegi di amministrazione:
# apt-get install apt-file
Configurazione
Il file di configurazione è /etc/apt/apt-file.conf
e presenta due sezioni:
- dove collocare i file archivio e come rinominarli (all'interno del file è presente uno specchietto riassuntivo delle variabili utilizzabili);
- la sintassi dei comandi utilizzati per scaricare i file.
Queste direttive, salvo casi particolari, non necessitano di modifiche.
Utilizzo
Una volta installato, dobbiamo aggiornare la lista dei file e popolare la cache che apt-file
utilizzerà per le sue ricerche. Per fare questo è sufficiente dare il seguente comando:
# apt-file update
così verranno scaricati i file "Packages.gz" per i vari repository presenti nel file /etc/apt/sources.list
e contenenti la lista di tutti i pacchetti disponibili. Questi file, a seconda dei repository impostati, possono raggiungere dimensioni di svariati MByte
La directory che conterrà la cache di apt-file
sarà:
- ~/.cache/apt-file/
- se il comando è stato eseguito da utente normale
- /var/cache/apt/apt/file/
- se il comando è stato eseguito da root, e sarà consultabile da tutti gli utenti del sistema
Il comando non necessita di essere eseguito come root.
Vediamo, ora, le principali funzioni.
Aggiornamento della cache
# apt-file update
Aggiorna la cache di apt-file
.
Questo è il comando che bisognerebbe eseguire sempre prima di ogni ricerca per fare in modo che quest'ultima possa operare su dati aggiornati. In alternativa è possibile creare un job di Cron che effettui l'aggiornamento della cache ad ogni avvio del sistema; per questo scopo è sufficiente eseguire il comando "crontab -e" da utente normale (o da root o da entrambi) e inserire le seguenti righe:
# aggiornamento al boot della cache di apt-file @reboot apt-file -N update
Eliminazione della cache
# apt-file purge
Cancella la cache di apt-file
. Anche in questo caso, come per l'update, la directory varierà a seconda dell'utente che esegue il comando.
Ricerca di un file
$ apt-file search <testo>
Cerca e mostra tutti i file che hanno <testo> nel proprio nome, oltre al pacchetto in cui sono contenuti.
Esempio:
$ apt-file search bin/nome-eseguibile
Questo comando troverà tutti i pacchetti che contengono file che cominciano per nome-eseguibile e che si trovano in una directory che finisce per bin (come /bin/
, /sbin/
, /usr/bin
, /usr/sbin
).
Visualizzazione dei contenuti di un pacchetto
$ apt-file list <nomepacchetto>
Mostra il contenuto di <nomepacchetto>.
Si noti che questo comando è molto simile a "dpkg -L <nomepacchetto>" tranne che per un aspetto non di poco conto: il pacchetto non deve necessariamente essere installato.
Esempio:
$ apt-file -F list apt
mostrerà il contenuto del pacchetto apt
.
Invece il comando:
$ apt-file list apt
mostrerà il contenuto di tutti i pacchetti che hanno apt
nel loro nome.
Opzioni
Tra le opzioni disponibili, ricordiamo quelle principali (di uso comune):
--ignore-case | -i
- permette di effettuare ricerca case-insensitive;
--regexp | -x
- tratta come un pattern di una espressione regolare;
--package-only
- mostra solo il nome del pacchetto, e non quello dei file, utile quando si esegue una ricerca usando un nome molto comune.
--fixed-string | -F
- utile per delimitare la ricerca solo al solo pattern effettivamente digitato.
Guida scritta da: MaXeR | Debianized 80% |
Estesa da: | |
Verificata da: | |
Verificare ed estendere la guida | Cos'è una guida Debianized |