Perché ricevo il comando "deb" non trovato "?


102

Ho trovato diverse istruzioni di installazione che includono il comando deb. Ma sembra che questo comando non sia disponibile sulla mia installazione.

Dove posso ottenere questo comando? C'è una soluzione?


3
Accetta una risposta alle domande in cui hai una buona risposta, per dimostrare che ti piace una risposta e che ti ha aiutato di più. Puoi farlo con il segno di spunta a sinistra.
ζ--

2
Sono imbarazzato dal fatto che non mi rendevo conto che le istruzioni che stavo leggendo non mi stavano mostrando qualcosa da scrivere alla riga di comando, mi stava mostrando una linea da mettere in un file. Sono contento che tu abbia posto questa domanda!
Tyler Collier,

Risposte:


96

'deb' non è un comando. È usato nel /etc/apt/sources.listfile per indicare un repository di software Debian.

Dalla pagina man di Ubuntu - sources.list :

L'elenco delle fonti è progettato per supportare un numero qualsiasi di fonti attive e una varietà di supporti di origine. Il file elenca una fonte per riga, con la fonte più preferita elencata per prima. Il formato di ogni riga è: type uri args. Il primo elemento, type determina il formato per args. uri è un Universal Resource Identifier (URI), che è un superset del più specifico e noto Universal Resource Locator, o URL.

Il tipo deb descrive un tipico archivio Debian a due livelli, distribuzione / componente. Il formato per una voce sources.list che utilizza i tipi deb e deb-src è:

deb [ options ] uri distribution [component1] [component2] [...]

L'URI per il tipo deb deve specificare la base della distribuzione Debian, da cui APT troverà le informazioni di cui ha bisogno. la distribuzione può specificare un percorso esatto, nel qual caso i componenti devono essere omessi e la distribuzione deve terminare con una barra (/). Ciò è utile quando è interessante solo una sottosezione specifica dell'archivio indicata dall'URI. Se la distribuzione non specifica un percorso esatto, deve essere presente almeno un componente.

Quindi, se ho deb http://archive.ubuntu.com/ubuntu/ quantal main restricteda sources.listche dice che ho un archivio Debian che si basa sul " http://archive.ubuntu.com/ubuntu/ ", la distribuzione è "quantal" ed i componenti sono "principale" e "limitato".


22
Ed sources.listè /etc/apt/il 12.04.
Ahmed Fasih,

4
Può essere utile se dici che le righe "deb" sono istruzioni aggiunte agli elenchi di sorgenti di Aptitude. Ciò eliminerebbe la quantità di confusione che l'intera questione crea.
Shahriyar Imanov,

23

Come la risposta di @Eric Carvalho deb non è la riga di comando Se hai deb allora url in questo modo:

deb http://download.virtualbox.org/virtualbox/debian trusty contrib 

modificare

Come commit di @muru , devi creare un nuovo file con l'estensione .listnella /etc/apt/source.list.d/cartella:

Esempio : voglio scaricare Oracle Virtualbox, creare un nuovo file:

sudo gedit /etc/apt/sources.list.d/oracle-virtualbox-trusty.list 

Quindi copia e incolla la linea di deb in questo file


1
1. Non lo aptè opt(anche se esiste opt) e 2. Non modificare mai /etc/apt/sources.listper aggiungere una riga a meno che non sia un mirror / repository ufficiale di Ubuntu. Crea un nuovo file /etc/apt/sources.list.dcon l'estensione .listcon quella linea.
muru,

1
@muru " Non modificare mai /etc/apt/sources.list per aggiungere una riga a meno che non sia un mirror / repository ufficiale di Ubuntu. " Perché? Certo, creare .listfile /etc/apt/sources.list.dè ciò che faccio in queste circostanze ed è ciò che di solito raccomando. Ma non vedo alcun motivo per insistere affinché vengano aggiunte fonti software di terze parti aggiunte manualmente /etc/apt/sources.list.d. Se possibile, alcuni conffile non vengono modificati dall'utente (ad esempio, usa /etc/profile.dover /etc/profile, probabilmente si usa /etc/sudoers.dover /etc/sudoers), ma sources.listviene spesso modificato. (Anche personalizzato da Ubiquity per uno specchio regionale.)
Eliah Kagan,

