Wollte gerade auf Edgy NXserver installieren, und hab festgestellt, dass das Startskript mit einem Fehler abbricht. Beim Nachforschen stieß ich dann darauf, dass /bin/sh mit dash verlinkt ist... Was ist das für eine Shell? Nie gehört... Und was passiert wenn ich den Link jetzt auf Bash setze? Läuft dann kein Edgy mehr? 😉 Ich kann natürlich bash in die NX-Skripte einbauen, ich fürchte aber dass das bei weiteren Paketen Probleme machen könnte?
Dash statt Bash
![]() Anmeldungsdatum: Beiträge: 276 |
|
Anmeldungsdatum: Beiträge: 563 |
http://packages.debian.org/unstable/shells/dash.html hat geschrieben:
Wenn du nicht umhin kommst wird es vermutlich nichts ausmachen wenn du den link auf bash änderst. |
Anmeldungsdatum: Beiträge: 5792 |
Zu Superdreadnought's Ausführung ist noch hinzuzufügen, dass die dash Shell imo nichts taugt. |
![]() Anmeldungsdatum: Beiträge: 823 |
Es geht wohl eher darum das man eigentlich #!/bin/bash setzen sollte wenn man die Bash-Features benötigt und #!/bin/sh wenn die einfache POSIX-Kompatibilität ausreicht. |
Anmeldungsdatum: Beiträge: 5792 |
SirSiggi hat geschrieben:
bash verhält sich, wenn sie über /bin/sh angesprochen wird, wie eine POSIX Shell. dash versucht ebenfalls, eine POSIX Shell bereit zu stellen, scheitert nach meiner Erfahrung (und offenbar auch nach der von pistenstuermer) bereits an einfachen Konstrukten in POSIX Skripten, welche die bash auch als /bin/sh problemlos ausführt.
Tatsache bleibt allerdings, dass dash als /bin/sh viele Skripte nicht ausführt, während bash las /bin/sh auch bei diesen Skripten klaglos ihren Dienst verrichtet. |
![]() Anmeldungsdatum: Beiträge: 1647 Wohnort: Berlin |
dash macht auch in Kombinantion mit cedega Schwierigkeiten. Abhilfe, falls stattdessen klassisch bash eingesetzt werden soll: dpkg-reconfigure dash Und "nein" auswählen. |
(Themenstarter)
![]() Anmeldungsdatum: Beiträge: 276 |
Danke für die aufschlussreichen Antworten, da frage ich mich doch aber wieso Ubuntu standardmässig (offenbar seit Edgy?) die Dash einsetzt???... |
![]() Anmeldungsdatum: Beiträge: 823 |
Lunar hat geschrieben:
Also angeblich (laut Debian, Autor und Wikipedia) ist die dash (ein Port der NetBSD ash auf Linux) voll POSIX kompatibel, aber eben auch nicht mehr. Verifizieren kann ich das natürlich nicht. Meistens wird es aber wohl einfach so sein das der zuständige Entwickler /bin/sh auf /bin/bash gelinkt hat und unbewusst Bash-Features nutzt, die eben über POSIX hinausgehen. |
Anmeldungsdatum: Beiträge: 5792 |
SirSiggi hat geschrieben:
Aber so weit ich weiß sollte die bash, so sie als /bin/sh angesprochen wird, auch nur POSIX Features unterstützen und eben keine ihrer erweiterten Fähigkeiten bereitstellen. |
Anmeldungsdatum: Beiträge: 2159 |
Lunar hat geschrieben:
http://www.opengroup.org/onlinepubs/009695399/ |
![]() Anmeldungsdatum: Beiträge: 823 |
Damit wir hier nicht dumm sterben müssen hab ich kurz mal den Suchmaschinenmonopolisten meines Misstrauens befragt: http://www.network-theory.co.uk/docs/bashref/bashref_69.html Es sieht also so aus als werden nur einzelne Verhaltensweisen geändert, alles andere bleibt wohl erhalten. |
Anmeldungsdatum: Beiträge: 580 |
pistenstuermer hat geschrieben:
Das wurde von Debian eingeführt (hauptsächlich um die Boot-Zeiten zu drücken): |
![]() Anmeldungsdatum: Beiträge: 2533 Wohnort: Dresden |
ranf hat geschrieben:
Nur, weil das mal einer vorschlägt wird es nicht gleich umgesetzt. In etch ist /bin/sh imer noch ein Link auf bash. |
Anmeldungsdatum: Beiträge: 580 |
Ok, dann ist das pure Fehlinformation meinerseits. Danke für den Hinweis. |
Anmeldungsdatum: Beiträge: 2420 |
pistenstuermer hat geschrieben:
Eine Funktionsverstümmelte bash, wenn ich das richtig verstehe... Da lob' ich mir Dapper 😉 icewind@dirk-laptop:/bin$ ls -l | grep sh -rwxr-xr-x 1 root root 664084 2006-04-22 00:51 bash lrwxrwxrwx 1 root root 4 2006-06-02 23:35 rbash -> bash lrwxrwxrwx 1 root root 4 2006-06-02 23:35 sh -> bash
Was würde eigentlich passieren, wenn ich die (imho) fehlerhafte verlinkung von sh auf "bash" (imho) korrigiere? |