Squeeze, dash und export von Fuktionen

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
chr.gogolin
Beiträge: 441
Registriert: 12.10.2005 23:09:28
Lizenz eigener Beiträge: MIT Lizenz
Kontaktdaten:

Squeeze, dash und export von Fuktionen

Beitrag von chr.gogolin » 21.09.2010 01:36:40

Hallo,
ich habe gerade das Update von Lenny auf Squeeze gemacht. Dabei wird einem vorgeschlagen (und das scheint jetzt Standard zu sein) anstelle der bash die dash als systemweite Standard-Shell einzurichten.

Wie ich herausfinden musste ist das, wenn man, so wie ich, ein stark angepasstes System hat, unter Umstände keine gute Idee. Die dash kennt bei 'export' die Option -f zum exportieren von Shell Funktionen nicht und weil ich das in der .xinitrc verwende statete X nach dem Update nicht mehr.

Nachdem der Fehler identifiziert war ließ sich das natürlich ganz einfach beheben in dem ich wieder auf die bash zurück gestellt habe. Aber gibt es wirklich kein dash äquivalent zu 'export -f'?
"Linux supports the notion of a command line or a shell for the same reason that only children read books with only pictures in them." - Bill Garrett

eulenreich
Beiträge: 22
Registriert: 20.12.2009 22:30:44
Lizenz eigener Beiträge: MIT Lizenz

Re: Squeeze, dash und export von Fuktionen

Beitrag von eulenreich » 21.09.2010 03:05:07

Der Start mit der dash statt der bash Shell ist drei Sekunden schneller, weil die dash Shell eben genau diese Rechenzeit-aufwendige Funktion nicht hat (und andere nicht). Wenn wir jetzt die dash Shell aufmotzen, dass sie diese Funktionen auch hat, wie die bash Shell: Was hat das dann für einen Sinn?

Du kannst auch die dash als /bin/sh benutzen, und dann aber im
/etc/init.d/xdm|kdm
in der ersten Zeile eintragen
#!/bin/bash

chr.gogolin
Beiträge: 441
Registriert: 12.10.2005 23:09:28
Lizenz eigener Beiträge: MIT Lizenz
Kontaktdaten:

Re: Squeeze, dash und export von Fuktionen

Beitrag von chr.gogolin » 21.09.2010 13:36:19

Ja, mir ist schon klar das die dash schneller ist und sie deswegen auch weniger Funktionen hat. Ich wollte ja nur sicher gehen das ich nichts übersehen habe.
"Linux supports the notion of a command line or a shell for the same reason that only children read books with only pictures in them." - Bill Garrett

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Squeeze, dash und export von Fuktionen

Beitrag von rendegast » 21.09.2010 15:49:20

/etc/init.d/ hat bei mir /bin/bash nur noch in
autofs
ebtables
xendomains

Das Ziel ist doch eigentlich, es ganz aus den Systemskripten herauszubekommen.
Durch /bin/sh->/bin/bash (nominell ein POSIX-Modus) fallen bashismen möglicherweise nicht auf,
da sie durch die bash (compatibility) eventuell doch ausgeführt werden (meine Erfahrung).
Auch:

Code: Alles auswählen

$ bash --posix
bash-4.1$ set | wc -l
62
bash-4.1$ 
bash-4.1$ dash
$ set | wc -l
35
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

eulenreich
Beiträge: 22
Registriert: 20.12.2009 22:30:44
Lizenz eigener Beiträge: MIT Lizenz

Re: Squeeze, dash und export von Fuktionen

Beitrag von eulenreich » 22.09.2010 01:10:31

In Debian gibt es zur Zeit Patches zur Vorbereitung von systemd. Sicherlich noch nicht Squeeze. aber nach dessen Release sind wir sicher auch bald dash los aus dem Init in Debian testing....

Antworten