web-dev-qa-db-fra.com

update-alternatives pour sh reports bash est utilisé, mais je reçois toujours un tiret

Je viens de passer à Ubuntu 18.10 à partir de Ubuntu 17.10.

J'ai ma boîte configurée pour utiliser bash comme shell par défaut plutôt que par défaut dash. J'ai apporté cette modification avec Sudo update-alternatives --config sh qui rapporte:

  Selection    Path            Priority   Status
------------------------------------------------------------
  0            /bin/dash        200       auto mode
* 1            /bin/bash        100       manual mode
  2            /bin/dash        200       manual mode

Cependant, /bin/sh pointe toujours sur dash plutôt que sur bash.

En fait, sur les versions précédentes d’Ubuntu, je crois que cela désignait jadis /bin/sh -> /etc/alternatives/sh.

Il semble que la dernière Ubuntu n'autorise plus le mécanisme alternatives pour sh ou du moins ait cassé les alternatives lors de la mise à niveau. Je vois depuis Comment faire en sorte que/bin/sh pointe vers/bin/bash? il est maintenant recommandé de reconfigurer le tiret à la place.

Pourquoi alternatives ne fonctionne plus? Où ce changement est-il documenté? J'utilise des alternatives avec sh depuis au moins trois ans sous Ubuntu et je ne les avais jamais cassées lors d'une mise à niveau. Il existe de nombreux guides suggérant que: https://jwaghetti.blogspot.com/2015/09/changing-dash-to-bash.html

4

Le système update-alternatives aurait pu être utilisé pour gérer /bin/sh, mais il aurait dû être implémenté de cette manière dans les paquets Debian pour bash et dash.

Les emballeurs ont décidé de ne pas le faire, utilisant plutôt le schéma actuel impliquant dpkg-configure pour gérer /bin/sh. Voir cette excellente réponse pour les détails et les raisons de ce choix.

Le article auquel vous avez lié recommande d'utiliser update-alternatives sur /bin/sh, en le configurant manuellement. C’est un conseil terrible. Parce qu’en réalité, vous aurez deux systèmes distincts qui essaieront de gérer le même lien symbolique de différentes manières, et qui marcheront probablement sur chacun d’eux. orteils de l'autre. (C'est probablement ce qui a causé votre problème lors d'une mise à jour Ubuntu.)

3
filbranden