13 votes

/bin/sh est un lien symbolique qui ne pointe pas vers /bin/bash

J'installais l'environnement logiciel de la carte d'expérimentation Armadeus APF27DEV, et lorsque j'ai essayé la commande make m'a donné le message d'erreur suivant :

On your system /bin/sh is a symbolic link that doesn't point to /bin/bash --> please correct that !
lrwxrwxrwx 1 root root 4 2013-08-03 20:57 /bin/sh -> dash

Pour résoudre cette erreur, j'ai essayé de changer tous les shebangs de #!/bin/sh a #!/bin/bash J'ai également essayé la ligne de commande suivante :

ln -s /bin/bash /bin/sh

Mais tout ce que j'ai fait n'a pas résolu le problème. Quelqu'un pourrait-il m'aider à résoudre ce problème ?

26voto

steeldriver Points 118154

Vous y étiez presque avec votre commande ln - sauf que vous deviez probablement inclure le drapeau -f ("force") afin d'écraser l'ancien lien - il est également préférable d'utiliser un chemin relatif pour la cible.

sudo ln -sf bash /bin/sh

Lorsque vous avez terminé l'installation, vous pouvez revenir à la configuration par défaut du système avec

sudo ln -sf dash /bin/sh

Il ne devrait pas être nécessaire de modifier le fichier script "shebangs".

1voto

Tanerax Points 2708

Le problème ne doit pas être /bin/sh en pointant du doigt dash parce que c'est la valeur par défaut (j'ai vérifié de mon côté et c'est la même chose). Le problème doit être ailleurs ; le paquet ne semble pas être compatible avec Ubuntu dans sa version de base.

Dans le Makefile, vous trouverez peut-être une ligne exécutant un script par le biais de sh explicitement, c'est-à-dire sh path/to/script . Remplacer toutes ces occurrences de sh para bash et communiquez vos résultats.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X