View Single Post
Old 15-05-2012, 20:44   #2
Gimli[2BV!2B]
Senior Member
 
L'Avatar di Gimli[2BV!2B]
 
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
init
In Ubuntu l'init è un po' una scarpa e una ciabatta.
Hanno portato avanti il progetto Upstart, software con caratteristiche interessanti, ma purtroppo non (ancora?) in grado di sostituire in toto il più diffuso init System V (nonché quello utilizzato dalla mamma Debian).
I demoni pilotati da Upstart hanno un file conf in /etc/init, i demoni/altro che non è stato possibile migrare ad Upstart hanno un loro script in /etc/init.d, con i relativi link di lancio ed arresto nei vari runlevel (da /etc/rcS.d fino ad /etc/rc6.d).
Devo dire che non essendo un assiduo utilizzatore Ubuntu potrei aver scritto imprecisioni o non essere aggiornato sulla situazione.
shell
/bin/sh (cioè sh) è un link alla shell di default del sistema. In Debian ed Ubuntu da qualche tempo è dash (tra le più leggere... e pulite... ).
Codice:
gimli@kwankey:~$ ls -la /bin/sh
lrwxrwxrwx 1 root root 4 mar  1 11:10 /bin/sh -> dash
Problema: dash non offre tutte le funzionalità di bash, altrimenti sarebbe meno leggera di quel che è.
Ne consegue che script che contengono bashismi (cioè espressioni interpretabili solo da bash) andranno in errore se eseguiti con dash. Al contrario bash può eseguire qualsiasi script scritto per dash.
Per completezza ti ricordo che esistono tante shell Unix, classificabili in varie famiglie.
Conclusione: nello shabang è preferibile specificare esplicitamente la shell che hai utilizzato durante lo sviluppo dello script, altrimenti potrebbe non funzionare.
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...)
Gimli[2BV!2B] è offline   Rispondi citando il messaggio o parte di esso