TooManySecrets HeadQuarters http://www.toomany.net All about BSD, openSUSE, OpenSolaris, GNU/Linux, BD, programming... posterous.com Wed, 30 Nov 2011 08:09:00 -0800 Solución: Cannot load from mysql.proc. The table is probably corrupted en MySQL. http://www.toomany.net/solucion-cannot-load-from-mysqlproc-the-table http://www.toomany.net/solucion-cannot-load-from-mysqlproc-the-table

Esta mañana he tenido a un cliente que me decía que al usar el Navicat sobre una base de datos MySQL (la cual se había recuperado desde un lvmsnapshot), podía obtener, aleatoriamente, el siguiente mensaje:

Cannot load from mysql.proc. The table is probably corrupted

Después de echar un vistazo directamente, con el cliente mysql en la misma máquina, he comprobado que no había ningún registro, y que no tenía absolutamente ningún problema en acceder a la tabla en cuestión.

Como sea y después de hacer una búsqueda por Inet he aplicado la solución:

mysql_upgrade

y ha quedado todo listo y solucionado :)

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Tue, 08 Nov 2011 06:04:00 -0800 openSUSE: trucos instalación paquetes módulos Perl (rpm). http://www.toomany.net/opensuse-trucos-instalacion-paquetes-modulos http://www.toomany.net/opensuse-trucos-instalacion-paquetes-modulos

Como muchos sabreis, existe el repositorio devel:languages:perl, donde podreis encontrar unos cuantos módulos del lenguaje Perl (unos 2000 aproximadamente ahora mismo).

Cuando se construyen los paquetes rpm para cada uno de ellos, se emplea un script post-build que analiza los ficheros que son parte del paquete en cuestión para localizar los módulos Perl. Para cada uno de ellos se añade un Provides con el nombre en forma Perl para el módulo, con una anotación específica del estilo: perl(Name::of::the::Perl::Package).

De esta forma, si necesitas DBIx::DR tan solo tienes que ejecutar lo siguiente:

zypper install 'perl(Net::SMTP::SSL)'

Al tanto con las comillas simples; son necesarias para que bash no las interprete y dé un bonito syntax error.

Este caso se podría considerar sencillo, en el sentido de que dicho módulo lo provee el paquete perl-Net-SMTP-SSL, por lo que podría haber sido capaz de obtener el nombre del paquete RPM a partir del nombre del módulo que falta Perl. Pero ese módulo Perl podría muy bien ser parte de un paquete con un nombre diferente: por ejemplo, la clase del módulo de Class:: MOP no está en el paquete RPM perl-Class-MOP, pero si en el paquete RPM perl-Moose (porque es parte del módulo Moose CPAN).

Así, si lo que se quiere es localizar el paquete que contiene el módulo que buscamos, usaremos lo siguiente (continuando el ejemplo de la clase Class::MOP):

zypper what-provides 'perl(Class::MOP)'

(logicamente esto solo funciona con repositorios que tengas añadidos como activos en tu sistema).

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Fri, 04 Nov 2011 01:35:00 -0700 Editar directamente desde el less. http://www.toomany.net/editar-directamente-desde-el-less http://www.toomany.net/editar-directamente-desde-el-less

Como indicaba el otro día vía twitter, lo que tiene un sistema *NIX (o *NIX like como Linux), es que nunca se deja de aprender (y especialmente también en las cosas pequeñitas).

Ayer mi compañero de trabajo me indicó que si cuando estás viendo un fichero con el paginador less, encuentras lo que buscas y resulta que necesitas editar el fichero, en lugar de salir del paginador y abrir el fichero con tu editor favorito, simplemente pulsa la tecla v y se abrirá tu editor favorito con el fichero que estás viendo (en realidad se abrirá el fichero que tengas definido en las variables globales VISUAL y EDITOR).

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Mon, 24 Oct 2011 08:00:00 -0700 Y siguen los comienzos... http://www.toomany.net/y-siguen-los-comienzos http://www.toomany.net/y-siguen-los-comienzos

Hace apenas 3 meses hablaba sobre un gran cambio en mi vida; ya no trabajaba en Vlex y pasaba a formar parte del equipo de Letsbonus. Han sido 3 meses muy intensos, cortos pero intensos, donde he conocido a grandes profesionales y personas, y donde realmente me lo he pasado genial. Gracias Letsbonus, mil gracias.

Hoy comienzo nueva etapa (y espero que ya definitiva, o tanto como los inciertos días de hoy lo permitan) en otra empresa. Otra gran empresa que también tiene una gran plantilla, y donde para mí era un poco "leyenda" el tema de entrar a trabajar; se trata de la empresa Grupo Intercom, una empresa que lleva ya varios años situada entre las 10 mejores empresas para trabajar en España.

Aquí espero poder aplicar mis años de experiencia y, sobretodo, aprender más... ¡hasta el infinito y más allá! xDDD

¡Hasta luego Letsbonus! ¡¡Buenos días Grupo Intercom!! ¡¡Here we go!!!

Have a nice day ;-)

TooMaySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Wed, 20 Jul 2011 10:00:00 -0700 Finales y comienzos de etapas. http://www.toomany.net/finales-y-comienzos-de-etapas http://www.toomany.net/finales-y-comienzos-de-etapas

Justamente ahora está comenzando para mí una nueva etapa (éste es un post automático que dejé listo el pasado finde). Durante 6 años he estado trabajando como responsable de sistemas en Vlex Networks S.L. (http://vlex.com), pero a partir de hoy comienzo como SysAdmin de la plataforma de negocio (vamos, lo mismo pero distintos nombres) en la empresa LetsBonus (http://letsbonus.com).

Una vieja etapa se cierra, pero otra nueva se abre. Tengo muchas ganas e ilusiones puestas en LetsBonus, y por lo que he visto hasta ahora estoy bien seguro que se cumplirán, si no todas, casi casi.

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Wed, 13 Jul 2011 02:42:00 -0700 FreeBSD: Configura mergemaster para evitar dolores de cabeza. http://www.toomany.net/freebsd-configura-mergemaster-para-evitar-dol http://www.toomany.net/freebsd-configura-mergemaster-para-evitar-dol

Todos sabemos qué hace el comando mergemaster (y para quien no lo sepa, man mergemaster). Por eso es de todos sabido que cuando se hace una actualización del sistema y ejecutas el mergemaster, sea muy fácil distraerse y pasar algo por alto. Con un poco de suerte no habrá problema alguno con ese error, pero tienes muchos números de que puedas perder algún fichero importante (passwd, cshrc, etc).

Por esta razón, puede llegar a ser muy útil editar el fichero /etc/mergemaster.rc y añadir lo siguiente:

#Añadir aquí los ficheros que queremos sean ignorados en el proceso:

IGNORE_FILES='/etc/motd'

#Instalar automaticamente ficheros que NO existan en el sistema:

AUTO_INSTALL=yes

#Actualiza ficheros que no hayan sido modificados:

AUTO_UPGRADE=yes

#Conserva los ficheros que has reemplazado:

PRESERVE_FILES=yes

PRESERVE_FILES_DIR=/var/tmp/mergemaster/preserverd-files-`date +%y%m%d-%H%M%S`

#Ficheros donde queremos evitar la comparación del diff del mergemaster (separación por un espacio):

IGNORE_FILES='/etc/motd /etc/rc.conf'

Para más información consultad la página man mencionada, en la sección FILES.

 

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Mon, 16 May 2011 02:16:00 -0700 Dejadez del blog. http://www.toomany.net/dejadez-del-blog http://www.toomany.net/dejadez-del-blog

Holas.

Hace ya bastante tiempo que no pongo nada aquí, en mi blog. Y realmente no es por que no quiera, si no que simplemente no tengo tiempo. Como algunos ya sabeis el 20 de octubre del año pasado fuí padre por primera vez, y debo decir que, aun cayendo en el topicazo, es una auténtica maravilla. Pero fuera de esto el tiempo dedicado al trabajo y a mi hijo me absorven totalmente. Es cierto que a veces tengo "huecos". Pero la verdad es que o por sueño o por simple cansancio, no me veo con ánimo de sentarme al ordenador y currarme algún articulillo.

De todas formas, mi intención es de que todo esto cambie. Así que espero poder ir dejando por aquí alguna que otra noticia/howto/algo_interesante en un futuro inmediato.

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Tue, 22 Feb 2011 14:22:00 -0800 gnome-terminal con tamaño a nuestro gusto. http://www.toomany.net/gnome-terminal-con-tamano-a-nuestro-gusto http://www.toomany.net/gnome-terminal-con-tamano-a-nuestro-gusto

Hoy he descubierto lo que quizás para unos sea una evidencia a gritos; cómo configurar el sistema (en una Debian y/o Ubuntu, aunque debería ser igual para cualquier distro GNU/Linux y seguramente sistema BSD) para que cada vez que ejecutemos el comando "gnome-terminal", se nos abra la terminal con el tamaño que nosotros deseamos. Y no estoy hablando del típico método de iniciar el gnome-terminal añadiéndole el parámetro "--geometry 136x40" (por ejemplo), sino de hacer el cambio a nivel de sistema para que siempre inicie con el tamaño deseado.

Para hacer ésto, no hay más que editar el fichero /usr/share/vte/termcat/xterm (como digo, en un sistema Debian y/o Ubuntu y como usuario root), y en la línea donde pone:

                         :co#80:it#8:li#24:\

Modificar los números 80 y 24 por los valores que queramos nosotros, por ejemplo :co#179:it#8:li#73:\

La mencionada línea (en mis sistemas) aparece en la línea 10.

Actualización 23/02/2011: ayer se me olvidó comentar que para que los cambios sean efectivos, hay que salir y volver a iniciar sesión nueva.

Una tontería, quizás, pero que a mí me encanta ;-)

Have a nice day ;-)

