Pagina 1 di 1

/bin/bash per tutti gli script di init

Inviato: sab 24 apr 2021, 11:13
da conraid
Pat ha cambiato /bin/sh in /bin/bash per tutti gli script di init, ma non per tutti gli script in /etc/rc.d (magari lo farà in seguito, chissà).

Secondo voi conviene farlo per tutti gli script in /etc/rc.d dei pacchetti autoprodotti?

Io mi son accordo di aver usato sh o bash quasi in modo random (a volte lascio semplicemente quel che c'è negli script dei sorgenti, altre le prendo da sbo)

Re: /bin/bash per tutti gli script di init

Inviato: sab 24 apr 2021, 17:42
da ponce
non ci sono problemi, a meno che qualcuno non lo cambi di proposito il link di default punta gia' da sh a bash quindi non e' che sia cosi' indispensabile...

comunque Pat lo ha gia' cambiato anche per tutti gli *.SlackBuild (e molto probabilmente lo faremo presto pure noi su SBo).

Re: /bin/bash per tutti gli script di init

Inviato: lun 26 apr 2021, 11:04
da conraid
Non parlo degli SlackBuild ma degli script di init, quelli dentro /etc/rc.d, alcuni son sempre con sh (per es. alsa o bind)

Re: /bin/bash per tutti gli script di init

Inviato: lun 26 apr 2021, 12:43
da ponce
non e' indispensabile a meno che tu nello script non usi costrutti specifici di bash, ad esempio la brace expansion: in quel caso, se il link viene cambiato e la nuova shell a cui punta non supporta quello specifico costrutto, allora lo script di init non funzionera' piu' come dovrebbe.
nello specifico rc.alsa e rc.bind potrebbero anche funzionare su altre shell quindi non e' indispensabile cambiare la shebang con /bin/bash.

comunque, nel caso i tuoi script siano gia' POSIX-compliant ma vuoi essere sicuro di non aver problemi anche in futuro (nel caso tu volessi metterci codice specifico di bash) cambia pure la shebang.

Re: /bin/bash per tutti gli script di init

Inviato: lun 26 apr 2021, 13:05
da conraid
ok, perfetto.

Io in realtà cerco sempre di non usare "bashismi", ma non si sa mai.

Re: /bin/bash per tutti gli script di init

Inviato: lun 26 apr 2021, 18:01
da ponce
comunque se uno cambia il link alla shell predefinita di sistema, secondo me, e' perche' sa quello che fa: se poi qualcosa non funziona sono anche un po' cazzi suoi, per usare un francesismo :badgrin: (questa e' anche la policy che adottiamo su SBo).

Re: /bin/bash per tutti gli script di init

Inviato: mar 27 apr 2021, 11:57
da conraid
giusto :)

Re: /bin/bash per tutti gli script di init

Inviato: mer 28 apr 2021, 7:50
da ponce
Nel ChangeLog di qualche ora fa lo ribadisce espressamente
Pat ha scritto:a/mkinitrd-1.4.11-x86_64-24.txz: Rebuilt.
Change mkinitrd shebang to #!/bin/bash. Thanks to mumahendras3.
Still, don't point /bin/sh at a shell other than bash.