APT: Errori (non così) frequenti: differenze tra le versioni
Nessun oggetto della modifica |
|||
(18 versioni intermedie di 6 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili | {{Versioni compatibili}} | ||
= Introduzione = | == Introduzione == | ||
Questa pagina ha lo scopo di raccogliere i casi più frequenti di errori legati all'utilizzo degli strumenti [[APT]] di Debian, quali apt-get, dpkg, ed altri. | Questa pagina ha lo scopo di raccogliere i casi più frequenti di errori legati all'utilizzo degli strumenti [[APT]] di Debian, quali [[apt-get]], [[dpkg]], ed altri. | ||
= apt-get = | == apt-get == | ||
== Problema con la firma GPG == | === Problema con la firma GPG === | ||
Con l'introduzione, da Etch in poi, di una nuova forma di autenticazione dei pacchetti, può capitare di trovarsi davanti ad un messaggio del genere: | Con l'introduzione, da Etch in poi, di una nuova forma di autenticazione dei pacchetti, può capitare di trovarsi davanti ad un messaggio del genere: | ||
Riga 22: | Riga 22: | ||
</pre> | </pre> | ||
{{Box|Aggiornamento:|per risolvere questo problema è sufficiente installare il pacchetto debian-keyring.deb dando il comando:<pre> # apt-get install debian-keyring</pre>}} | |||
[[ | === Problema con la Dynamic MMap === | ||
[[Introduzione all'APT System | APT]] usa un file di cache, in cui vengono archiviate le informazioni disponibili sui pacchetti, che al momento dell'utilizzo viene mappato in memoria (RAM) in un'area di grandezza fissata, chiamata "Dynamic MMap". | |||
Aggiungendo dei repository al <code>/etc/apt/sources.list</code> può succedere che la grandezza fissata di default non sia più sufficiente a contenere le informazioni ottenute, e APT restituisce il seguente errore: | Aggiungendo dei repository al <code>/etc/apt/sources.list</code> può succedere che la grandezza fissata di default non sia più sufficiente a contenere le informazioni ottenute, e APT restituisce il seguente errore: | ||
<pre> | <pre> | ||
Riga 30: | Riga 32: | ||
</pre> | </pre> | ||
Per ovviare all'inconveniente è sufficiente inserire (o modificare) una riga nel file < | Per ovviare all'inconveniente è sufficiente inserire (o modificare) una riga nel file <code>/etc/apt/apt.conf</code>, creandolo se non esiste, in cui viene specificato un limite più alto per la Dynamic MMap: la riga | ||
<pre> | <pre> | ||
APT::Cache-Limit 16777216; | APT::Cache-Limit 16777216; | ||
Riga 39: | Riga 41: | ||
La voce interessante è quella che inizia con <code>Active</code> (non con <code>Free</code>), infatti Linux è solito usare la memoria libera per mantenere una cache, cosa che permette di velocizzare le operazioni più comuni, e la libera al volo in caso di necessità: la memoria attiva è la memoria totale usata, meno quella impiegata come cache ;-) | La voce interessante è quella che inizia con <code>Active</code> (non con <code>Free</code>), infatti Linux è solito usare la memoria libera per mantenere una cache, cosa che permette di velocizzare le operazioni più comuni, e la libera al volo in caso di necessità: la memoria attiva è la memoria totale usata, meno quella impiegata come cache ;-) | ||
Vedere anche: [[ | Vedere anche: [[Introduzione all'APT System]] | ||
=dpkg= | === Aggiornamento al cambio di release === | ||
Il seguente messaggio: | |||
<pre> | |||
Il repository "nome" ha modificato il valore "Suite" da "testing" a "stable" | |||
N: Ciò deve essere accettato prima di poter applicare gli aggiornamenti da questo repository. Per maggiori informazioni consultare la pagina man apt-secure(8). | |||
</pre> | |||
o anche: | |||
<pre> | |||
Il repository "nome" ha modificato il valore "Suite" da "buster" a "testing" | |||
N: Ciò deve essere accettato prima di poter applicare gli aggiornamenti da questo repository. Per maggiori informazioni consultare la pagina man apt-secure(8). | |||
</pre> | |||
o simile potrebbe comparire durante l'aggiornamento se si è verificato un rilascio con conseguente cambio dell'associazione [[codename]]/release (ad esempio [[buster]] è diventata stable e non è più testing).<br(> | |||
Questo messaggio andrà via dopo un: | |||
<pre> | |||
# apt --allow-releaseinfo-change update | |||
</pre> | |||
oppure rispondendo "s" e non "N" o [INVIO] se viene posta la domanda di accettare il cambio di informazioni sulla reelase. | |||
== dpkg == | |||
=== ldconfig e start-stop-daemon non in PATH === | |||
È possibile che, a partire da [[Buster]] in poi, appaia il seguente messaggio d'errore durante un aggiornamento: | |||
<pre> | |||
dpkg: attenzione: "ldconfig" non è stato trovato in PATH o non è un eseguibile | |||
dpkg: attenzione: "start-stop-daemon" non è stato trovato in PATH o non è un eseguibile | |||
dpkg: errore: 2 programmi attesi non sono stati trovati in PATH o non sono eseguibili | |||
Nota: la variabile PATH di root dovrebbe contenere /usr/local/sbin, /usr/sbin e /sbin | |||
E: Sub-process /usr/bin/dpkg returned an error code (2) | |||
</pre> | |||
Ciò è dovuto al cambiamento del comportamento del comando "su": adesso la [[variabili d'ambiente|variabile d'ambiente]] [[Esecuzione di programmi: la variabile PATH|PATH]] non viene più preservata.<br/> | |||
La soluzione consiste nell'utilizzare il comando: | |||
<pre>$ su -</pre> | |||
anziché: | |||
<pre>$ su</pre> | |||
per ottenere i [[Privilegi di amministrazione|privilegi di amministrazione]]. | |||
Si veda anche questo link<sup>[[#Link utili|[1]]]</sup>. | |||
=Link utili= | == Link utili == | ||
[1] [https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=904988 ldconfig e start-stop-daemon non in PATH] ([[BTS]])<br/> | |||
{{Autori | |||
|Autore=[[Utente:S3v|S3v]] 16:55, 7 lug 2019 (CEST)<br/> | |||
(guida originariamente scritta da Maxer) | |||
|Verificata_da= | |||
:[[Utente:HAL 9000|HAL 9000]] 20:14, 3 nov 2019 (CET) | |||
:[[Utente:Marcomg|HAL 9000]] 21:22, 23 lug 2020 (CET) | |||
|Numero_revisori=2 | |||
}} | |||
[[Categoria:Apt]] | [[Categoria:Apt]] | ||
Versione attuale delle 19:26, 23 lug 2020
Versioni Compatibili Tutte le versioni supportate di Debian |
Introduzione
Questa pagina ha lo scopo di raccogliere i casi più frequenti di errori legati all'utilizzo degli strumenti APT di Debian, quali apt-get, dpkg, ed altri.
apt-get
Problema con la firma GPG
Con l'introduzione, da Etch in poi, di una nuova forma di autenticazione dei pacchetti, può capitare di trovarsi davanti ad un messaggio del genere:
W: GPG error: http://ftp.debian-unofficial.org sarge Release: \ The following signatures couldn't be verified because the public key is not available: \ NO_PUBKEY F82E5CC04B2B2B9E
Questo avviso indica che la chiave gpg usata per firmare l'archivio non è disponibile sul computer in uso.
Per ovviare a questo problema, è sufficiente eseguire i seguenti comandi:
# gpg --recv-keys #numerochiaveindicatonelmessaggio # gpg --armor --export #numerochiaveindicatonelmessaggio | apt-key add -
Aggiornamento: per risolvere questo problema è sufficiente installare il pacchetto debian-keyring.deb dando il comando: # apt-get install debian-keyring |
Problema con la Dynamic MMap
APT usa un file di cache, in cui vengono archiviate le informazioni disponibili sui pacchetti, che al momento dell'utilizzo viene mappato in memoria (RAM) in un'area di grandezza fissata, chiamata "Dynamic MMap".
Aggiungendo dei repository al /etc/apt/sources.list
può succedere che la grandezza fissata di default non sia più sufficiente a contenere le informazioni ottenute, e APT restituisce il seguente errore:
Error: Dynamic MMap ran out of room
Per ovviare all'inconveniente è sufficiente inserire (o modificare) una riga nel file /etc/apt/apt.conf
, creandolo se non esiste, in cui viene specificato un limite più alto per la Dynamic MMap: la riga
APT::Cache-Limit 16777216;
imposta il limite a 16 MB, che nei moderni PC è un valore ragionevole.
Per controllare al volo quanta RAM avete disponibile al momento potete usare cat /proc/meminfo
.
La voce interessante è quella che inizia con Active
(non con Free
), infatti Linux è solito usare la memoria libera per mantenere una cache, cosa che permette di velocizzare le operazioni più comuni, e la libera al volo in caso di necessità: la memoria attiva è la memoria totale usata, meno quella impiegata come cache ;-)
Vedere anche: Introduzione all'APT System
Aggiornamento al cambio di release
Il seguente messaggio:
Il repository "nome" ha modificato il valore "Suite" da "testing" a "stable" N: Ciò deve essere accettato prima di poter applicare gli aggiornamenti da questo repository. Per maggiori informazioni consultare la pagina man apt-secure(8).
o anche:
Il repository "nome" ha modificato il valore "Suite" da "buster" a "testing" N: Ciò deve essere accettato prima di poter applicare gli aggiornamenti da questo repository. Per maggiori informazioni consultare la pagina man apt-secure(8).
o simile potrebbe comparire durante l'aggiornamento se si è verificato un rilascio con conseguente cambio dell'associazione codename/release (ad esempio buster è diventata stable e non è più testing).<br(> Questo messaggio andrà via dopo un:
# apt --allow-releaseinfo-change update
oppure rispondendo "s" e non "N" o [INVIO] se viene posta la domanda di accettare il cambio di informazioni sulla reelase.
dpkg
ldconfig e start-stop-daemon non in PATH
È possibile che, a partire da Buster in poi, appaia il seguente messaggio d'errore durante un aggiornamento:
dpkg: attenzione: "ldconfig" non è stato trovato in PATH o non è un eseguibile dpkg: attenzione: "start-stop-daemon" non è stato trovato in PATH o non è un eseguibile dpkg: errore: 2 programmi attesi non sono stati trovati in PATH o non sono eseguibili Nota: la variabile PATH di root dovrebbe contenere /usr/local/sbin, /usr/sbin e /sbin E: Sub-process /usr/bin/dpkg returned an error code (2)
Ciò è dovuto al cambiamento del comportamento del comando "su": adesso la variabile d'ambiente PATH non viene più preservata.
La soluzione consiste nell'utilizzare il comando:
$ su -
anziché:
$ su
per ottenere i privilegi di amministrazione.
Si veda anche questo link[1].
Link utili
[1] ldconfig e start-stop-daemon non in PATH (BTS)
Guida scritta da: S3v 16:55, 7 lug 2019 (CEST) (guida originariamente scritta da Maxer) |
Debianized 60% |
Estesa da: | |
Verificata da: | |
Verificare ed estendere la guida | Cos'è una guida Debianized |