TooManySecrets

 

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Fri, 14 Jan 2011 02:57:07 -0800 Evitar problemas replicación MySQL con nuevo slave. http://www.toomany.net/evitar-problemas-replicacion-mysql-con-nuevo http://www.toomany.net/evitar-problemas-replicacion-mysql-con-nuevo
Problema:
Se usa un backup o snapshot para montar un nuevo servidor de tipo slave. Resulta que al hacer el backup/snapshot había cierto retraso, por lo que usar la posición del máster que hay anotada en el fichero master.info, puede dar lugar (seguro) a discrepancias en los datos.
 
Explicación:
Partimos de la base de la siguiente vista de situación del status del slave:

mysql> show slave status\G
*************************** 1. row**********************
Slave_IO_State: Waiting for master to send event
Master_Host: 127.0.0.1
Master_User: msandbox
Master_Port: 26768
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 4723
Relay_Log_File: mysql_sandbox26769-relay-bin.000002
Relay_Log_Pos: 874
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 729
Relay_Log_Space: 1042
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
1 row in set (0.00 sec)

mysql>


En las replicaciones hay dos puntos que hay que tener en consideración:
la Posición Ejecución Máster y
la Posición Lectura Máster
La Posición Ejecución Máster, que se aprecia en la variable Relay_Master_Log_File y Exec_Master_Log_Pos, es la posición en el binlog del máster del actual estamento que está siendo ejecutado por el slave extraido desde relay log.
La Posición Lectura Máster, indicada por el Master_Log_File y Exec_Master_log_Pos, es la posición del binlog del máster desde la que el slave está leyendo para ir escribiendo en el relay log.
El problema radica en que si había algún tipo de retraso (cosa harto fácil en el mundo MySQL), la Posición Lectura Máster será diferente y por defecto, más reciente que la Posición Ejecución Máster.
A nivel de filesystem, la Posición Lectura Máster se guarda en el fichero master.info, y la Posición Ejecución Máster se guarda en el fichero relay-log.info.

Como indicaba, si el slave tenía cierto retraso cuando se hizo el snapshot, o se paró para el backup, las dos posiciones indicadas serán diferentes. Siguiendo el siguiente ejemplo, tenemos que el fichero master.info contiene:

--(Fri:20110114:1027)-(0:$)-- cat master.info
15
mysql-bin.000001
4723
127.0.0.1
msandbox
msandbox
26768
60
0

0
--(manuel@klingon)-(/home/manuel/sandboxes/rsandbox_5_1_53/node1/data)--

Y el fichero relay-log muestra lo siguiente:

--(Fri:20110114:1027)-(0:$)-- cat relay-log.info
./mysql_sandbox26769-relay-bin.000002
874
mysql-bin.000001
729
--(manuel@klingon)-(/home/manuel/sandboxes/rsandbox_5_1_53/node1/data)--

Cuando la replicación se inicia en el nuevo servidor, partiendo de la posición del fichero master.info, los estamentos en el binary-log entre la Posición Ejecución Máster y la Posición Lectura Máster son evitados y causa corrupción de datos.

Solución:
La solución consiste en iniciar el nuevo slave usando la posición marcada en el fichero de relay-log (en este caso, resaltada en azul claro).

Have a nice day ;-)
TooManySecrets

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Fri, 01 Oct 2010 10:52:00 -0700 ¿Problemas con las matemáticas? http://www.toomany.net/problemas-con-las-matematicas http://www.toomany.net/problemas-con-las-matematicas

Esto me lo han pasado por mail, pero no puedo evitar la tentación de ponerlo aquí, ante la tremenda y demoledora verdad que representa (espero que el folloncete de HTML que lleva no impida que se vea bien).


¿Problemas con las matemáticas?
 

Por eso estamos como estamos, puras neuronas perezosas...


La semana pasada compré un producto que costó  158 €. Le di a la cajera 200 € y busqué en el bolsillo 8 € para evitar recibir más monedas.La cajera tomó el dinero y se quedó mirando la máquina registradora, aparentemente sin saber qué hacer. 
Intenté explicarle que ella tenía que darme un billete de 50 € de vuelta, pero ella no se convenció y llamó al gerente para que la ayudara. Tenía lágrimas en sus ojos mientras que el gerente intentaba explicarle lo que ella, aparentemente, continuaba sin entender. 
¿Por qué os estoy contando esto? 
Porque me di cuenta de la evolución de la enseñanza en las matemáticas desde 1950, que fue así: 
 1)      Enseñanza de matemáticas en 1950: 
        Un cortador de leña vende un carro de leña por 100 €. El costo de producción de ese carro de leña es igual a 4/5 del precio de la venta. ¿Cuál es la ganancia? 
2)      Enseñanza de matemáticas en 1970: 
        Un cortador de leña vende un carro de leña por 100 €. El costo de producción de ese carro de leña es igual al 80% del precio de la venta. ¿Cuál es la ganancia? 
3)      Enseñanza de matemáticas en 1980: 
        Un cortador de leña vende un carro de leña por 100 €. El costo de producción de ese carro de leña es de 80 €.  ¿Cuál es la ganancia?
4)      Enseñanza de matemáticas modernas en 1985: 
        Un leñador cambia un carro “P” de leña por un conjunto “M” de monedas.
El cardinal del conjunto “M” es igual a 100 €. y cada elemento vale 1 €. 

