Comment installer un fichier .deb
via la ligne de commande?
Les paquets sont manuellement installés à l’aide de la commande dpkg
(système de gestion des paquets Debian). dpkg
est le backend de commandes telles que apt-get
et aptitude
, qui sont à leur tour le backend pour les applications d'installation à interface graphique telles que le Centre logiciel et Synaptic.
Quelque chose dans le genre de:
dpkg
-> apt-get
, aptitude
-> Synaptic, Centre de logiciels
Mais bien sûr, le moyen le plus simple d’installer un paquet serait tout d’abord les applications GUI (Synaptic, Software Center, etc.), suivies des commandes de terminal apt-get
et aptitude
qui ajoutent une approche très conviviale au système dpkg principal, y compris, sans toutefois s'y limiter, les dépendances intégrées, le contrôle sur ce qui est installé, doit être mis à jour, non installé, les paquets cassés, etc. Enfin, la commande dpkg
qui constitue la base de chacun d'entre eux.
Puisque dpkg est la base, vous pouvez l’utiliser pour installer directement à partir de la ligne de commande.
Sudo dpkg -i DEB_PACKAGE
Par exemple, si le fichier de package s'appelle askubuntu_2.0.deb
, vous devez alors utiliser Sudo dpkg -i askubuntu_2.0.deb
. Si dpkg
signale une erreur en raison de problèmes de dépendance, vous pouvez exécuter Sudo apt-get install -f
pour télécharger les dépendances manquantes et tout configurer. Si cela signale une erreur, vous devrez résoudre vous-même les dépendances en suivant par exemple Comment puis-je résoudre les dépendances non remplies après l'ajout d'un PPA? .
Sudo dpkg -r PACKAGE_NAME
Par exemple, si le package s'appelle askubuntu
, vous devez utiliser Sudo dpkg -r askubuntu
.
Sudo dpkg-reconfigure PACKAGE_NAME
Ceci est utile lorsque vous devez reconfigurer quelque chose lié à ce paquet. Quelques exemples utiles le keyboard-configuration
lorsque vous souhaitez activer le Ctrl+Alt+Backspace afin de réinitialiser le serveur X, vous feriez donc ce qui suit:
Sudo dpkg-reconfigure keyboard-configuration
Une autre solution intéressante est lorsque vous devez définir le fuseau horaire d'un serveur ou de votre ordinateur de test local. Vous devez donc utiliser le package tzdata
:
Sudo dpkg-reconfigure tzdata
Les packages Debian (.deb) sont les packages utilisés dans Ubuntu. Vous pouvez installer n’importe quel paquet .deb sur votre système. Les fichiers .deb peuvent généralement être installés à partir de votre gestionnaire de fichiers (Nautilus) simplement en cliquant dessus, car les associations de fichiers avec le programme d'installation par défaut sont déjà définies dans Ubuntu. Ces instructions sont destinées à ceux qui souhaitent installer des packages à partir du terminal en ligne de commande (Terminal).
Pour installer un paquet Debian ( bunt ) (.deb) téléchargé: Ouvrez Terminal et tapez
Sudo dpkg -i packagename.deb
Pour supprimer un paquet Debian (Ubuntu) (.deb):
Sudo dpkg -r packagename
Pour reconfigurer/réparer un paquet Debian (Ubuntu) installé (.deb):
Sudo dpkg-reconfigure packagename
Mon préféré est GDebi, disponible à la fois sur terminal/Shell ou sur un bureau graphique.
J'associe généralement les fichiers .deb
à GDebi car il est rapide et efficace, notamment par rapport à Ubuntu Software Center. L'une des principales caractéristiques de GDebi est qu'il résout les dépendances et les installe.
Pour la ligne de commande, exécutez Sudo gdebi <package.deb>
pour installer un seul fichier deb.
Recherchez-vous toutes les commandes dpkg ? Cliquez sur ce lien pour le lire.
15 commandes dpkg pour gérer les serveurs Linux basés sur Debian
Il y a deux actions, il s'agit de dpkg-query
et de dpkg-deb
.
# Sudo dpkg -i {package_name}
# Sudo dpkg -i skype-ubuntu-precise_4.2.0.11-1_i386.deb
# Sudo dpkg -r {package_name}
# Sudo dpkg -r vlc
# Sudo dpkg -P {package_name}
# Sudo dpkg -P vlc
Vous pouvez diriger la commande vers less
(un pageur) afin de pouvoir faire défiler plus facilement le contenu:
# dpkg -l | less
# dpkg -l {package_name}
# dpkg -l vlc
# dpkg -l | vlc
Et cela montrera l'emplacement où le paquet sera installé. Ici -S
(capital S
name__) pour rechercher si le paquet a été installé ou non.
# Sudo dpkg -S {package_name}
# Sudo dpkg -S skype
Ici -R
est récursif. (Gérez de manière récursive tous les fichiers ordinaires correspondant au modèle *.deb
trouvé dans les répertoires spécifiés et dans tous ses sous-répertoires).
# Sudo dpkg -R --install {package_location}
# Sudo dpkg -R --install /home/sysadmin/soft
Ici -p
(minuscule p
name__) affichera les informations sur le paquet:
# dpkg -p {package_name}
# dpkg -p Apache2
Utilisez -c
(en minuscule c
name__) pour afficher le contenu:
# Sudo dpkg -c {package_name}
# Sudo dpkg -c skype-ubuntu-precise_4.2.0.11-1_i386.deb
*.deb
Utilisez -x
(x
en minuscule) pour extraire:
# dpkg -x {package_name} {location_were_to_extract}
# dpkg -x libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/
Utilisez -X
(majuscule X
name__) pour afficher le contenu avec extraction.
# dpkg -X {package_name} {location_were_to_extract}
# dpkg -X libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/
-I
représente ici des informations:
# dpkg -I {package_name}
# dpkg -I libqt4-phonon_4.6.3-4+squeeze1_i386.deb
dpkg-reconfigure
reconfigure les packages après qu'ils ont déjà été installés. Transmettez-lui le nom du ou des paquet (s) à reconfigurer. Il posera des questions sur la configuration, un peu comme lors de la première installation du paquet.
# dpkg-reconfigure postfix
Ceci reconfigurera postfix
de la même manière que lorsque vous l'avez installé pour la première fois.
Vous souhaitez en savoir plus sur les commandes dpkg
name__? Consultez la page de manuel:
# man dpkg
Alors que dpkg -i
installe effectivement le paquet, il ne fait aucune résolution automatique des dépendances, alors qu'il existe deux autres alternatives, utilisant gdebi ou l'outil apt-get. Pour utiliser le plus tard, il suffit d'utiliser:
Sudo apt-get install /path/to/package.deb
Même si vous êtes sur le répertoire avec le paquet, vous devez donner un chemin en utilisant ./
au début:
Sudo apt-get install ./package.deb
Il est utile d’utiliser un conseil pratique lors de l’installation d’un programme tel que Libreoffice qui contient plusieurs fichiers .deb dans un dossier.
Sudo dpkg -i *.deb
Créez votre propre installateur de script debInstaller
comme suit:
#!/bin/bash
dpkg -i "$@"
apt-get --yes --fix-broken install
Rendre le script exécutable avec
chmod +x debInstaller
Puis déplacez-le dans certains répertoires de votre PATH ou ajoutez le répertoire en cours à votre PATH.
Je vais le déplacer vers/usr/bin
Sudo cp debInstaller /usr/bin
Vous pouvez maintenant installer n’importe quel paquetage .deb
en utilisant la commande suivante:
Sudo debInstaller some-package.deb
La valeur ajoutée de cette méthode réside dans la résolution du problème de dépendance, car vous rencontrerez généralement des problèmes lorsque vous installerez un .deb
avec dpkg -i
en raison d’une erreur de dépendance. Vous devez donc utiliser apt-get install -f
pour le résoudre. Ce script fera le travail vous, mais ici, j’ai utilisé apt-get --yes --fix-broken install
pour résoudre automatiquement ces erreurs sans intervention de l’utilisateur.
gdebi
Voici le meilleur moyen d'installer un fichier .deb sur Ubuntu en ligne de commande:
Sudo gdebi skype.deb
Si vous n'avez pas encore installé gdebi
, installez-le à l'aide de Sudo apt install gdebi-core
.
gdebi
va rechercher toutes les dépendances du fichier .deb
et les installera avant de tenter d'installer le fichier .deb
. Je trouve cela beaucoup préférable que Sudo dpkg -i skype.deb && Sudo apt install -f
. Ce dernier est beaucoup trop désireux de supprimer les dépendances dans certaines situations. Par exemple, lorsque j'ai essayé d'installer Skype, le logiciel a tenté de supprimer 96 (!) Packages, notamment des packages tels que compiz
et unity
! gdebi
a émis un message d'erreur beaucoup plus clair:
$ Sudo gdebi skype.deb
Cannot install 'libqtgui:i386'
(Voici la solution à ce problème particulier , au fait.)
Pour installer les fichiers deb, ouvrez Terminal et tapez:
Sudo dpkg -i file.deb
Sudo apt-get install -f
Sudo dpkg -i file.deb
La deuxième ligne consiste à réparer les paquets cassés si l'installation échoue, puis réinstallez-le pour terminer l'installation.
Une autre approche consiste à utiliser l'outil gdebi
pour installer les fichiers deb.
Il existe de nombreux outils pour installer un paquet deb que j'utilise personnellement le programme d'installation du paquet intégré dpkg
Si vous êtes connecté en tant que root, changez le répertoire en emplacement du paquet deb
dpkg -i package_name.deb
si vous n'êtes pas connecté en tant que root
Sudo dpkg -i package_name.deb
Pour être sûr que ce paquet est installé correctement et qu'il n'y a pas de dépendances brisées
Sudo apt-get check
S'il y a des dépendances brisées
Sudo apt-get -f install