@EliahKagan quando hai mai visto Ubiquity aggiungere un repository di terze parti (non mirror) a sources.list? O del resto, qualche strumento ufficiale? sources.list.d è presente per un motivo. Continuerò a insistere affinché venga utilizzato per repository di terze parti.
Muru,

@muru Siamo spiacenti, non ero chiaro. Ho menzionato il comportamento di Ubiquity da sottolineare che /etc/apt/sources.listnon è uno dei concetti che si può lasciare in pace per facilitare un aggiornamento più fluido, come spesso è (forse di solito) la motivazione dietro forti suggerimenti per preferire la creazione di file nella X.dmodifica X. Non sto suggerendo che Ubiquity consenta in alcun modo repository di terze parti. Non hai spiegato cosa c'è di speciale in tali repository, tuttavia, in modo da rendere effettivamente sbagliato (ad esempio, "Mai modificare ...") inserirli sources.list.
Eliah Kagan,

@EliahKagan Non c'è nulla di "realmente sbagliato" nel farlo, se questo è il tuo problema con l'affermazione. "Never [do X]" non significa sempre che fare X sia sbagliato, può e significa che fare X è una cattiva pratica ("Non usare mai GOTO"). Felice adesso? Ripeti: continuerò a insistere sul fatto che sources.list.d sia usato per repository di terze parti e fonti.list solo per mirror e repository ufficiali, a meno che tu non possa darmi un motivo chiaro, solido, sul perché sia ​​una buona idea no fare così.
Muru,

10

debnon è un comando unix. Se hai una linea come la seguente (fonte per la finestra mobile):

deb https://apt.dockerproject.org/repo ubuntu-xenial main

è una linea che deve essere disponibile nel tuo Ubuntu in sources.listmodo che apt-getpossa trovare pacchetti futuri da questa nuova fonte.

Tuttavia, non è una buona pratica modificare /etc/apt/sources.listdirettamente il file. Aggiungi invece la debriga come voce a un nuovo .listfile all'interno della /etc/apt/sources.list.d/directory. Creeremo un docker.listfile come questo:

echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" | sudo tee /etc/apt/sources.list.d/docker.list

Una volta fatto, ricordati di eseguire un sudo apt-get updatee ora dovresti essere in grado di trovare facilmente nuovi pacchetti da questa fonte.


8

Deb non è in realtà un comando (all'inizio l'ho pensato anch'io) - Supponendo che tu stia provando a scaricare / installare un deb, fai questo (per esempio):

wget http://whatever.com/whatever.deb

poi dpkg -i whatever.deb

quindi esegui i comandi:

sudo apt-get update

2
100% pertinente e migliore della migliore risposta sopra. Sta ovviamente cercando di scaricare / installare un .deb
dylanh724 il

2

Su Ubuntu, non è necessario modificare manualmente il source.listper aggiungere il repository. Invece, puoi usare add-apt-repository, come faresti per un PPA.

Ad esempio, per aggiungere il repository LLVM, è possibile chiamare:

sudo add-apt-repository 'deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty main'

Come puoi vedere, dobbiamo passare la debriga come singolo argomento al comando.


2

Questo non è il comando CLI.

Queste sono informazioni su alcuni repository di pacchetti Debian (usati anche da Ubuntu).

Se si desidera utilizzare questo repository:

  1. Apri il file /etc/apt/sources.listcon i privilegi di amministratore.

  2. Aggiungi a questo file una riga con le informazioni sul repository che iniziano con deb ...

  3. Salva il file.

  4. Esegui questo comando:

    apt-get update

Ora sarai in grado di utilizzare questo repository.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.