Dibuja 100 puntos gordos que representen los elementos del conjunto M.  El conjunto “F” de los gastos de producción comprende 80 puntos gordos del conjunto M. 
Representa el conjunto F como subconjunto del conjunto M, estudia cuál será su unión y su intersección, y da respuesta a la cuestión siguiente:
¿Cuál es el cardinal del conjunto “B” de los beneficios?  
Dibuje B con color 
rojo. 
5)      Enseñanza L O G S E : 
        Un leñador vende un carro de leña por un importe de 100 €. Los gastos de producción se elevan a 80 €, y el beneficio es de 20 €.
Actividad: subraya la palabra “leña” y discute sobre ella con tu compañero.
 
6)      Enseñanza de matemáticas en 1990: 
        Un cortador de leña vende un carro de leña por 100 €. El costo de producción de ese carro de leña es de 80 €. Escoja la respuesta correcta, que indica la ganancia: 
            (20 €)           (40 €)                (60 €)                  (80 €)               (100 €). 
7)      Enseñanza de matemáticas en 2000: 
        Un cortador de leña vende un carro de leña por 100 €. El costo de producción de ese carro de leña es de 80 €. La ganancia es de 20€ ¿Es correcto? 
            (Si)                 (No). 
8)      Enseñanza de matemáticas en 2008: 
        Un cortador de leña vende un carro de leña por 100 €. El costo de producción de ese carro de leña es de 80 €. Si Ud. sabe leer coloque una X en los 20 € que representan la ganancia. 
            (20 €)           (40 €)                 (60 €)                  (80 €)                (100 €). 
9)      Enseñanza de matemática curso 2009/10: 
No se preocupen si no saben responder el ejercicio anterior, llevarán a los profesores a la Oficina de Supervisión del Ministerio de Educación y les exigirán, a los profesores, repetir la prueba en vista de que la pregunta es de alta dificultad. 
Además, también pueden valerse, como elemento de apoyo, de chuletas, libro o de cualquier método o sistema para copiar en el examen sin que por ello sea expulsado de dicho examen ni suspendido, ya que, según la Universidad de Sevilla,  están en su derecho.

 


LA PRÓXIMA REFORMA:
*** El enunciado será algo así: ***


«Evaristo, labriego y leñador, burgués, latifundista espanyol facista spekulador i intermediario es un kapitalista insolidario y centralista q sa enriquezio con 100 pabos al bender espekulando un mogollón d leña».
Bibe al hoeste de Madrid esplotando ha los magrevies. Lleba a sus ijos a una esjuela de pago. 

Analiza el testo, vusca las faltas desintasis, dortografia, de puntuazion, y si no las bes no t traumatices q no psa nda. 
Ejcribe tono, politono o sonitono con la frase “QUE LISTO EL EBARISTO” y envia unos sms a tus colejas komentando los avusos antidemocráticos d Ebaristo i conbocando una manifa expontanea d protesta. Si bas a la manifa sortearan un buga guapeado.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Fri, 10 Sep 2010 11:25:00 -0700 "Si no somos capaces de pensar por nosotros mismos..." http://www.toomany.net/si-no-somos-capaces-de-pensar-por-nosotros-mi http://www.toomany.net/si-no-somos-capaces-de-pensar-por-nosotros-mi

"“Si no somos capaces de pensar por nosotros mismos, si somos renuentes a cuestionar la autoridad, entonces somos sólo marionetas en las manos de quienes están en el poder. Pero si los ciudadanos están educados y son capaces de formarse su propia opinión, entonces los que están en el poder trabajarán para nosotros."

Carl Sagan

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Thu, 09 Sep 2010 01:13:00 -0700 ¿Porqué la replicación MySQL es mejor que usar el mysqlbinlog para hacer un recovery? http://www.toomany.net/porque-la-replicacion-mysql-es-mejor-que-usar http://www.toomany.net/porque-la-replicacion-mysql-es-mejor-que-usar


Habitualmente, si hay necesidad de hacer un recovery point-in-time (PITR) por alguna razón, el método "tradicional" suele ser "restaurar el servidor de un backup y luego usar el mysqlbinlog para aplicar los binary logs". Pero en realidad hay una mejor forma de hacer todo esto.

La mejor forma consiste en levantar una instancia de servidor sin datos, y cargar los binary logs en ella. Llamaremos a ésta "binlog server". Luego restauramos el backup en el servidor afectado y cuando esté listo, iniciamos una replicación como esclavo del "binlog server". Así podremos aplicar los binlogs pero a través de la replicación, no con la herramienta mysqlbinlog.

¿Porqué es mejor? Porque la replicación es una manera de aplicar binary logs a un servidor mucho más testeada. Además, la replicación es mucho más fácil y conveniente de usar. Puedes hacer cosas como START SLAVE UNTIL, skip de determinados estamentos, parar, iniciar, etc, sin tener que pensar en donde lo dejastes, etc.

La replicación tiene además la habilidad de reproducir correctamente muchos tipos de cambios, que mysqlbinlog no tiene o no hace del todo como debería. Por ejemplo:

