Debian : switch de version de certains composants

Sur Debian comme sur la majorité des distributions Linux, il est possible d’avoir plusieurs versions d’un composant, comme par exemple Python ou Java…

Sauf que si on n’appelle pas la version exacte, on se retrouve bien souvent confronté à des erreurs.

Il est possible via une simple commande, de changer de version du programme pour l’ensemble du système : update-alternatives

Python :

Pour modifier facilement la version par défaut de python dans votre système, il faut avant tout connaître les versions installées sur votre machine. Pour cela, nous lançons un simple “ls” dans le bon chemin :

thierry@thierry-Athlon:~$ ls /usr/bin/python*
/usr/bin/python /usr/bin/python2.7 /usr/bin/python3 /usr/bin/python3.6m
/usr/bin/python2 /usr/bin/python2-pbr /usr/bin/python3.6 /usr/bin/python3m

Une fois que l’on connaît les versions disponible, on peut regarder ce que le système connaît réellement :

thierry@thierry-Athlon:~$ update-alternatives –list python
update-alternatives: erreur: pas d’alternatives pour python

Visiblement… pas grand chose ! Il faut donc lui décrire les versions disponible en lançant les commandes suivantes :

thierry@thierry-Athlon:~$ sudo update-alternatives –install /usr/bin/python python /usr/bin/python3 1
update-alternatives: utilisation de « /usr/bin/python3 » pour fournir « /usr/bin/python » (python) en mode automatique

thierry@thierry-Athlon:~$ sudo update-alternatives –install /usr/bin/python python /usr/bin/python2 2
update-alternatives: utilisation de « /usr/bin/python2 » pour fournir « /usr/bin/python » (python) en mode automatique

Maintenant, si on liste les versions de python disponible dans le système, nous avons :

thierry@thierry-Athlon:~$ update-alternatives –list python
/usr/bin/python2
/usr/bin/python3

En lançant la commande “update-alternatives”, on va pouvoir changer de version comme on le souhaite :

Il existe 2 choix pour l’alternative python (qui fournit /usr/bin/python).

thierry@thierry-Athlon:~$ sudo update-alternatives –config python Sélection Chemin Priorité État

0 /usr/bin/python2 2 mode automatique
1 /usr/bin/python2 2 mode manuel
2 /usr/bin/python3 1 mode manuel
Appuyez sur pour conserver la valeur par défaut[*] ou choisissez le numéro sélectionné :2
update-alternatives: utilisation de « /usr/bin/python3 » pour fournir « /usr/bin/python » (python) en mode manuel

En lançant la commande “python –version”, vous retrouverez alors la version de python choisi précédemment.

Java :

Si vous installez une version de java que vous n’avez pas sur votre machine avec la commande “sudo apt-get install openjdk-8-jdk openjdk-8-jre” par exemple, cette version va s’installer, mais ne sera peut être pas celle qui sera utilisée lorsque vous appellerez la commande “java”; faites l’essai avec la commande “java –version”…

En utilisant la commande “update-alteratives –config java”, elle vous retournera la liste des versions de Java installées et vous permettra de sélectionner celle que vous souhaitez :

thierry@thierry-Athlon:~$ sudo update-alternatives –config java
Il existe 2 choix pour l’alternative java (qui fournit /usr/bin/java).

Appuyez sur pour conserver la valeur par défaut[*] ou choisissez le numéro sélectionné

0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 mode automatique
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 mode manuel
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 mode manuel

Appuyez sur pour conserver la valeur par défaut[*] ou choisissez le numéro sélectionné

Autres programmes…

La page de “man” de “update-alternatives” indique qu’il est possible d’utiliser ce système pour différents composant, comme par exemple changer d’éditeur de texte (vi, nano, joe, etc…), de version de PHP, etc…


Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Translate »

GFPR : Nous utilisons Google Analytics

Veuillez confirmer, si vous acceptez notre suivi Google Analytics. Vous pouvez également refuser le suivi, ainsi vous pourrez continuer à visiter notre site Web sans envoyer de données à Google Analytics