El shell de root
Aunque pasó hace algunos días, quería comentarlo un poco por aquí. Resulta que en OpenBSD se ha tomado una decisión que me ha sorprendido bastante: ksh pasa a ser el shell de root.
No es nada trivial la cosa, hasta tiene una entrada en el FAQ, y es que csh(1)
no es precisamente cómodo para su uso interactivo.
Si ojeamos dicha entrada del FAQ veremos como se trataba de mantener una tradición, cosa que tiene sus pros y sus contras. Es decir, me parece bien mantener cierta uniformidad en lo que esperaríamos encontrar en un sistema concreto, pero es que csh
... argh :S.
Yo siempre recurro a sh
cuando tengo que hacer cosas con root
y sudo
no me soluciona el problema. Pero por algún motivo no había cambiado el shell por defecto... hasta ahora. Supongo que también se le podría preguntar a los responsables porqué compensaba más mantener una entrada en el FAQ que realizar este cambio :P.
En principio hay que ver como están las cosas en nuestro sistema antes de tomar una decisión de ese tipo. Una de las cuestiones principales es que, en determinados casos, puede ser necesario arrancar el sistema en modo mono-usuario ( single user) por cuestiones de mantenimiento.
En ese modo solo la raíz se encuentra montada y, por lo tanto, accesible. ¿Qué pasa si el shell necesita una librería que se encuentra en /usr
por ejemplo? Pues un desastre, porque ese directorio probablemente no estará montado :).
$ ldd /bin/csh ; ldd /bin/sh ; ldd /bin/ksh /bin/csh: ldd: /bin/csh: not a dynamic executable /bin/sh: ldd: /bin/sh: not a dynamic executable /bin/ksh: ldd: /bin/ksh: not a dynamic executable
Como los tres shell están enlazados estáticamente, pues en OpenBSD va a ser que da igual. Además en este sistema se pregunta por el shell a usar cuando se va a modo mono-usuario, con lo que además es irrelevante el shell que use root
. Podemos usar cualquier otro shell de los ports (incluso BASH
:D) y recordar que en caso de mantenimiento especial, tendríamos que usar uno de estos tres.
En la inminente versión 3.7 ya no habrá que preocuparse, y en versiones anteriores ejecutamos vipw
y cambiamos el shell al que más nos guste.
[reidrac@blackshell.usebox.net]$ su Password: # echo $SHELL /bin/ksh
Hay 2 comentarios
Para uso interactivo tienes Bourne Shell (sh) y Korn Shell (ksh) en el sistema base (ambos proporcionados por el pdksh). ¿No es un poco caprichoso instarar el port del Bourne Again Shell? Si fuera zsh diría ¡eh! que este tío hace cosas raras seguro, pero para la gente normalita ...
Ojo, que es cierto que algunas diferencias hay:
http://blackshell.usebox.net/archivo/206.php
Pero que en esto también cuentan gustos y colores... no me tomes tan en serio lo que te digo coñe :D
Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 30 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.
por r0sk, en 2005-04-05 15:50:22 ∞