insert into tbl(col) values(connection_id());

Esto se ejecuta bien a través de la replicación porque el thread SQL en el slave cambiará el ID de conexión para que sea igual al original. En cambio esto no funcionará con la herramienta mysqlbinlog.

Podeis ver el artículo original de Xaprb aquí.

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Tue, 31 Aug 2010 08:26:00 -0700 FreeBSD: Teclado castellano (internacional) bajo Xorg usando Hal. http://www.toomany.net/freebsd-teclado-castellano-internacional-bajo http://www.toomany.net/freebsd-teclado-castellano-internacional-bajo

Y es que no todo el mundo usa Gnome, KDE o XFce, y en más de una ocasión, lo único que necesitamos es un buen window manager (lease windowmaker, icewm, dwm, fluxbox, etc, etc...). El problema es que si no estás en una distro GNU/Linux (donde habitualmente, que no todas, te lo dan todo masticadito), puede llegar a convertir algo más o menos trivial, en un infierno. Y lo peor es que una experiencia que se inicia como agradable bajo FreeBSD, cambiando de aires de otro sistema operativo, puede hacer desistir rapidamente al neófito de continuar con FreeBSD, para volver a su anterior sistema operativo.

Concretamente estoy hablando del teclado en castellano (español/España) bajo Xorg (sistema X-Window) compilado para usar Hal.

Y es que la experiencia puede fustrar: Te logas en el sistema, te instalas en un momento (tirando de paquetes binarios en remoto con "pkg_add -r -v <paquete>") un window manager ligero, configuras el sistema X en nano segundos con un "X -configure", copias el fichero resultante llamado "xorg.conf.new" como /etc/X11/xorg.conf, te creas un fichero en tu $HOME/.xinitrc con un texto que diga algo así como: "exec /usr/local/bin//wmaker" (sin las dobles comillas), inicias las X con el comando "startx" y..... ¡¡¡ZAS, en toda la boca!!! Tienes el teclado bajo las X configurado como inglés.

Pongámosle solución rápida. Haz un copy&paste de lo que pongo aquí abajo, y grábajo en un fichero llamado:

/usr/local/etc/hal/fdi/policy/x11-input.fdi

=======Inicio fichero========================================

<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
 <device>
  <match key="info.capabilities" contains="input.keyboard">
   <merge key="input.x11_options.XkbModel" type="string">pc105</merge>
   <merge key="input.x11_options.XkbLayout" type="string">es</merge>
  </match>
 </device>
</deviceinfo>

======Fin fichero==========================================

 

(no se os ocurra copiar las líneas de Inicio y Fin de fichero; tan solo os las pongo para que quede bien delimitada la zona a copiar).

Una vez lo hayais copiado y grabado, reiniciad el servicio hald:

/usr/local/etc/rc.d/hald forcerestart

Y ahora ya podreis disfrutar de vuestro teclado en castellano tranquilamente, bajo Xorg+Hal, con cualquier window manager (bajo Gnome o KDE, los dos grandes desktops a día de hoy, no hace falta hacer ésto, ya que las propias utilidades que llevan de configuración de teclado ya os lo configuran (si se lo indicais, claro)).

 

Después de configurarme un Acer Aspire D-250-0bk con FreeBSD 8.1-RELEASE, me he dado cuenta que en un post que puse al respecto de este tema hace ya un tiempo, no quedaba para nada claro qué había que hacer para solucionar este handicap, y disfrutar plenamente de nuestro sistema.

 

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Fri, 16 Jul 2010 00:03:00 -0700 Modern, Cool Nerd. http://www.toomany.net/modern-cool-nerd http://www.toomany.net/modern-cool-nerd

Ahora parece que me ajusto a un "Modern, Cool Nerd", según ésta encuesta. xDDDD

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Wed, 28 Apr 2010 06:42:00 -0700 FreeBSD 8.1 a la vistaaa!!! http://www.toomany.net/freebsd-81-a-la-vistaaa http://www.toomany.net/freebsd-81-a-la-vistaaa

Según Ken Smith y este correo suyo, ya hay una agenda preliminar definida para la liberación del FreeBSD 8.1-RELEASE; el 9 de Julio.

Este es, tal y como podeis ver en el correo mencionado, el desarrollo de la agenda:

Freeze                May 24th, 2010 
BETA1                May 28th, 2010 
RC1                June 11th, 2010 
RC2                June 25th, 2010 
RELEASE                July 9th, 2010
Personalmente creo que acabará yéndose, en el más optimista de los casos, 
para finales de Julio. Y para la opción más pesimista, creo que será hacia finales 
de Septiembre, principios de Octubre.
Sea como sea, una muy buena noticia!!
Have a nice day ;-)
TooManySecrets

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Fri, 23 Apr 2010 11:59:00 -0700 FreeBSD Status Report Enero-Marzo 2010 http://www.toomany.net/freebsd-status-report-enero-marzo-2010 http://www.toomany.net/freebsd-status-report-enero-marzo-2010

