/ bin / sh ist ein symbolischer Link, der nicht auf / bin / bash [geschlossen] verweist.

10

Ich habe die Softwareumgebung der Armadeus-Experimentierkarte APF27DEV installiert und beim Versuch des makeBefehls die folgende Fehlermeldung erhalten:

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

Um diesen Fehler zu beheben, habe ich versucht, alle Shebangs von #!/bin/shauf zu ändern #!/bin/bash, und ich habe auch die folgende Befehlszeile ausprobiert:

ln -s /bin/bash /bin/sh

Aber alles, was ich getan habe, hat das Problem nicht gelöst. Könnte mir bitte jemand bei diesem Problem helfen?

batur
quelle
2
Dies wäre ein Fehler in ihrer Software, so dass Sie ihn mit ihnen aufnehmen müssen.
Psusi

Antworten:

22

Sie waren mit Ihrem ln-Befehl fast da - außer dass Sie wahrscheinlich das Flag -f ('force') einfügen mussten, um den alten Link zu überschreiben - und es ist vorzuziehen, einen relativen Pfad für das Ziel zu verwenden

sudo ln -sf bash /bin/sh

Wenn Sie mit der Installation fertig sind, können Sie mit zum Systemstandard zurückkehren

sudo ln -sf dash /bin/sh

Die Skriptdatei 'shebangs' sollte nicht geändert werden müssen.

Steeldriver
quelle
2
Es wäre besser , zu laufen sudo dpkg-reconffigure dashund die Option wählen , um nicht Bindestrich zu schaffen /bin/sh. Wenn Sie dies mit dpkg tun, werden andere Teile Ihres Systems (wie die Manpages) entsprechend aktualisiert.
Mkasberg
1

Das Problem darf nicht darauf /bin/shhinweisen, dashda dies die Standardeinstellung ist (ich habe gerade mein Ende überprüft und es war das gleiche). Das Problem muss woanders sein; Das Paket scheint nicht sofort mit Ubuntu kompatibel zu sein.

Vielleicht finden Sie im Makefile eine Zeile, in der ein Skript shexplizit ausgeführt wird, d sh path/to/script. H. Ersetzen Sie alle derartigen Vorkommen von shfor bashund melden Sie Ihre Ergebnisse zurück.

Severo Raz
quelle
Vielen Dank für Ihre Antwort!!! Ich kenne einen anderen Weg als den, den du mir erzählt hast.
Batur