apt-get équivalent de yum localinstall

9

Lorsque j'utilise Fedora, j'utilise généralement yum localinstallcomme moyen d'installer un rpm obtenu en dehors des référentiels de distribution. Je ne trouve pas d'option équivalente dans la apt-getpage de manuel. J'utilise Ubuntu 11.04, si cela importe.

Quel est l' apt-getéquivalent de yum localinstall? Dois-je utiliser dpkgdirectement dans ce cas?

Vitor Py
la source

Réponses:

10

Si votre package dépend de certains autres packages disponibles dans les référentiels, la commande suivante se chargera également d'installer les dépendances (ce qui dpkgne peut pas le faire):

gdebi my_local_package.deb

cependant, vous devrez peut-être vous installer d'abord gdebi, s'il n'est pas déjà disponible sur votre installation Debian.

enzotib
la source
C'est exactement ce que je cherchais! Je vous remercie.
Vitor Py
Notez simplement que cela nécessite X. C'est bon pour le poste de travail. Pas si bon pour un serveur géré à distance.
Michał Šrajer
2
@ Michał Šrajer: non, il n'a pas besoin de X, vous en parlez gdebi-gtk.
enzotib
lorsque vous essayez la solution gdebi, recherchez le gdebi-corepackage pour CLI uniquement. il ressemble à gdebiGTK par défaut. Vous pouvez voir la liste des pkgs GDebi comme ceci: apt-cache search gdebi. Vous voulez celui-ci: "gdebi-core - outil simple pour installer les fichiers deb".
mighq
9

Comme l'a dit @enzotib, gdebic'est bien, cela permet même une simple inspection du script pré / post-installation si vous êtes paranoïaque comme moi.

Mais n'oublie pas le chemin de la coquille, petit padawan.

Dans un shell, "simplement":

dpkg -i file.deb

Si toutes les dépendances sont présentes, il s'installera. Sinon, vous verrez un message d'erreur laid et long, mais ce n'est pas la fin du monde:

# dpkg -i somepackage.deb 
...snip...
dpkg: error processing somepackage (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 somepackage

Maintenant, installez les dépendances manquantes ou rétablissez:

# apt-get install -f
...snip...
The following extra packages will be installed:
...snip...
Do you want to continue [Y/n]?
shellholic
la source
4

Vous devez utiliser directement dpkg:

dpkg -i my_local_package.deb 

ou configurez votre propre référentiel local. Je préfère faire juste dpkg -i.

Michał Šrajer
la source
Est-ce la meilleure façon de le faire sur une distribution basée sur Debian? Sur Fedora et RHEL, j'utilise toujours yumet ne touche jamais rpmdirectement.
Vitor Py
Je pense que ça va. D'après les documents officiels: "dpkg est un outil en ligne de commande utilisé pour installer les packages".
Michał Šrajer
Pour les futurs googleurs, cette réponse échouera si le nouveau package dépend d'autres packages qui ne sont pas déjà installés. dpkgvérifie les dépendances, mais ne les récupère pas, c'est pourquoi aptet gdebiont été faites.
Knetic