Ya está en la calle (desde ayer) el report de estado de FreeBSD para el primer trimestre de este año. Como siempre, viene llenito de cosas muy muy muy interesantes; el soporte del navegador web Chromium, el estado de Clang como compilador para substituir a GCC, el soporte de webcam, 802.11n, mejoras y avances en IPFW y dummynet, la implementación ATA basada en CAM, ZFS, SUJ (SoftUpdates con Journaling), etc, etc, etc... Vamos, para hacerle la boca agua a cualquiera.

FreeBSD Status Report Enero-Marzo 2010

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Wed, 21 Apr 2010 06:07:00 -0700 El Android Libre premia la fidelidad de sus seguidores. http://www.toomany.net/el-android-libre-premia-la-fidelidad-de-sus-s http://www.toomany.net/el-android-libre-premia-la-fidelidad-de-sus-s

El sitio web de referencia sobre Android El Android Libre, está premiando a sus seguidores con un sorteo. Esto es práctica habitual. El caso es que el sorteo no es cualquier cosa; sortean un Nexus One de Google, así como una camiseta de EAL + una chapa + muñequito Android.

Quien esté interesado puede leer las bases de su concurso, pero os puedo ir adelantando que el concurso da comienzo hoy día 21 de Abril, y se cerrará la participación el día 16 de Mayo a las 21 horas.

Esta es una web que para quien esté metido en el mundo Android, vale mucho la pena seguir, ya que nos brinda unos buenos artículos sobre diversos temas, como por ejemplo análisis, trucos, nuevos terminales, etc. Desde luego, desde que tengo mi Magic y me la recomendó mi amigo Raul (aka BgTA or BGAndroid) es una web que me gusta ir siguiendo por todos sus contenidos.

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Fri, 09 Apr 2010 09:46:00 -0700 Configurar el automounter (AMD) de FreeBSD para compartidos samba. http://www.toomany.net/configurar-el-automounter-amd-de-freebsd-para http://www.toomany.net/configurar-el-automounter-amd-de-freebsd-para

Partimos de la base de un servidor corriendo samba, del que quiero montar sus shares (compartidos) desde mi FreeBSD. Esto ya lo he hecho antes desde Linux, donde hay una gran abundancia de recursos para configurar esta situación (aunque también vale la pena que reces un poco para encontrar algo que esté un poco en condiciones, no esté muy desfasado, no sea para una distribución concreta con sus «particularidades», etc, etc). El caso es que llegado el turno de hacer lo mismo en FreeBSD, la documentación para este tipo de acción es muy escasa. Más que nada debido a que la información para el automounter para cualquier cosa que no sea NFS es muy rara. Pero por otro lado también a que el desarrollo de las herramientas AMD ha estado inactivo durante unos años, hasta hará cuestión de 2 ó 3 años atrás, momento en que el proyecto fué acogido de nuevo por un mantenedor. Actualmente el nombre del nuevo proyecto AMD es "am-utils". Pero en contra de la tradición, hay que decir que la documentación de FreeBSD tampoco es que sea muy clara, así que lo que aquí os expongo es la traducción y adaptación de un magnífico escrito al respecto que he encontrado en inglés.

El HOWTO

Lo primero de todo es saber cómo montar un compartido samba bajo FreeBSD, usando para ello el comando mount. Algo tan simple como: mount -t smbfs //user@servidor/share /punto/demontaje. Lo que ocurre es que el comando lo debes ejecutar como usuario root, y además deberás tener presente una serie de temas al respecto:

  • Por defecto el comando te preguntará el password del usuario de forma interactiva. Evidentemente con el automounter no hay posibilidad alguna de poder hacer esto. Para ello el comando necesita de opciones adicionales para evitar que pida el password. Sería algo así como: mount -t smbfs -o rw,-N //user@servidor/share /mount/point. La opción -N permite que la operación de montaje continue sin preguntar por el password, pero a no ser que hayas configurado una cuenta de usuario invitado, tendrás que escribir las credenciales de usuario (nombre usuario y password para servidores) en el fichero /etc/nsmb.conf. Echale un vistazo a la página man (si, en FreeBSD si haces “man nsmb.conf”, al contrario que en la gran mayoría de distros Linux, te indicará todo lo necesario sobre ese fichero de configuración y las indicaciones a otra documentación de ser necesaria).

  • A veces es útil usar la opción -I ("i" latina mayúscula) para especificar la dirección IP o el nombre DNS del servidor samba, especialmente si hay algún problema en la resolución del nombre NetBIOS del servidor. El comando mount pasaría a ser algo como esto: mount -t smbfs -o rw,-N,-I=192.168.1.5 //user@server/share /mount/point.

  • Encontrareis información adicional sobre todas las opciones en la página man del comando mount_smbfs. Este comando es el que hace el montaje para compartidos samba. Notad que en el comando mount, cualquier opción a pasar a mount_smbfs necesita ser escrita con el valor -o opción, separado por comas, con opción y sus valores separados por “=”. Por ejemplo, dada la siguiente línea de órdenes de comando mount_smbfs mount_smbfs -r -N -E gbk:cp936 //user@server/share /mount/point, la correspondiente línea de comando mount sería: mount -t smbfs -o ro,-N,-E=gbk:cp936 //user@server/share /mount/point.

