Tengo un paquete deb para la instalación.
¿Debo instalar con dpkg -i my.deb
? , o por apt?
¿Ambos manejarán bien el problema de la dependencia del software?
Si es por apt, ¿cómo puedo instalar desde deb por apt?
Respuesta aceptada:
Cuando usas apt
para instalar un paquete, debajo del capó usa dpkg
. Cuando instala un paquete usando apt, primero crea una lista de todas las dependencias y la descarga del repositorio.
Una vez que finaliza la descarga, llama a dpkg
para instalar todos esos archivos, satisfaciendo todas las dependencias.
Entonces, si tiene un .deb
archivo, puede instalarlo mediante:
-
Usando:
sudo dpkg -i /path/to/deb/file sudo apt-get install -f
-
Usando:
sudo apt install ./name.deb
O
sudo apt install /path/to/package/name.deb
Con el viejo
apt-get
versiones, primero debe mover su archivo deb a/var/cache/apt/archives/
directorio. Para ambos, luego de ejecutar este comando, automáticamente descargará sus dependencias. -
Primero instalando
gdebi
y luego abra su archivo .deb usándolo (Haga clic con el botón derecho -> Abrir con ). Instalará su paquete .deb con todas sus dependencias.Nota :APT mantiene el índice de paquetes, que es una base de datos de paquetes disponibles en el repositorio definido en
/etc/apt/sources.list
archivo y en el/etc/apt/sources.list.d
directorio. Todos estos métodos no podrán satisfacer la dependencia del software si las dependencias requeridas por la deb no están presentes en el índice del paquete.
¿Por qué usar sudo apt-get install -f
? después de sudo dpkg -i /path/to/deb/file
(como se menciona en el método 1)?
Desde man apt-get
:
-f, --fix-broken
Fix; attempt to correct a system with broken dependencies in place.
Cuando dpkg
instala un paquete y la dependencia de un paquete no está satisfecha, deja el paquete en un estado "desconfigurado" y ese paquete se considera roto.
El sudo apt-get install -f
El comando intenta reparar este paquete roto instalando la dependencia que falta.