TooManySecrets HeadQuarters
Habilitar consolas virtuales en Opensolaris.

Hasta el build snv_124, OpenSolaris no tenía consola virtual. Pero debido a algún bug, ahora viene pero deshabilitada. Para habilitarla hay que hacer lo siguiente:

$ pfexec svcadm enable vtdaemon
$ pfexec svcadm enable console-login:vt2
$ pfexec svcadm enable console-login:vt3
$ pfexec svcadm enable console-login:vt4
$ pfexec svcadm enable console-login:vt5
$ pfexec svcadm enable console-login:vt6

Para habilitar las “hot keys” para cambiar entre consolas virtuales ejecutar:

$ pfexec svccfg -s vtdaemon setprop options/hotkeys=true
$ pfexec svcadm refresh vtdaemon
$ pfexec svcadm restart vtdaemon

La consola de seguridad viene activada por defecto. Esto significa que si dejas una consola virtual y te mueves a otra, la anterior de donde vienes pasará a bloquearse, y deberás dar el password para desbloquearla cuando quieras volver a ella. Si no quieres que ocurra esto, deberás deshabilitar la consola virtual así:

$ pfexec svccfg -s vtdaemon setprop options/secure=false
$ pfexec svcadm refresh vtdaemon
$ pfexec svcadm restart vtdaemon

Si ya estás logado en una sesión X mientras haces esto, haz un logout y espera a que las X se reinicien. Después de esto, podrás cambiar hacia las consolas virtuales pulsando la combinación ALT+CTRL+F#, donde “#” puede tener un valor entre 1 y 7. La consola 1 es la consola primaria, de la 2 a la 6 son las consolas virtuales, y la 7 es la de las X.

Have a nice day ;-)

TooManySecrets

Posted via web from TooManySecrets HeadQuarters | Comment »

Nombres de Inicio (BE) amigables en OpenSolaris.

Una de las cosas buenas sobre OpenSolaris y ZFS es la habilidad para crear múltiples configuraciones de inicio (BE) en un mismo sistema.

Desafortunadamente, el comando pkg no crea un nombre “amigable” hace por defecto cuando se actualiza la actual imagen. Incrementa el nombre, pero ¿quien quiere realmente que su sistema tenga por nombre algo como opensolaris-1349?

Sin embargo, si ejecutamos pkg con el flag —be-name, nos permitirá especificar un nombre, el que nosotros queramos:

pfexec pkg image-update --be-name=snv_133

Esto convierte la salida del comando beadm en algo mucho más útil:

pfexec beadm list
BE Active Mountpoint Space Policy Created
-- ------ ---------- ----- ------ -------
snv_132 - - 59.02M static 2010-02-05 20:12
snv_133 NR / 83.00G static 2010-02-21 12:13 (traducido del original: http://unixben.com/post/401760620/friendly-be-names-in-opensolaris)

Have a nice day ;-)
TooManySecrets

Posted via web from TooManySecrets HeadQuarters | Comment »

OpenSolaris: problema al actualizar con shell en gnome-terminal.

Después de actualizar directamente el OpenSolaris de mi PC, de una 2009.06 a una svn_129, me encontré con la desagradable situación de que al abrir una shell con el gnome-terminal, no veia lo que escribía, el prompt me iba apareciendo escalonado (según iba escribiendo), y no había forma humana de trabajar de esa forma.

El bug está descrito en http://defect.opensolaris.org/bz/show_bug.cgi?id=12527, y lo que hice simplemente fué:

- ejecutar “pfexec xterm” en un gnome-terminal.

- desde ahí, comprobar los permisos de:

toomany@toomany:~$ ls -lL /dev/ptmx
crw——- 1 root sys 11, 8 2009-12-20 19:42 /dev/ptmx