Pasemos entonces ya a la parte del automounter. El automounter en FreeBSD se llama AMD, y es bastante diferente del automounter en Linux, por cómo trabaja y la configuración y formato de los ficheros correspondientes. Comenzaremos con los ficheros de configuración. AMD no soporta smbfs nativamente. Así que la solución pasa por usar un programa para ello en AMD, el cual nos permitirá especificarle los comandos para montar y desmontar un filesystem. Con esto, virtualmente se podrá añadir dentro de AMD cualquier sistema de ficheros en AMD aunque no lo soporte nativamente.

Crearemos un fichero llamado /etc/amd.conf que contenga lo siguiente (siempre como usuario root):

[global]

auto_dir = /.amd

log_file = /var/log/amd.log

log_options = error,fatal,warning

map_type = file

search_path = /etc

[/smb]

map_name = amd.smb

Esta configuración indica a AMD lo necesario sobre su directorio raiz de automontaje, localización de logs y opciones de contenido, además de donde buscar sus ficheros de mapeo. Luego la sección [/smb] define un punto de automontaje /smb, y su correspondiente fichero de mapeo amd.smb.

He mencionado el fichero /etc/amd.smb, así que es hora de crearlo con lo siguiente:

share    fs:=${autodir}${path};type:=program;mount:="/sbin/mount mount -t smbfs -o rw,-N \\\/\\\/user@server/share ${fs}";

Este fichero de mapeo indica a AMD que cuando necesite automontar un share samba, necesitará ejecutar el programa definido por la flag de mount. Fíjate, la línea de comando en mount:=... parece un pelín rarilla. Dos cosas debes tener en cuenta:

  1.  
    1.  

      1. La línea de comando en mount:=... no es simplemente un comando a ejecutar. En vez de eso está compuesta de dos partes. La primera palabra en la línea de comando es el nombre del ejecutable, y después, las palabras que siguen son argumentos para ejecutar el comando, incluyendo argv[0] (o $0). Ahí teneis el porqué hay un comando “mount” extra ahí metido.

      2. La opción por defecto de AMD normalizará las barras en su fichero de configuración. Las dobles barras (como la que aparece al principio de una URL de un compartido samba) serán normalizadas en una sola barra. Pero las barras de escape extras son necesarias para ello (“\\\/\\\/user@server/share”).

Un comando unmount puede también darse aquí si el “umount ${fs}” por defecto no se aplicase (por ejemplo para un filesystem fuse).

Con estos dos ficheros preparados, podemos activar AMD. Para ello editamos el fichero /etc/rc.conf, y añadimos (o modificamos) las siguientes líneas:

amd_enable=”YES”

amd_flags=””

La segunda línea permite a AMD iniciar sin ninguna opción extra. Esto hará leer el fichero AMD /etc/amd.conf para buscar las opciones.

A continuación inicia AMD con el comando /etc/rc.d/amd start. Esto iniciará todo y, dado que hemos puesto las dos líneas anteriores en el fichero rc.conf, cuando se reinicie la máquina se activará automáticamente el servicio.

Terminado esto, cuando accedamos a /smb/share AMD ejecutará el comando mount y montará todo automáticamente. Y además, si el mount está inactivo durante 5 minutos, AMD los desmontará automáticamente también.

 

Espero que pueda seros de utilidad a más de uno/a, y no haber fallado mucho en la traducción/adaptación realizada.

 

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Wed, 31 Mar 2010 12:22:20 -0700 OpenSolaris y el actual mega-FUD. http://www.toomany.net/opensolaris-y-el-actual-mega-fud http://www.toomany.net/opensolaris-y-el-actual-mega-fud

No puedo aguantarlo más y, por lo tanto, tengo que escribir algo al respecto (y vaya por delante que ni trabajo en Sun/Oracle, ni me pagan ningún "extra" (que no me iría nada mal y ya me gustaría)).

 

Que gran verdad es aquella que dice que el individuo, aislado, es minimamente inteligente. Pero en cambio la masa (la compuesta por por los individuos, no la verde y cabreada), es más tonta que los pelos del culo (si, ya sabeis, que ven venir la mierda y no se apartan).

 

Como muchos ya sabeis (está el tema como para no haber oido siquiera hablar de ello), Oracle ha cerrado el uso del sistema operativo Unix Solaris, de manera que ahora te lo puedes bajar igualmente, pero tienes un tiempo limitado de 90 días para usarlo libremente. Pasado ese tiempo, o pagas o a la puta calle.

Tal y como acabais de leer, he dicho que «ha cerrado», aunque quizás la palabra correcta es ha limitado su uso. Por que claro está, no puede cerrar algo que no estaba abierto. Y digo esto porque antes de la compra de Sun por parte de Oracle, te podías bajar el Solaris con el único requisito de registrarte y ya está. Eso si, si querías disfrutar de las actualizaciones/parches o de soporte, «pagando San Pedro canta». Pero eso si, NUNCA, JAMÁS, ha tenido Sun el código de Solaris abierto como la masa de vociferantes... ¿borregos? se empeñan en proclamar a los cuatro vientos. Y me perdonareis por lo de «borregos», pero es que cuando uno se tira por un puente y el resto le sigue detrás sin mirar ni prestar la más mínima atención a lo que está haciendo, se le adjetiva como tal. No teneis más que ir a twitter, y en la búsqueda poner la palabra «opensolaris»; es que uses o no este sistema operativo, te guste o no, acabas con una depresión de caballo gracias a los fud-comentarios que la gregaria composión del rebaño va dejando ahí, desde hace como unos 3-4 días bien bien.

 

