¿Por qué recibo "Comando 'deb' no encontrado"?


102

He encontrado varias instrucciones de instalación que incluyen el comando deb. Pero parece que este comando no está disponible en mi instalación.

¿Dónde puedo obtener este comando? ¿Hay una solución alternativa?


3
Acepte una respuesta a las preguntas donde tenga una buena respuesta, para demostrar que le gusta una respuesta y que le ayudó más. Puede hacerlo con la marca de verificación a la izquierda.
ζ--

2
Me da vergüenza no haberme dado cuenta de que las instrucciones que estaba leyendo no me mostraban algo que escribir en la línea de comando, me mostraba una línea para poner en un archivo. ¡Me alegra que hayas hecho esta pregunta!
Tyler Collier

Respuestas:


95

'deb' no es un comando. Se utiliza en el /etc/apt/sources.listarchivo para indicar un repositorio de software de Debian.

Desde Ubuntu Manpage - sources.list :

La lista de fuentes está diseñada para admitir cualquier cantidad de fuentes activas y una variedad de medios de origen. El archivo enumera una fuente por línea, con la fuente más preferida en primer lugar. El formato de cada línea es: escriba uri args. El primer elemento, tipo, determina el formato de los argumentos. uri es un identificador universal de recursos (URI), que es un superconjunto del localizador de recursos universal o URL más específico y conocido.

El tipo deb describe un típico archivo Debian de dos niveles, distribución / componente. El formato para una entrada sources.list usando los tipos deb y deb-src es:

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

El URI para el tipo deb debe especificar la base de la distribución Debian, desde la cual APT encontrará la información que necesita. La distribución puede especificar una ruta exacta, en cuyo caso los componentes deben omitirse y la distribución debe terminar con una barra diagonal (/). Esto es útil para cuando el caso solo es interesante una subsección particular del archivo denotada por el URI. Si la distribución no especifica una ruta exacta, al menos un componente debe estar presente.

Entonces, si tengo deb http://archive.ubuntu.com/ubuntu/ quantal main restricteden sources.listél dice que tengo un archivo de Debian que se basa en " http://archive.ubuntu.com/ubuntu/ ", la distribución es "quantal" y los componentes son "main" y "restringidos".


22
Y sources.listestá en /etc/apt/12.04.
Ahmed Fasih

44
Puede ser útil si dice que las líneas "deb" son instrucciones agregadas a las listas de origen de Aptitude. Eso eliminaría la cantidad de confusión que crea todo este problema.
Shahriyar Imanov

23

Al igual que la respuesta de @Eric Carvalho deb no es la línea de comando. Si tiene deb, entonces url así:

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

Editar

Al igual que commit de @muru , debe crear un nuevo archivo con la extensión .listen la /etc/apt/source.list.d/carpeta:

Ejemplo : quiero descargar Oracle virtualbox, crear un nuevo archivo:

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

Luego copie y pegue la línea de deb en este archivo


1
1. Es apt, no opt(aunque hay un opt) y 2. Nunca edite /etc/apt/sources.listpara agregar una línea a menos que sea un espejo Ubuntu / repositorio oficial. Cree un nuevo archivo /etc/apt/sources.list.dcon la extensión .listcon esa línea.
muru

1
@muru " Nunca edite /etc/apt/sources.list para agregar una línea a menos que sea un espejo / repositorio oficial de Ubuntu " . ¿Por qué? Claro, hacer .listarchivos /etc/apt/sources.list.des lo que hago en estas circunstancias y es lo que generalmente recomiendo. Pero no veo ninguna razón para insistir en que ingresen manualmente fuentes de software de terceros agregadas /etc/apt/sources.list.d. Cuando es posible, algunos conffiles no son editados por el usuario (por ejemplo, use /etc/profile.dover /etc/profile, posiblemente use /etc/sudoers.dover /etc/sudoers), pero a sources.listmenudo se modifican. (Incluso personalizado por Ubiquity en un espejo regional.)
Eliah Kagan

@EliahKagan, ¿cuándo has visto Ubiquity agregar un repositorio de terceros (no espejo) a sources.list? O para el caso, ¿alguna herramienta oficial? sources.list.d está presente por una razón. Seguiré insistiendo en que se use para repositorios de terceros.
muru

@muru Lo siento, no estaba claro. Mencioné que el comportamiento de Ubiquity para señalar no /etc/apt/sources.listes uno de los conffiles que uno puede dejar solo para facilitar una actualización más fluida , ya que esa es a menudo (tal vez generalmente) la motivación detrás de fuertes sugerencias para preferir hacer archivos en la X.dedición X. No estoy sugiriendo que Ubiquity habilite repositorios de terceros de ninguna manera. Sin embargo, no ha explicado lo especial de tales repositorios, para que sea realmente incorrecto (es decir, "Nunca edite ...") para ponerlos sources.list.
Eliah Kagan

@EliahKagan No hay nada "realmente malo" en hacerlo, si ese es su problema con la declaración. "Nunca [hacer X]" no siempre significa que hacer X está mal, puede y significa que hacer X es una mala práctica ("Nunca use GOTO"). ¿Feliz ahora? Repita: continuaré insistiendo en que sources.list.d se use para repositorios de terceros y sources.list solo para espejos y repositorios oficiales, a menos que pueda darme una razón clara y sólida de por qué es una buena idea no para hacerlo
muru

10

debNo es un comando de Unix. Si tiene una línea como la siguiente (fuente de Docker):

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

es una línea que debe estar disponible en su ubuntu sources.listpara que apt-getpueda encontrar futuros paquetes de esta nueva fuente.

Sin embargo, no es una buena práctica editar el /etc/apt/sources.listarchivo directamente. En su lugar, agregue la deblínea como una entrada a un nuevo .listarchivo dentro del /etc/apt/sources.list.d/directorio. Crearemos un docker.listarchivo como este:

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

Una vez hecho esto, recuerde realizar una sudo apt-get updatey ahora debería poder encontrar fácilmente nuevos paquetes de esta fuente.


8

Deb no es realmente un comando (yo también lo creía al principio): suponiendo que esté intentando descargar / instalar un deb, haga esto (por ejemplo):

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

entonces dpkg -i whatever.deb

luego ejecuta los comandos:

sudo apt-get update

2
100% relevante y mejor que la mejor respuesta anterior. Obviamente está tratando de descargar / instalar un .deb
dylanh724

2

En Ubuntu, no tiene que editar manualmente source.listpara agregar el repositorio. En cambio, puede usar add-apt-repository, como lo haría para un PPA.

Por ejemplo, para agregar el repositorio LLVM, puede llamar a:

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

Como puede ver, debemos pasar la deblínea como un argumento único al comando.


2

Este no es el comando CLI.

Esta es información sobre algunos repositorios de paquetes de Debian (también utilizados por Ubuntu).

Si quieres usar este repositorio:

  1. Abra el archivo /etc/apt/sources.listcon privilegios de administrador.

  2. Agregue a este archivo una línea con información sobre el repositorio comenzando con deb ...

  3. Guarda el archivo.

  4. Ejecute este comando:

    apt-get update

Ahora podrá usar este repositorio.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.