Foro de elhacker.net

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
Código:
echo "/bin/sh -> `readlink -f /bin/sh`"
El output es este:
Código:
/bin/sh -> /bin/dash

El tema es que quiero que sea asi:
Código:
/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
  1. #!/bin/sh

para que sea

Código
  1. #!/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 ...