Test Foro de elhacker.net SMF 2.1

Sistemas Operativos => GNU/Linux => Mensaje iniciado por: prometheus48 en 22 Enero 2012, 14:37 PM

Título: Symlink /bin/sh -> /bin/bash
Publicado por: prometheus48 en 22 Enero 2012, 14:37 PM
Hola,

Quiero que el symlink the /bin/sh sea /bin/bash/ no /bin/dash .
Uso Ubuntu, y cuando meto el siguiente comando
echo "/bin/sh -> `readlink -f /bin/sh`"
El output es este:
/bin/sh -> /bin/dash


El tema es que quiero que sea asi:
/bin/sh -> /bin/bash

Y no se como hacerlo. :-(
Alguien sabe como hacerlo?

Salu2!
Título: Re: Symlink /bin/sh -> /bin/bash
Publicado por: leogtz en 23 Enero 2012, 02:36 AM
http://www.cyberciti.biz/faq/howto-change-linux-unix-freebsd-login-shell/

http://ce.uml.edu/shell.htm
Título: Re: Symlink /bin/sh -> /bin/bash
Publicado por: Foxy Rider en 27 Enero 2012, 21:40 PM
No lo cambies, el cambio de bash a dash tiene una razón de ser, y la principal es performance y portabilidad ....
bash consumía más tiempo en la secuencia de booteo de Ubuntu y por eso eligieron una shell más livianita y que respete medianamente lo que es una bourne shell.

También, cualquier script que REALMENTE sea portable, esté bien escrito, y no use esa cochinada de asumir que /bin/sh → /bin/bash (que no debería serlo, es un insulto a la programación portable y una mala costumbre en el mundo linux), no debería ver ningún problema si se escribe para correr en una shell bourne y no sólo en bash.
Si un script llega a fallar, la solución no es cambiar el symlink, sino tocarle el

Código (bash) [Seleccionar]
#!/bin/sh

para que sea

Código (bash) [Seleccionar]
#!/bin/bash

Por que es lo que el vago y mal informado programador asumió desde un principio.

Saludos.

P.S → El tener el symlink apuntando a /bin/bash es una mala práctica, por que si querés programar de forma portable te agarrás mala costumbres y cosas propias de bash, que en una shell más "pura" como ash, no están ...