- como ví que no eran correctos (tal y como se puede ver en el link de antes, ejecuté:

$ chmod 666 /dev/ptmx

Una vez listo puedes comprobar que los permisos están OK:

toomany@toomany:~$ ls -lL /dev/ptmx
crw-rw-rw- 1 root sys 11, 8 2009-12-20 19:42 /dev/ptmx

Abres un gnome-terminal (o xterm, como prefieras) y podrás comprobar que ya no tienes ningún tipo de problema con la shell.

Comentar que este problema (como es normal tratándose de lo que se trata) también lo tendrás si no lo solucionas accediendo por SSH a la máquina.

Have a nice day ;-)

TooManySecrets

Completado en Bash en OpenSolaris.

Desde la versión de desarrollo snv_126 de OpenSolaris, ya está disponible la posibilidad de usar el Bash Completion (completado en el Bash) en OpenSolaris. Lo único que ocurre, es que no viene activado por defecto (imagino que vendrá listo en otras más adelante, o como mínimo, en la versión 2010.02).

Para activarlo no teneis más que editar el archivo .bashrc de vuestra $HOME, a la par que crear una configuración para el bash completion (no asustarse, es una simple copia lo que hay que hacer). En total se trataría de ejecutar los siguientes pasos:

1. Editar ${HOME}/.bashrc y añadir lo siguiente:

if [ -f /etc/bash/bash_completion ]; then
. /etc/bash/bash_completion
fi

2. Crear el fichero /etc/bash/bash_completion copiando el de ejemplo:

# cp /etc/bash/bash_completion.example /etc/bash/bash_completion

Y con eso ya estaría todo listo (recuerda que para usarlo de inmediato o bien abres un nuevo terminal, o bien haces un “source /etc/bash/bash_completion” en tu actual shell). A partir de entonces podrás hacer cosas como:

  • ssh <TAB><TAB>
    <lista de hosts conocidos>
  • su - <TAB><TAB>
    <lista de usuarios en /etc/password>
  • evince <TAB><TAB>
    <lista de directorios, ficheros .ps y .pdf en el directorio actual>

y así podríamos seguir…

Añadir otros completados:

Estos no son los únicos completados, es posible añadir muchos más. La forma más fácil de hacerlo sería añadir un fichero en /etc/bash/bash_configuration.d, y estos ficheros serán añadidos automáticamente si han sido añadidas las líneas anteriormente mencionadas en el fichero .bashrc.

Por ejemplo; un caso útil para todo aquel que use el software de revisiones Mercurial, es copiar el fichero que viene en /usr/demo/mercurial, que puede ser copiado tal cual y ya se obtiene el completado de comandos de mercurial:

# cp /usr/demo/mercurial/bash_completion /etc/bash/bash_completion.d/

Habiendo hecho este paso, y a continuación el mencionado source /etc/bash/bash_completion, se puede obtener:

  • $ hg <TAB><TAB>
    active       bisect       cddlchk      copyright    hdrchk       init         mv           permchk      reparent     showconfig   update
    add          blame        checkout     cp           heads        jstyle       nits         pull         resolve      st           verify

Es posible añadir más completado para varios comandos, por ejemplo se podría crear uno para zfs, zpool, pkg, etc (las posibilidades son muchas para enumerarlas todas). Pero aquí hay algunas que se han encontrado:

Todo esto lo he sacado y traducido de una entrada de Darren Kenny titulada “Bash Completion on OpenSolaris” http://blogs.sun.com/dar/entry/bash_completion_on_opensolaris

Have a nice day ;-)

TooManySecrets

Actualizar OpenSolaris 2009.06 a la rama de desarrollo.

Nada más sencillo que ejecutar:

$ pfexec pkg set-publisher -O http://pkg.opensolaris.org/dev opensolaris.org

$ pfexec pkg image-update

Si por aquellos casuales acabas de instalar el sistema y todavía no lo has actualizado, antes de ejecutar el “image-update” deberás actualizar el paquete “pkg”:

$ pfexec pkg install SUNWipkg

Have a nice day ;-)

TooManySecrets