¿Y donde entra OpenSolaris en todo esto? Pues en que la masa borreguil, a pesar de no tener pajotera idea de que el código de OpenSolaris está liberado y no tiene nada que ver con los derroteros que siga Solaris, se ha empeñado en proclamar a los cuatro vientos el mencionado mega-FUD; "si el código de Solaris se cierra, el fin de OpenSolaris ya está aquí, o se está mascando y no tardará nada" ¡¡Arrepentíos!! ¡¡El día del arrebatamiento está próximo!!...

¿Cómo se puede cerrar un proyecto que está libre? Personalmente, la única forma que conozco es que la comunidad que lo sostiene lo abandone, y finalmente muera por desatención. También existe otra forma que algunas personas han indicado; que Oracle ejerza sus derechos sobre el copyright e impida su desarrollo. Bien, si, esto es perfectamente factible. Al igual que Intel, IBM, Novell y otros de los grandes del kernel Linux podrían hacer. Digamos que es una espada de Damocles que pende sobre cualquier proyecto como estos. Pero de ahí, a estar enterrando ya un sistema y proyecto como es OpenSolaris... manda huevos.

 

Pero vamos, en resumidas cuentas; ¡¡que noooo!! Que OpenSolaris, como proyecto independiente de Solaris y Oracle, sigue ahí. Y si no han sacado ya la versión 2010.03, es sencillamente porque están solucionando bugs demasiado importantes como para hacer la release y que sigan ahí (¿esto, digo yo, se conseguirá entender no? vamos, tampoco es muy difícil). Que no hay ningún jodido contubernio judeo-masónico...

Además, qué es mejor, ¿que saquen el sistema ya para «ir sobre fechas» y llenito de bugs, o que tarden 15 días, 1 mes o varios más, y que la nueva versión del sistema salga funcionando de maravilla y con una cantidad de bugs mínima y no crítica?

 

Como dicen en el programa de Pablo Motos; "relaaaajaaateeee". Y como dice el dicho; «no vendas la piel antes de cazar la pieza».

 

Y para acabar ya del todo, si alguien se ha sentido ofendido... En fin, mi idea/intención es disculparme porque tampoco ha sido mi idea (aunque a mí me ofenda profundamente toda esta soplapoyez del FUD). Así que si alguien se ha sentido ofendido, pues lo siento y siento mucho también haber llamado al pan pan, y al vino wine.

 

Por cierto, es cierto que todo el código de OpenSolaris no está abierto. Hay, principalmente, algunos drivers que se distribuyen como binarios por los fabricantes (vamos, que no son de Sun/Oracle), y que por lógica no están abiertos. Lo que en el mundo open source se suele conocer por BloB (en el mundo Linux y FreeBSD son harto conocidos). Fuera de eso, lo demás, limpio como culito de bebé.

 

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo
Mon, 15 Mar 2010 10:57:00 -0700 Subtítulos en vídeos del canal BSDConferences de YouTube. http://www.toomany.net/subtitulos-en-videos-del-canal-bsdconferences http://www.toomany.net/subtitulos-en-videos-del-canal-bsdconferences

Si te haces un apaño con el inglés, pero seguir los vídeos te cuesta un poco (especialmente cuando cada persona tiene ciertos acentos), ahora ya no tendrás excusa para ver los vídeos del canal FreeBSD en YouTube.

Gracias al proyecto de subtitulado realizado por Murray Stokely, ahora puedes ver estos vídeos subtitulados en inglés. Pero lo mejor de todo es que gracias al método empleado, si pulsas en el vídeo podrás ver que puedes pedir la traducción del subtitulado a castellano (por ejemplo), o el idioma que prefieras. Podreis ver un ejemplo de todo esto en esta otra página.

Por último comentaros que de los 73 vídeos que hay, se han ido viendo hasta 200.000 veces desde el año 2008, fecha en que se inició el canal BSD Conferences.

Y como muestra un botón; el vídeo de Marshall Kirk McKusick titulado FreeBSD Kernel Internals:

Vereis que el vídeo aparece subtitulado en inglés. Si mientras lo visionais pulsais sobre el vídeo para abrir el mismo en YouTube, una vez allí, vereis que en la barra de control del mismo hay un icono con dos CC blancas sobre fondo rojo. Pulsad el icono y os aparecerá el menú para traducir los subtítulos.

 

Have a nice day ;-)

TooManySecrets

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/359244/dsc00985_250x188.jpg http://posterous.com/users/3sTDmeFajLVL Manuel Trujillo TooManySecrets Manuel Trujillo