Open Source im professionellen Einsatz

© Fotograf, 123RF.com

Shellskripte aus der Stümper-Liga – Folge 23: Dash statt Bash

Bash Bashing

Mit Debian Squeeze und Ubuntu 6.10 flog die Bash aus diesen Distributionen als Default-Shell raus. Die Begründung: nicht Posix-konform, zu langsam, zu hoher Speicherbedarf. Neue Perle am Muschelstrand ist die Dash, die Debian Almquist Shell.

Wie das ganze Unix-Universum hat auch die Shell eine komplizierte Genealogie. Da sich Software-Entwickler selten damit abfinden, dass ihre Software fertig ist, wächst der Funktionsumfang von Version zu Version. Die Bash ist dafür ein gutes Beispiel, so hat die recht neue Version 4 eine ganze Reihe von nützlichen Erweiterungen gebracht [1]. Mit jeder Erweiterung entfernt sich die Bash aber ein Stück weiter vom Posix-Standard. Als kleinster gemeinsamer Nenner stellt er eine minimale Interoperabilität zwischen verschiedenen Unix-Systemen sicher – allerdings eher auf dem Papier als in der Realität.

Ein weiterer Effekt bei Erweiterungen ist behäbiger Art: Die Bash wird größer, hängt von mehr Bibliotheken ab, lädt langsamer und parst länger an der ständig wachsenden Sprachsyntax. Im interaktiven Betrieb merkt der Anwender davon wenig. Aber beim Booten starten viele meist kurze Skripte, und hier addieren sich die Ladezeiten zu merkbaren Verzögerungen. Die Macher einiger Distributionen gingen daher auf Muschelsuche und wurden mit der Dash [2] fündig.

Die Default-Shell

Der Begriff "Default-Shell" ist etwas schwammig, es gibt hierfür keinen offiziellen Standard. Üblich auf Unix-Systemen ist ein Symlink von »/bin/sh« auf eine Shell-Implementation, die dann diese Rolle einnimmt. Die Macher von Debian und Ubuntu änderten diesen Link von der Bash auf die Dash ([3] für Unbuntu). Seither ziehen alle Skripte mit dem Shebang »#!/bin/sh"« automatisch die Dash an. Der Effekt: Von einem Augenblick auf den anderen weisen Skripte mit diesem Shebang, die trotzdem Bash-Konstrukte verwenden, Syntaxfehler auf.

[...]

Das Linux-Magazin Online veröffentlicht erstmals alle Print-Artikel, die in den vergangenen sechs Jahren im Linux-Magazin erschienen sind. Damit steht Ihnen ein hochwertig bestücktes Archiv bis hin zu den Beiträgen der aktuellen Ausgabe online zur Verfügung. Die über 1200 Artikel sind größtenteils kostenlos zugänglich, nur für Beiträge (als PDF) der jüngsten zehn Linux-Magazine ist eine Gebühr von jeweils 99 Cent fällig.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 2 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook