Ho provato ad installare alcuni programmi in Debian ed è la prima volta che uso Linux, quindi ho qualche problema. Quando provo a installare build-essential
con:
sudo apt-get install build-essential
o un altro comando simile, viene visualizzato il messaggio “s nessun “candidato allinstallazione”
Ho “cercato la risposta in altre domande come questa, ma non riesco a trovare una soluzione.
Commenti
- packages.debian.org/…
- prova per eseguire prima
sudo apt-get update
, lelenco dei pacchetti potrebbe mancare
Risposta
Il seguente errore E: Package "build-essential" has no installation candidate
significa che “non hai il main
repository sul tuo sources.list
Il pacchetto build-essential
è disponibile su main
repository.
Firdt, dovresti modificare il tuo sources.list
:
sudo apt edit-sources
aggiungere le seguenti righe ( esempio sources.list
con main
e contrib
):
deb http://httpredir.debian.org/debian jessie main contrib deb-src http://httpredir.debian.org/debian jessie main contrib deb http://httpredir.debian.org/debian jessie-updates main contrib deb-src http://httpredir.debian.org/debian jessie-updates main contrib deb http://security.debian.org/ jessie/updates main contrib deb-src http://security.debian.org/ jessie/updates main contrib
Salva ed esegui i seguenti comandi per installare il pacchetto build-essential
:
sudo apt update sudo apt upgrade sudo apt install build-essential
Commenti
- ok, ma come si fa in un container docker?
- Provo a modificare le sorgenti ma ottengo lerrore: apt-edit: comando non trovato
Risposta
Affinché Apt possa conoscere i pacchetti disponibili, ha bisogno di una configurazione valida in /etc/apt/sources.list
(di solito viene inizializzata correttamente quando installi la distribuzione) e deve scaricare con successo il Packages
file dai percorsi di rete configurati. Gli scenari di errore comuni includono
- Configurazione obsoleta. Se stai tentando di utilizzare una distribuzione che non è più supportata, gli URL corretti una volta in
/etc/apt/sources.list
non funzionano più. Il sintomo è “File non trovato” o “Nessun percorso per lhost” se lintero server è andato via. - Problemi di firewall che impediscono ad Apt di scaricare
Packages
file, con sintomi simili. Se sei in grado di connetterti alle posizioni configurate da Apt da altrove, forse devi utilizzare un proxy? - Errori temporanei del server che di solito scompaiono da soli dopo pochi minuti o ore.
- Impossibile eseguire
apt-get update
. Se le copie locali dei filePackages
sono troppo vecchie, punteranno a versioni del pacchetto che non esistono più nellarchivio sul server.
Cause di problemi meno comuni ma pensabili sarebbero lo zapping dei file di configurazione per errore (ripristinare dal backup? Includere informazioni sufficienti nella domanda in modo che possiamo dirti le impostazioni predefinite comuni per la tua distribuzione?), Problemi di connettività fisica (linterfaccia è attiva e tu riesci a connetterti ad esempio a Google con curl
o simili?) e problemi con il disco locale (file Packages
corrotti? Sola lettura montata su disco? ). Se hai installato da un DVD, è anche possibile che solo il DVD sia configurato in Apt come sorgente del pacchetto.
Per la risoluzione dei problemi in modo più dettagliato, qualsiasi messaggio di errore o altro sintomo sarebbe utile per identificare il errore, ma la comprensione del sistema a questo livello è spesso sufficiente per diagnosticare da soli.
Un piccolo fastidio è che gli URL di configurazione non sono chiaramente visibili dal normale output di Apt; la cofigurazione ha il seguente aspetto
deb http://example.net/path distribution section another
e Apt stesso compila alcune parti per costruire un percorso URL completo di uno o più file Packages
sul server. Con l opzione --print-uris
, puoi vedere esattamente cosa sta cercando di recuperare.