Hay cosas que a veces son muy problemáticas y que uno le da la vuelta mil veces para conseguir la solución, y después de haber logrado resolverlo, uno se entera que existe un paso muy pero muy sencillo!!!.
Esto me paso con el problema de eliminar las carpetas de un proyecto que ha estado en un repositorio SVN, muchas veces al querer copiarlo después de haberlo descargado este traerá en cada directorio una carpeta con .svn.
A veces si era un proyecto pequeño tocaba eliminar a mano cada carpeta .svn , otras cuando es más grande se puede hacer un script que busque los directorios con extensión .svn y los borre, pero sin embargo lo que si da risa es que la solución real esta en el mismo manual del subversion, es solo cuestión de EXPORTAR el proyecto y este nos generará una carpeta con el proyecto sin las tediosas carpetas .svn!!.
Así que todo se reduce a una simple sentencia: svn export rutasvn rutadestino
La ruta destino no es necesario que se cree , en caso de que ya este creada le tendremos que agregar al final de la sentencia la opción --force.
Y más risa dará si usamos herramientas como TortoiseSVN, RapidSVN o Workbench , ya que en estos mismo encontrará la función "export" , con lo cual solo debe seleccionar la carpeta y la herramienta se la preparará sin las correspondientes carpetas .svn.
Típico problema RTFM (Read the fuck manual!!)
Continua...
miércoles, 7 de enero de 2009
Eliminar carpetas .svn de un proyecto
miércoles, 5 de noviembre de 2008
Crear replica de Bases de Datos MySQL
Desde la versión de MySQL 3 es posible tener una base de datos en un servidor que se alimente automáticamente de un servidor de bases de datos maestro, esto es muy útil donde se manejan muchos datos y se realizan muchas transacciones entonces se desea tener un ambiente de ata disponibilidad en caso de que uno de los servidores se caiga , se activa el otro que esta respaldado hasta las ultimas operaciones realizadas.
Esta guía la probé usando un ambiente con linux debian etch y MySQL 5.0 .
Las características de MySQL 5 soportan replicación asíncrona unidireccional: un servidor actúa como maestro y uno o más actúan como esclavos. El servidor maestro escribe actualizaciones en el fichero de log binario, y mantiene un índice de los ficheros para rastrear las rotaciones de logs. Estos logs sirven como registros de actualizaciones para enviar a los servidores esclavos. Cuando un esclavo se conecta al maestro, informa al maestro de la posición hasta la que el esclavo ha leído los logs en la última actualización satisfactoria. El esclavo recibe cualquier actualización que han tenido lugar desde entonces, y se bloquea y espera para que el master le envíe nuevas actualizaciones.
Un esclavo servidor puede servir como maestro si quiere preparar una cadena de replicaciones de replicación.
Tenga en cuenta que cuando usa replicación, todas las actualizaciones de las tablas que se replican deben realizarse en el servidor maestro. De otro modo, debe ser cuidadoso para evitar conflictos entre actualizaciones que hacen los usuarios a las tablas en el maestro y las actualizaciones que hacen en las tablas de los esclavos.
Configuración del Servidor Maestro
En el fichero /etc/mysql/my.cnf comentamos las siguientes lineas , sin importar el valor que tengan asignado, para que el demonio del mysql pueda escuchar en las interfaces de red : # skip-networking
# bind-address = 127.0.0.1
Ubicamos en el mismo archivo la clasula [mysqld] , debajo de ella buscamos las lineas siguientes: # server-id = 1
# log_bin = /var/log/mysql/mysql-bin.log
# binlog_do_db = include_database_name
# binlog_ignore_db = include_database_name
Estas lineas debemos descomentarlas y modificarlas dependiendo de lo que vamos a hacer, la primera es para identificar el servidor, en este caso el servidor maestro es el Nº 1, la segunda linea es la que indica la ruta donde almacenarán los logs, la tercera linea es para indicar el nombre de la base de datos que se va a replicar y a la que el servidor irá registrando en el archivo que pusimos en la ruta de la linea anterior y por ultimo en la siguiente linea colocamos el nombre de la base de datos que no registraremos. Además de modificar estos valores debemos agregar dos lineas más quedando todo este código de la siguiente forma: server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = NombreBaseDatosReplicar
binlog_ignore_db = mysql
low-priority-updates
innodb_flush_log_at_trx_commit=1
La ultima linea agregada innodb_flush_log_at_trx_commit, cuando este valor es 1 (predeterminado), cada vez que se confirma una transacción el buffer de registros (log buffer) se graba en el fichero de registro y se vuelca a disco.
Ya con esto terminamos la edición del archivo my.cnf en el maestro, nos salimos del editor y procedemos a reiniciar el servicio de mysql /etc/init.d/mysql restart
Bloquear y Extraer Base de Datos
Crear Usuario
Procedemos ahora a crear un usuario que tendrá permisos para que el servidor esclavo pueda conectarse a la base de datos del servidor maestro ( si ya tiene un usuario creado con tal permisología en la base de datos también puede re-asignarle permisos para la replica en el servidor esclavo). Para ello procedemos a entrar al shell del mysql como root y dentro ejecutamos la sentencia de creación del usuario: GRANT REPLICATION SLAVE ON *.* TO 'usuario'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
Bloquear Base de Datos
Para generar la replica de la base de datos estas deben quedar con la misma data , para ello debemos bloquear cualquier registro nuevo que se vaya a generar mientras realizamos el proceso, siendo así usamos la base de datos especifica y posteriormente la bloquearemos, esto se realizará ejecutando lo siguiente: use nombreBaseDatos;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
La ultima linea nos generará una respuesta la cual debemos prestar atención, ya que los datos deben ser anotados para posteriormente utilizarlos, de este resultado debemos anotar las dos primera columnas que son el nombre del fichero y la posición, los datos generados son similares a estos : mysql-bin.0008678 98 nombreBaseDatos
Una vez anotado estos datos, nos salimos del shell de mysql.
Extraer Datos
Es necesario exportar la base de datos para posteriormente importarla en el servidor Esclavo, para ello usaremos el comando mysqldump con el cual generaremos un archivo .sql , ejecutamos entonces en el terminal lo siguiente: mysqldump -u root -p --opt nombreBaseDatosReplicar > nombreBaseDatos.sql
Generado el archivo .sql lo copiamos en el servidor esclavo. Ahora solo queda desbloquear la base de datos en el servidor maestro para que siga su normal funcionamiento, entramos de nuevo en el shell de mysql como root y ejecutamos el comando: unlock tables;
Hasta aquí hemos terminado la configuración con el servidor maestro, ahora procederemos a entrar al servidor esclavo para realizar la configuración.
Configuración del Servidor Esclavo
Crear e importar base de datos
En el servidor Esclavo procedemos a crear la base de datos, para ello ingresamos a mysql y desde el shell ejecutamos lo siguiente: create database nombreBaseDatos;
Nos salimos del shell y procedemos a ejecutar en el terminal el comando para importar la base de datos que previamente habiamos guardado en un archivo .sql , esto lo haremos de la siguiente forma: mysql -u root -p nombreBaseDatos < /rutaarchivo/nombreBaseDatos.sql
Configuración de MySQL como esclavo
Ahora editaremos el archivo my.cnf del servidor esclavo con el fin de definir que este servidor funcionará como esclavo y se le indicará quien es el servidor maestro, para ello abrimos el archivo y buscamos la clausula [mysqld]y colocamos lo siguiente: server-id = 2
master-host = ipServidorMaestro
master-user = usuarioCreado
master-password = usuarioPassword
master-connect-retry = 60
replicate-do-db = nombreBaseDatos
Guardamos los cambios realizados y reiniciamos el servicio de mysql , posteriormente entramos como root al mysql y apagamos el servicio de esclavo ejecutando el siguiente comando: SLAVE STOP;
Inmediatamente procedemos a ingresar los datos del ip del servidor mysql maestro, los datos del usuario y además usaremos los datos que anotamos cuando se procedió a bloquear la base de datos, es decir , el nombre del archivo y la posición, esto lo hacemos con la siguiente sentencia: CHANGE MASTER TO MASTER_HOST='ipServidorMaestro', MASTER_USER='usuarioCreado', MASTER_PASSWORD='usuarioPassword', MASTER_LOG_FILE='archivo mysql-bin.xxxxx', MASTER_LOG_POS='Nº XX';
Para finalizar iniciamos nuevamente el esclavo y salimos del mysql: START SLAVE;
Ahora ya se puede realizar cualquier cambio en el servidor maestro y se verán replicados en el servidor esclavo.
Continua...
martes, 14 de octubre de 2008
Habilitar Acceso Remoto a Bases de Datos MySql
Muchas veces el acceso a nuestras bases de datos lo realizamos directamente en el mismo servidor, quizás por razones de sencillez , vía ssh nos conectamos y revisamos lo que se necesita. Sin embargo, para acceder a estos servidores requerimos tener un usuario y su correspondiente clave, aparte del usuario y la clave de la base de datos. Es por ello que muchas veces necesitaremos administrar remotamente las BD de mysql y para ello solo necesitamos hacer una pequeña configuración en el servidor para permitir los accesos.
Lo primero que debemos hacer es irnos al servidor donde esta instalada la base de datos mysql y realizar un cambio en el archivo my.cnf de mysql , si esta instalado en un servidor con debian lo encontremos en la ruta:/etc/mysql
En este archivo por defecto la instalación de MySql queda apuntando a nuestra dirección local, para ello debemos modificarla, así que ubicamos la linea que dice:bind-address = 127.0.0.1
y le cambiamos la dirección para que quede:bind-address = 0.0.0.0
Una vez realizado esto ejecutamos mysql como root , y una vez dentro le daremos permiso al usuario que queremos que acceda de manera remota, esto es ejecutando la siguiente sentencia:grant all privileges on *.* to 'usuario'@'%' identified by 'password' with grant option;
Y listo, ejecutado estas dos operaciones procedemos a reiniciar el servicio de mysql:/etc/init.d/mysql restart
Ejecutado el procedimiento , podemos probar desde otra maquina ingresar a la base de datos colocando la dirección ip , el usuario y clave de la base de datos el cual previamente configuramos.
Continua...
sábado, 4 de octubre de 2008
Y en pocos días llega la cabra montañosa!
Como dato curioso, es probable que muchos se pregunten de donde salen estos nombres de cada versión de ubuntu, bueno para aquel que no lo sepa el número y el nombre de cada versión de Ubuntu que se desarrolla es parte también de la planificación del producto. El número de versión corresponde al año y al mes en que esta será lanzada. Por ejemplo, la versión actual, la 8.04 salió este año (08) en Abril (04), la siguiente saldrá en octubre de este año (8.10) y así sucesivamente. En cuanto al nombre siempre sigue el mismo patrón. Un adjetivo y el nombre de un animal. Pero ojo, tanto el adjetivo con el nombre tiene que empezar con la misma letra. La letra inicial es la siguiente por orden alfabético en cada versión. Por ejemplo, la versión anterior a la actual se llamaba Gutsy Gibbon (GG) la actual es por H y se llama Hardy Heron (HH) y la que viene se llama Intrepid Ibex (II). Es bien bueno el mecanismo porque permite una facil distinción de las versiones y el mismo nombre nos indica las fechas de lanzamiento (7.04-FF, 7.10-GG, 8.04-HH y 8.10-II). Bueno queda esperar entonces 26 días.
Siguiendo fiel a la regla de lanzar una nueva versión de ubuntu cada 6 meses, pues ya faltan pocos días para que este disponible la versión final , la cual fue denominada Intrepid Ibex, o Ibex Intrépido ( o lo que es lo mismo ... cabra montañosa). Lo cierto es que la gente de ubuntu no hace el lanzamiento en vano , no recurre a técnicas muy conocidas como microsoft de cambiar solo el aspecto y mover las cosas de lugar para hacer creer que es una versión nueva jajaj, la verdad es que este nuevo ubuntu se viene con varios cambios muy buenos que siguen los lineamientos de versiones anteriores como Hardy Heron o Gutsy Gibbon, es decir proporcionar al usuario mayor facilidad de uso separando la complejidad que pueda tener el ambiente para poder orientarlo a usuarios menos diestros (tipo windows jejeje) sin tener que bajar el rendimiento del mismo.
La nueva versión ya tiene a varios usuarios descargando la versión beta , que po cierto fue lanzada ayer 2 de octubre, lo que lo puede dejar a uno impresionado es que esa fecha ya se tenia prevista desde hace meses atrás!!! , quizás para algunas no les parezca impresionante, y dirán que con solo tenerlo planeado ya se logra, pero nooooo, desarrollar software es complicado y en cualquier momento explotan bugs y bugs qe retrasan los lanzamientos y hacen que las fechas se vuelvan difíciles de cumplir, sino me creen es cuestión de ver como muchas empresas reconocidas de software tienen que retrasar sus lanzamientos por problemas inesperados. Pero bueno eso es otro asunto, el hecho es que siguiendo el calendario para el lanzamiento de ubuntu 8.10 nos quedan dos fechas próximas y son:
De la versión Beta liberada ayer y de la cual ya muchos han descargado , tendrán aproximadamente dos semanas para reportar bugs y estos dependiendo de su prioridad serán corregidos e integrados a la versión RC1, cuando posteriormente habrán muchos entusiastas más que volverán a descargar la RC1 para seguir enviando bugs que serán corregidos dependiendo del nivel dela falla y serán integrados a la versión final, con la cual se vuelve a repetir el ciclo pero con la diferencia de que las correcciones empiezan a salir como parches o paquetes de actualización. Es por ello que siempre funciona mejor la idea de que si quieres que tu sistema siga funcionando bien, lo mejor es tener una partición de datos separada de las particiones del sistema , y montar la versión nueva un mes después del lanzamiento oficial , cuando ya una cantidad grande de bugs han sido resueltos jejejej. La otra opción , la cual uno muchas veces ejecuta, es montar el sistema de prueba en una maquina virtual y ver que trae nuevo , si se daña pues borramos la maquina virtual y listo todo queda bien .
Igual para aquellos que les gusta estar a la vanguardia y que quieren tener el ubuntu a la ultima versión en este link pueden encontrar las distintas versiones para descargarlo con un cliente torrent:
http://linux.softpedia.com/progDownload/Ubuntu-Intrepid-Ibex-Download-39147.html
Ya con la versión beta también se han podido apreciar los nuevos cambios que se habían mencionado , estos son:Servidor X.Org 7.4 : Es posible ahora olvidarnos del tedioso archivo /etc/X11/xorg.conf , el nuevo servidor promete que a muchos usuarios no les será necesario la configuración a través de
Nuevo Gnome 2.23.91: Lo mejor de lo mejor en este nuevo entorno es la implementación de pestañas en el Nautilus , ahora no será necesario tener varias ventanas abiertas ya que con las pestañas tendremos las distintas vistas de las rutas. Además le colocaron un botoncito que saldrá al lado de los dispositivos extraibles con lo que se hace más amigable hacer la expulsión de un pendrive por ejemplo.Encriptar Carpetas: Podremos tener carpetas encriptadas para evitar ademas del acceso que puedan leer cualquier información contenida, obvio que esto no es nuevo ya existen varias formas de hacerlo hoy en día sin embargo lo nuevo aquí es que ya viene implementado por defecto.
Iniciar Sesión como un Invitado : Podremos configurar un perfil de usuario Invitado el cual tendrá accesos restringido al equipo y a la data (claro porque es invitado) pero lo bueno es que aún así podrá por ejemplo navegar en internet y revisar su correo, de forma tal que ahora se podrá prestar la maquina personal a otras personas sin tener que crear un usuario especial. Network Manager 0.7: El administrador de red trae nuevas funcionalidades y permite el manejo de varias tecnologías , ademas que la configuración pasa de ser especifica para cada usuario a general para todo el sistema , de esta forma se logra que el por ejemplo el usuario invitado tenga acceso a internet.
DKMS : Permite que los drivers del núcleo se reconstruyan de forma automática cuando sale un nuevo kernel, sin tener que esperar a que sean reconstruidos y liberados también en forma de paquete.
viernes, 26 de septiembre de 2008
Cómo saber si un Servidor esta caído?
Varias veces sucede que tenemos que acceder a una página o descargar algún archivo de un servidor en la web y resulta que quedamos rato largo esperando y después de un tiempo nos da varios mensajes de error, ya sea que no consigue la página, que no se puede acceder, que no esta disponible, etc etc. Pero el detalle esta en que ocasiones es nuestra red que tiene limitaciones de acceso a un servidor especifico, entonces como saber si es una falla de nuestra red o es el servidor que esta caído??.
Usando linux o windows , podemos saber si un servidor esta caído (aunque prefiero más linux jejej) y así despejar la duda si en nuestra red alguien bloqueo algunos puertos o direcciones en concreto.
En linux tenemos dos comandos que fácilmente nos podrá dar una respuesta, el primero es enviar un paquete al servidor destino y ver si nos da respuesta, aunque "ojo" esta opción puede que igual nos de un resultado negativo y no sea porque el servidor destino este caído sino porque este configurado para no responder a paquetes basura.
Entonces, nos metemos en la consola tanto en windows como en linux, nos sirve hacer un ping al servidor a consultar ping name.server
Si el servidor esta bien nos responderá los paquetes , es interesante analizar el tiempo de respuesta ya que si es muy grande indica que lo que esta sucediendo quizás es que el ancho de banda en la red esta muy saturado de paquetes. Sin embargo como indique anteriormente puede ser que el servidor este bien y aun así no responda.
Es por ello que tenemos otra forma y es realizar un rastreo de un paquete enviado, esto lo ejecutamos con el comando traceroute en linux o tracert en windows, por lo tanto quedaría así:
En linuxtraceroute name.server
En Windowstracert name.server
Lo bueno de rastrear el paquete es que permite ver si el problema esta en nuestra red, ya que si el paquete que enviamos no llega a pasar el gateway de nuestra red quiere decir que hay algo que esta filtrando los paquetes y que evita el acceso al servidor que queremos acceder, sin embargo si el paquete si sale de nuestra red y no termina de llegar al servidor destino esto nos indica que es posible que este caído el servidor que queremos acceder.
También existe otra opción muy simple, y es a través de la dirección web www.estacaido.com , aquí sencillamente te piden el nombre de la pagina que quieres ver y ellos se encargan de hacer el analisis , al cabo de un rato te responden muy claramente si el problema es tuyo o es del servidor!.
Continua...
jueves, 11 de septiembre de 2008
Migrar Repositorios SVN de un Servidor a otro
Este post es un 2 en 1, ya que aquí además de poder hacer la migración de un repositorio de un servidor a otro servidor, también podemos definir un esquema para respaldos de los directorios SVN.
Para realizar la migración, con svn procedemos a comprimir el directorio y este será guardado en un formato .dump, entonces lo primero que haremos será ubicarnos en el directorio del repositorio que queremos migrar y desde allí ejecutamos lo siguiente:
svnadmin dump nombre_directorioSVN/ > nombre_directorioSVN.dump
Este proceso se tardará un poco dependiendo del tamaño del directorio y la cantidad de revisiones que tenga, una vez finalizado obtenemos un archivo .dump el cual es el que usaremos para descomprimir e instalar en el lugar que deseemos (sea oro servidor y otro directorio svn). Lo importante también es que este mismo archivo lo podemos generar cada vez que necesitemos, generando así un respaldo del directorio SVN!!
Para continuar con la migración, copiamos el archivo .dump en el directorio SVN del servidor donde irá, y procedemos a crear el directorio svn:
svnadmin create nombre_directorioSVN
E inmediatamente cargamos el archivo .dump
svnadmin load nombre_directorioSVN <>
Ahora comenzará a descomprimir el archivo y cargarlo en el nuevo repositorio, nuevamente el proceso tardará dependiendo del tamaño del repositorio y de la cantidad de revisión es que tenga.
Un detalle muy pero muy importante en la migración, es crear el directorio svn en el momento en que vayamos a realizar la descompresión del archivo .dump , ya que si el repositorio ha sido creado previamente y se le han hecho modificaciones , por más mínima que sean (cambios de permisología, etc.) , la migración no funcionará y por consiguiente al descomprimir el archivo .dump este arrojará un error cuando se quiera acceder al repositorio svn.
Continua...
jueves, 4 de septiembre de 2008
Gestionando servicios con Sysv-rc-conf
Para instalar la aplicación no es necesario actualizar la lista de repositorios, lo único que debemos hacer es instalarlar directamente como root,
sudo aptitude install sysv-rc-conf
Es importante señalar que tuve que usar esta aplicación en Ubuntu Hardy ya que otra opción era montar KSysV pero la aplicación ocasiona varios problemas si tu entorno gráfico es gnome (como mi caso) y además de ello que tiene varias deficiencias , aquel que la haya instalado podrá comprobarlas al usar Sysv-rc-conf, también existe el comando chkconfig pero no sirve en Ubuntu, y aunque llegará a suceder también queda corta en funcionamiento.
Volviendo a lo nuestro, una vez instalada simplemente debemos ejecutar como root:
sudo sysv-rc-conf
La interfaz de la aplicación podrá parecernos sencilla ya que se ejecuta por consola, sin embargo notaremos que esta muy bien diseñada, ya que nos mostrará todos los servicios que tiene nuestra sistema en orden alfabético en la primera columna , y en las siguientes columnas veremos el estatus del servicio dependiendo del runlevel que tenga , lo útil con la aplicación es que es un listado de todo lo que existe y permite la gestión en caliente de todos ellos.

El manejo es más sencillo aún ya que activamos y desactivamos simplemente presionando la tecla espaciadora y nos movemos a través de los servicios usando las teclas de direccionamiento, pero lo que lo deja a uno más perplejo es que los desarrolladores fueron más allá y habilitaron incluso el uso del cursor del ratón dentro la aplicación, es así entonces que solo haciendo click sobre el runlevel de la aplicación lo habilitamos o deshabilitamos, que más se puede pedir?
Continua...
miércoles, 3 de septiembre de 2008
Error con VirtualBox - VERR_HOSTIF_INIT_FAILED -
Hay un error que lanza virtualbox de vez en cuando, producto de que ubuntu cambia la permisología a los directorios, aun realmente no se porque está sucediendo esto y tan seguido :s , y lo más extraño es que solo sucede con las maquinas virtuales de windows , no con las de linux, así que toca investigarme el porque de esto, sin embargo, por ahora coloco aquí como resolver este fastidioso problema que impide correr la maquina virtual.El error que a veces lanza VirtulBox en ubuntu al ejecutar una maquina de windows es este:
Unknown error creating VM (VERR_HOSTIF_INIT_FAILED).
VBox status code: -3100 (VERR_HOSTIF_INIT_FAILED).
Este error es porque el usuario con el que estamos intentando correr VirtualBox no tiene la permisología necesaria de lectura y escritura sobre el directorio /dev/net/tun en ocasiones la aplicación cambia el error indicando que efectivamente no tenemos permisología y hasta nos dá la solución que es ejecutar un chmod 666 sobre el directorio , sin embargo cuando es un error 3100 implica unos pasos más.
Lo primero es cambiar el grupo de usuario al directorio para ello ejecutamos en consola lo siguiente como Root (o sea , haga primero un sudo su, coloque su password y listo):
chgrp vboxusers /dev/net/tun
Después le cambiamos la permisología de lectura / escritura al dueño , grupo y resto de personas sobre el directorio:
chmod 660 /dev/net/tun
Es necesario que nuestro usuario este incluido en el grupo vboxusers, para ello abrimos el archivo de grupos y verificaremos si esta , si no lo esta pues lo incluimos , así que primero abramos al archivo:
vim /etc/group
Ahora dentro buscamos el grupo de vboxusers, algo así como lo que esta en negrilla debe aparecer :
mlocate:x:124:
vboxusers:x:125:
libuuid:x:126:
No hay que pararle al numero que esta delante del nombre del grupo, ya que es diferente en cada usuario, este numero es solo para indicar el numero del grupo, lo importante aquí es lo que este después de número, si no vemos el nombre de nuestro usuario, es necesario agregarlo, si hay otro usuario y no el nuestro pues se pone un coma y se coloca el siguiente, así que al final queda así:
mlocate:x:124:
vboxusers:x:125:nombreusuario1,nombreusuario2
libuuid:x:126:
Recordemos que para agregar texto en Vim solo hay que presionar la tecla i , después para guardar y salir presionamos Esc y después :wq! .
Y listo probamos prender de nuevo la maquina virtual y debe correr.
Continua...
martes, 2 de septiembre de 2008
Cómo saber el espacio libre y usado en linux??
Últimamente me ha tocado conocer cuanto están ocupando algunas carp
etas en linux, e incluso hasta algunas particiones completas, pero a la vez también es necesario conocer cuanto espacio libre nos esta quedando en el disco duro, para ello existen dos comandos que sirven para cualquier distro y nos resuelven muy bien el problema.
Para caber cuanto ocupa una carpeta solo debemos usar Disk Usage (du)
du -h /var/www/
El -h es una opcion para que el resultado sea más facil de leer , este comando generará un listado de todos los directorios , subdirectorios y de los archivos que contiene la carpeta que estamos viendo, del lado izquierdo indicará el espacio que ocupa cada una , y al final del lista mostrará el total de todos estos archivos.
Para saber cuanto espacio libre nos queda , usamos Disk Free (df)
df -h /var/www/
Igual que el anterior , usando -h el resultado es mucho más entendible, este comando nos generará una tabla con toda la información de la carpeta que hayamos consultado, ya que nos indicará el tamaño total de la carpeta, lo que se ha usado, lo que queda disponible y un porcentaje de uso.
Continua...
miércoles, 30 de julio de 2008
Donde está la Basura en Linux???
En varias ocasiones sucede que, al enviar algunos archivos a la papelera , estos no pueden ser removidos posteriormente, debido a que muchas veces el usuario que use la interfaz gráfica no tiene los privilegios para poder eliminarlos.
Cuando sucede esta situación, debemos irnos a la consola, y movernos al directorio correspondiente para poder borrar los archivos que necesitemos, el unico detalle depende del tipo de distribucion que usemos , si estamos usando Ubuntu, la ruta para la papelera es la siguiente:
/home/USUARIO/.local/share/Trash
Dentro de la carpeta Trash encontraremos dos carpetas , files y info, los archivos que necesitamos eliminar están dentro de files.
Si la distribución es Debian, la ubicación de los archivos es en:
/home/USUARIO/.Trash
En Debian además de ser distinta la ruta, es distinto el funcionamiento, ya que una vez dentro de .Trash se encontrarán los archivos que queremos borrar.
Continua...
martes, 29 de julio de 2008
Cuil.com .... Otro intento de buscador
No es que uno sea un ferviente seguidor de Google, y también es cierto que deben existir más y más buscadores en la web con el fin de que no exista sitio en la red al que no se le pueda llegar.
Sin embargo lo que molesta , es que llegue algo nuevo a la red prometiendo ser el Mejor siendo puro cuento publicitario!!!, en estos días es muy fácil descubrir las mentiras, y así se puede comprobar con cuil.com.
Cuil.com son los nuevos chicos de la red, aunque son personas experimentadas, ya que la mayoría son ex empleados de Google y de otras grandes empresas, y al parecer se vienen con todo, puesto que tienen fuerte apoyo de varios inversionistas, se asegura que hay mas de 30 millones de dolares en juego.
Al entrar al sitio, nos encontramos con la típica pantalla sencilla , como debe ser un buscador, lo bueno esta después de hacer la consulta, ya que el resultado reflejado no es de la manera común como un listado, sino que salen varios sitios cada uno con su resumen y algunos con una foto, por defecto la distribución es de 3 columnas , pero se puede personalizar a 2 columnas.
Del lado superior derecho tiene un indicador para salvar la búsqueda realizada, esto es obvio puesto que como están recientes, seguro almacenan las búsqueda encontradas y no encontradas, ya que por ningún lado te permiten agregar tu sitio web (olvídense de "add url to cuil.com").
Lo irónico de todo el asunto, es que al comenzar la búsqueda, en la primera pantalla te muestran un numero que representa el total de sitios web que están siendo indexados, hasta ahora van por 121,617,892,992, un numero mega grandote, pero que a mi me pareció de lo más falso, y esto es lo que más molesta, ya que han sido muchoooooos los intentos de muchaaaas empresas de lanzar un motor de búsqueda que se ponga a la par de Google, pero esta gente se lanzan con campañas publicitarias indicando que indexan hasta 3 veces mas lo que hace Google!!!!, es decir, la indexación de google esta por el orden de los 40millones de sitios web, haciendo un pequeño ejercicio de lógica podríamos decir que al poner "elchechoinmundo" que si sale en Google, pues es obvio que salga por acá, resulta que no es así!!.
Sin embargo dejando de lado el egocentrismo y buscando algo más rutinario por ejemplo "password encriptado en grub de linux" en donde con Google te arroja alrededor de 12mil sitios web, en Cuil.com nos encontramos con la gran sorpresa de ....... 0 ...... resultado!!!!, y esto sencillamente porque muchos de los sitios en español ni siquiera los busca jajaja. Y uno se pregunta .... de verdad que esto hace una búsqueda en 120millones de sitios web?? o es otro lanzamiento en la red con publicidad engañosa??? haga ud. la prueba y decida que seguir usando, para mí Cuil.com es otro intento más de buscador web.
Continua...
sábado, 19 de julio de 2008
Y más de Wii Motion Plus!!
Ok, ha pasado menos de una semana y nunca pongo nada de wii y ahora pongo dos seguidos de esto, no es por se repetitivo pero es que el mando nuevo cada vez lo deja a uno más impresionado, es solo cuestión de esperar que las empresas desarrolladoras se pongan al día y comiencen a lanzar titulos a la calle que exploten al máximo esta funcionalidad.
Aquí incluyo varias fotos que he conseguido del nuevo dispositivo:



Continua...
No Cargan los Flash en Firefox 3
Existe un problema con la versión de Firefox 3 corriendo en Ubuntu 8.04 , y es que cuando carga una pagina que tenga un objeto flash simplemente no lo va a mostrar y saldrá un horroroso cuadro blanco!! lo peor además es que muchos desarrolladores web incluyen funcionalidades en estos objetos flash, con esto posiblemente nos impide continuar con la navegación en el sitio.
La solución es agregar una librería que le dá soporte a flash, así que nos vamos a la consola y descargamos, como su:
apt-get install libflashsupport
Es bueno hacerlo con apt y no con aptitude para no descargar paquetes adicionales.
Después de esto nos borramos nuestra flash que tenemos instalado, esto lo haremos así:
apt-get remove --purge flashplugin-nonfree
Y listo, borrado , pues lo volvemos a instalar , parecerá tonto, pero la verdad es que ahora la instalación de flash se hará con la librería de soporte para flash que previamente instalamos.
apt-get install flashplugin-nonfree
Continua...
Cambiar texto en Vim
Al momento de usar la consola en linux para editar o crear cualquier texto, nada mejor que usar VIM, tiene una infinidad de opciones y lo mejor es que cuando lo personalizas te ayuda muchísimo más, es más sencillo la lectura y navegación de los archivos en comparación con otros editores , sin embargo esto será parte posteriormente de otro post.
Lo importante aquí, es un comando que siempre se necesita usar cuando editamos archivo grandes, o con muchas lineas, y en los cuales necesitamos que busque un texto o cadena de caracteres especifica y que lo cambie por otro que queramos .
Si necesitamos sustituir una cadenas de caracteres, palabra, etc pero en la linea que estamos parados debemos ejecutar:
:s/texto-viejo/texto-nuevo/g
Si el texto se encuentra repetido muchas veces lo que debemos hacer es agregar un "%" al comienzo esto indica que es de carácter Global y que lo busque en todo el documento.
:%s/texto-viejo/texto-nuevo/g
Este es un parrafo nuevo que he agregado, resulta que necesitaba hacer un cambio de una cadena de caracteres pero que no eran siempre iguales pero si tenian una cadena inicial igual, es decir por ejemplo si uno quiere cambiar una cadena que empieza por XXX y despues tiene una secuencia de datos que siempre varian por ejemplo hhho000 , hhho001 , etc, pero el hecho es que necesitan sustituir toda la cadena es decir XXXhhho000 por otro valor, bueno entonces como hacemos?, usamos la misma instrucción pero agregamos una expresión lógica que sustituya este valor que varía, con un comando así resolvemos el problema en todo el texto que queremos arreglar:
:%s/texto-viejo....../texto-nuevo/g
Como verán el cambio es un conjunto de 7 puntos que he colocado, cada punto es la representación de un solo caracter, y lo único que necesitamos saber es la cantidad de valores que cambian, cada uno de ellos le colocamos un punto.
Por último y para ayudarnos en otros sopotocientos comandos que necesitemos y desconozcamos , aquí coloco una imagen que simular ser una tabla periódica , pero en vez de elementos de química , son comandos del vim, bien chevere jeejejej
Continua...
jueves, 17 de julio de 2008
Más precisión con Wii Motion Plus
ositivo que aseguran , logrará mejor precisión para los juegos, será verdad o es otra estrategia de ventas?.La presentación que hizo la gente de Nintendo en la feria de juegos E3, dio resultados espectaculares, ya que demostraron con el nuevo juego Wii Sport Resort como con el dispositivo se ampliaban las opciones de jugabilidad.
Generalmente las empresas, cuando sacan un nuevo dispositivo, no es tanto para mejorar lo que tenemos sino para disfrutar lo que se va a lanzar con ese producto, es por ello que el control Wii Motion Plus no va a representar mayor diferencias en nuestros juegos de wii que tengamos actualmente, es decir en Call of Duty seguirás disparando igual, en Zelda seguirás los mismo movimientos, en Mortal Kombat saltarás o lanzarás rayos como lo seguías haciendo antes.
Entonces, cual es la diferencia?, bueno que ahora si tendrás más precisión, mejores movimientos , etc etc etc, peroooo con nuevos juegos que lo soporten!!, tristemente es así.
Lo único que debemos preparar es el bolsillo, ya que no bastará comprar el nuevo dispositivo sino también los nuevos juegos que vendrán preparados con estas funcionalidades, por ejemplo el sucesor de Wii Sport, Wii Sport Resort, siendo de la misma tónica que su anterior, varios mini juegos , con gráficos sencillos orientados solo a demostrar la funcionalidad de un dispositivo y cautivar con algunas horas de juegos.
Lo bueno del mando es que al aumentar sus características, aumenta la inmersión del jugador , dando nuevas sensaciones, como el acelerar una moto de agua al girar el wiimote , o lograr un perfecto balanceo horizontal, tal como lo haríamos en la vida real.
Siendo un producto nuevo, Nintendo ha hecho su anuncio más que para preparar a los consumidores, es para animar a las empresas desarrolladoras de juego en modificar sus productos aprovechando las nuevas funcionalidades.
Solo queda esperar que este producto no sea tan costoso, ya que a fin de cuenta igual lo terminamos comprando!.

Continua...
miércoles, 9 de julio de 2008
Habilitar acceso remoto en JBoss 4.2
y importante que se necesita una vez instalado , ya que sucede que después de realizar todo el proceso de configuración el JBoss funcionará perfectamente mientras uno se conecte local al servidor, es decir , mientras en el browser coloquemos la ruta http://localhost/, pero no veremos nada si intentamos conectarnos desde otra maquina a nuestro servidor, esto porque sucede?Cuando iniciamos el servicio de JBoss por defecto, el permanecerá conectado solo a la direccion local es decir a la 127.0.0.1, esto fue hecha así por razones de seguridad, sin embargo si necesitamos acceder remotamente para ello debemos volver a iniciar el servicio pero permitiendole que se conecte desde cualquier dirección , entonces levantamos el servicio de la siguiente manera:
./jboss/bin/run.sh -b 0.0.0.0
Es necesario previamente haber bajado el servicio jboss. Y según nuestra configuración que hayamos hecho del jboss accederemos a través puerto 8080.
Continua...
domingo, 6 de julio de 2008
Instalar un repositorio SVN con acceso WebDav
Tanto para unidades de desarrollos integradas como para aquel que realiza un proyecto solo, es necesario usar un repositorio de versiones.Existen varios , y casi todos comparten muchas similitudes , aquí colocare un How-To para instalar en un servidor Apache un repositorio SVN , con el servidor web podremos configurarlo para tener acceso WebDav.
Esta instalación es hecha en una disto de linux debian etch.
Para comenzar la instalación, debemos descargar e instalar el servidor web Apache 2, el modulo de apache que funciona con SVN y el propio SVN, esto lo haremos desde la consola con una sola linea de comando:
aptitude install apache2 subversion libapache2-svn
Para que funcionen los módulos svn con el apache , podemos cargarlos ejecutándolos cuando inicie el sistema (aunque algunas distros los cargan por defecto) ejecutando:
a2enmod dav
a2enmod dav_svn
o podemos hacer que siempre se carguen junto con el apache, para ello nos vamos al directorio de apache y modificamos el http.conf:
cd /etc/apache2/
vim httpd.conf
y agregamos las siguientes lineas:
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
Posteriormente , reiniciamos el servicio apache:
/etc/init.d/apache2 restart
Una vez instalado los paquetes, podemos probar que este funcionando el servidor web, escribiendo la dirección localhost en el browser, por otro lado es hora de decidir donde irán almacenados nuestros repositorios de versiones, en mi caso los coloque en /var y le coloque el nombre mas ingenioso: svn, así que si queremos dejarlos ahí pues solo debemos escribir:
mkdir /var/svn
Una vez creado el directorio podremos empezar a crear los repositorios, esto lo haremos con un comando del svn, se debe sustituir la palabra repositorionombre por el nombre que le coloquen a su repositorio:
svnadmin create /var/svn/repositorionombre
Ahora comenzaremos con los temas de permisología. Para el caso de apache, lo tenemos resuelto ya que el sistema tiene un usuario www-data, este nos sirve para que sea usado por el servidor web, sin embargo es bueno crear otro grupo de usuario el cual será los que usen el svn, esta práctica es buena porque así definiremos la permisología orientada a este grupo de usuarios y no tendremos que hacerle modificaciones al grupo de usuarios www-data. Entonces lo primero que haremos será crear un grupo de usuario svn:
groupadd svn
Después para agregar los usuarios hay varias opciones, sin embargo yo prefiero agregarlos todos de una vez editando el group, entonces ejecutamos:
vim /etc/group
Dentro ubicamos la linea donde este el grupo que hemos creado , en este caso se llama "svn", la linea contiene ademas del nombre del grupo, una x y un numero de grupo (el numero variará dependiendo de la cantidad de grupos que tenga en su sistema), al final de la linea iremos agregando , separados por una "," coma , cada uno de los usuarios:
svn:x:129:usuario1,usuario2,usuario3
Una vez creado el grupo, y añadido los usuarios al mismo, entonces configuraremos la permisología de los repositorios creados a los grupos correspondientes, www-data el grupo de apache y svn el grupo de usuarios del subversion.
chown -R www-data:svn /var/svn/repositorionombre
Además para evitar problemas con varios clientes SVN que puedan usar, y también problemas cuando usen apache, yo personalmente modifico la permisología del directorio:
chmod -R 770 /var/svn/repositorionombre
Estas dos ultimas operaciones son realizadas cada vez que se cree un nuevo repositorio, para verificar que los cambios ha surtido efecto es bueno hacer un ls -l.
Ahora procedemos a crear dos archivos que seran sumamente importante para la seguridad y perfiles de nuestro repositorio, en mi caso los he colocado dentro del directorio del subversion:
htpasswd –c /etc/apache/svnpass usuario1
htpasswd /etc/apache/svnpass usuario2
El primer comando con la opción -c nos crea el archivo svnpass en la ruta indicada , y nos pedirá la contraseña que le asignaremos al usuario1, con el segundo comando es que seguiremos agregando mas usuarios al archivo svnpass, hay que observar que ya no es necesario la opción -c , ademas de que si la volvemos a colocar nos vuelve a crear el archivo y eliminara los usuarios creados previamente, hay que tener cuidado con esto.
El segundo archivo que crearemos, lo haremos a mano, este es el que permitirá definir los perfiles de los usuarios y a que repositorios podrán acceder:
vim /etc/subversion/acceso
La estructura de este archivo es sencilla, lo primero que haremos será colocar la etiqueta [groups] y debajo iremos poniendo el nombre del rol y los usuarios que pertenecen a este rol, en esta parte es que definimos exclusivamente los roles, posteriormente si queremos tener un administrador general del svn tendremos que colocar la etiqueta [/] y debajo irá el usuario que será administrador , para hacerlo se debe colocar "@" delante de cada nombre de usuario y con "r" le damos permiso de lectura y "w" permiso de escritura, se puede colocar también "rw".
Por ultimo se coloca el nombre de cada directorio svn, y sus correspondientes usuarios, por ejemplo [repositorio1:/] esto le dará a los usuarios que estén debajo la permisología correspondiente para este repositorio, si queremos ser mas especifico y solo darle permiso en el trunk y no en los branches, podemos definir una política que sea : [repositorio1:/trunk], a continuación agrego un ejemplo de un archivo acceso con varios perfiles y varios repositorios:
[groups]
adminrepositorio1 = usuario1
adminrepositorio2 = usuario2
adminrepositorio3 = usuario1,usuario2
admingeneral = usuarioadmin
observador = usuarioobservador
desarrollador = desarrollador1
[/]
@admingeneral = rw
@observador = r
[repositorio1:/]
@adminrepositorio1 = rw
[repositorio2:/]
@adminrepositorio2 = rw
[repositorio3:/]
@adminrepositorio1 = rw
@adminrepositorio2 = rw
[repositorio3:/branches]
@desarrollador1 = rw
Creado estos dos archivos, ahora configuraremos nuestro modulo dav para definir el WebDav via browser, para ello editaremos el archivo dav_svn.conf:
vim /etc/apache2/mods-available/dav_svn.conf
Es posible que tenga algún contenido, generalmente comentado, a continuación agregaremos al final del archivo las siguientes lineas:
DAV svn
SVNParentPath /var/svn
# Utilizo una plantilla por defecto
SVNIndexXSLT "/svnindex.xsl"
# Autenticacion para los usuarios
AuthType Basic
AuthName "svn"
AuthUserFile /etc/subversion/svnpass
# Solo usuarios autenticados podrán acceder
Require valid-user
# Utilizo políticas de acceso a los repositorios
AuthzSVNAccessFile /etc/subversion/acceso
El significado de estas lineas es el siguiente, lo primero indicamos el nombre por el que se accederá en nuestro browser, es decir, la ruta aquí será : http://direccionio/svn/
La sentencia SVNParentPath nos indica el lugar donde están nuestros repositorios, es usada también en caso de tener varios repositorios, si solo tenemos un repositorio pues usaremos SVNPath, lo que no se debe hacer es usar ambas sentencias.
Hay una linea opcional, y es el uso de una plantilla xsl, si queremos que el svn tenga un aspecto mas presentable.
El siguiente grupo de lineas tratan sobre el mecanismos de autorización y el lugar donde se encuentra el archivo de usuarios, el cual fue el que creamos anteriormente, el nombre y el lugar que hayamos decidido es el que colocaremos en la ruta.
Posteriormente le indicamos al svn que solo aquellos usuarios registrados son los que podrán acceder, es decir que no se permiten accesos anónimos.
Por ultimo indica el nombre y el lugar del archivo que creamos para definir los roles y su permisología.
Una vez hecho esto, guardamos el archivo y reiniciamos el apache, podremos acceder al browser y colocar la dirección de nuestro repositorio, si todo salio bien, nos pedirá el nombre y la clave de acceso del usuario, al verificarla lo que nos mostrará será un mensaje indicando el numero de revisión, en este caso si el repositorio solo se ha creado y no se le han cargado archivos indicará Revision 0.
El alcance de este How-To es solo de la instalación y configuración del SVN, los comandos para su uso los pueden conseguir en múltiples sitios, he incluso recomiendo también el libro de SVN de O'Reilly el cual se consigue gratis, en español o en ingles.
Continua...
5 de Julio, Independencia de Venezuela
Llevaba un tiempo largo sin postear algo por acá, hoy particularmente lo hago porque se celebra el 197 aniversario de la firma del acta independencia de Venezuela , un proceso largo que empezó en el país después de los procesos del 19 de abril de 1810, y en el cual los discursos independentistas fueron tomando cuerpo ante la resistencia de algunos diputados que aún consideraban prematuro el separarse definitivamente de España.
En este primer Congreso de Venezuela estaban representadas las Provincias de Caracas, Cumaná, Barinas, Margarita, Mérida, Barcelona y Trujillo que formaban la Confederación Americana de Venezuela en el Continente Meridional. Las Provincias de Coro, Maracaibo y Guayana estaban bajo dominio español y no estuvieron respresentadas.
Los discursos de Fernando Peñalver, Juan Germán Roscio, Francisco de Miranda, Francisco Javier Yanez, entre otros, en los días que precedieron al 5 de julio, conjuntamente con la participación de miembros de la Junta Patriótica como Simón Bolívar, Miguel Peña y Antonio Muñoz Tébar, dieron lugar al histórico momento donde se votó por la Independencia de Venezuela, de manera casi unánime, y se hizo la proclamación solemne. Una manifestación popular, encabezada por Miranda y Francisco Espejo, recorrió las calles de la ciudad, ondeando banderas y gritando consignas por la libertad.
Esa misma tarde en una reunión vespertina del Congreso se decide que se redacte un documento indicando los motivos y causas que produjeron la Declaración de la Independencia, a cargo de Juan Germán Roscio (diputado) y Francisco Isnardi (secretario), que será aprobado por el congreso días después y presentado al Poder Ejecutivo.
En este mismo congreso se adoptó por primera vez la bandera de Venezuela, utilizando la misma que introdujo Francisco de Miranda en su expedición de 1806, añadiéndole en la franja azul siete estrellas, una por cada provincia representada.
A parte del sentimiento patriótico hacia mi país, hoy como todos los días , al entrar a Google , me encuentro que cambiaron su logo, aludiendo a la independencia de mi país con un Google Doodles, me alegro mucho verlo, y lo agradezco mucho a ellos, pero creo que es deber de nosotros lo venezolanos mostrar al mundo la historia del porque ese día.
Los "Google Doodles" o "garabatos de Google" son los logotipos con ilustraciones hechas a mano que la compañía realiza para celebrar eventos especiales, como el Día de la Tierra, el Año Nuevo y la Navidad. Muchos de estos logos están disponibles en la página de "Logos" del buscador.
Continua...
lunes, 26 de mayo de 2008
Cómo hacer funcionar el puerto USB en VirtualBox?
El asunto es , que aun así, una vez instalado el virtualbox con soporte USB es muy probable que no nos funcione (tal cual como me ocurrió a mi), y esto debido a que simplemente no tenemos habilitado el soporte USB para las maquinas de virtualbox. Sin hacer las modificaciones respectivas , el programa nos lanzará un mensaje de error indicando que no puede conseguir el dispositivo USB.
La solución varía en algunos sistemas, a mi me funciono en Linux Ubuntu Hardy, bueno, primero cerramos el virtualbox y
nos vamos a la consola para saber el identificador de nuestro usuario en el grupo vboxuser:
grep vbox /etc/group
vboxusers:x:125:principal
El primer valor nos indica el grupo de usuario , en este caso es "vboxuser", el valor que nos interesa es el número que nos muestra, el cual es el identificador que necesitaremos, para mi era 125.
Ahora con el valor numérico modificaremos el fstab, esto es una lista de dispositivos que linux carga cuando arranca, asi que tecleamos:
sudo vim /etc/fstab
Una vez dentro, ahi editaremos y colocaremos lo siguiente:
# configuración USB en fstab:
none /proc/bus/usb usbfs devgid=125,devmode=664 0 0
Lo importante aquí, es notar que he colocado en la etiqueta devgid el identificador de mi usuario (125) dependiendo del valor que dé, es el que se coloca aquí.
Para guardar los cambios que hemos hecho con el editor vim, debemos presionar la tecla ESC y después escribimos lo siguiente:
:wq!
Presionamos Enter y listo, que es lo que hemos hecho?, bueno la letra w es el comando en vim para guardar y la letra q es el comando para salir del editor, y para finalizar la linea se le coloca el signo de admiración !, de todas formas es bueno conocerse un poco los comandos de este potente editor, en otro post colocaré una lista de los comando más usados.
Ahora nos vamos a modificar el archivo mountdevsubfs.sh:
sudo vim /etc/init.d/mountdevsubfs.sh
En este archivo primero descomentaremos las lineas que habilitan el uso del USB, simplemente eliminamos el numeral (#) de cada línea desde la que comienza con la instrucción mkdir hasta la que termina con la instrucción mount:
# Magic to make /proc/bus/usb work
#
#mkdir -p /dev/bus/usb/.usbfs
#domount usbfs “” /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
#ln -s .usbfs/devices /dev/bus/usb/devices
#mount –rbind /dev/bus/usb /proc/bus/usb
Después de esto, dejamos una linea en blanco (solo para que se vea bonito y no este todo pegado!) y agregamos el siguiente código, teniendo en cuenta que debemos colocar nuevamente en la etiqueta devgid el numero identificador de nuestro usuario (en mi caso fue 125):
# Vinculo del usbfs para usarlo con Virtual Box
domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev,devgid=125,devmode=664
Y listo, para que nos funcione, reiniciamos la maquina para que cargue estos archivos de nuevo, al ejecutar el virtualbox veremos que estará activada la opcion de dispositivos USB.
Continua...
domingo, 18 de mayo de 2008
El Laboratorio de Google
donde van las cosas, o por los menos algunas.Lo bueno aquí, es hacerle seguimiento a varios de los experimentos, ya que solo algunos son aprobados, otros van y vienen , es decir los sacan de la lista , los mejoran y los vuelven a poner.
Varios servicios que hoy usamos de Google, fueron una vez sacado de este laboratorio, como por ejemplo el famoso y útil Google Maps, el cual hoy en día se encuentra integrado a miles de aplicaciones , widgets de escritorio y en paginas web.
Quien no ha buscado una definición de una palabra con Google Glosario, tan sencillo como poner "define: palabra" , existen muchísimos más que han instalado en su equipo el Google Desktop, para aquellos que manejan un gran cantidad de datos o que tienen todo regado y no saben donde esta cada cosa jaja.
El hecho es que , darse un vueltica por el laboratorio es una experiencia que va más allá de probar una aplicación, ya que el usuario tiene el privilegio de participar aportando ideas o simplemente indicando si le gusto o no. Estos factores son los que harán que el proyecto se le de un carácter de producción y se promocionen para que todo el mundo acceda y lo use.
Hay un experimento bien interesante que es el que permite hacer busquedas sensitivas, es decir, mientras escribimos nuestra consulta nos irá completando con frases siguientes dependiendo de consultas que ya se han hecho previamente y ademas de ello nos lanzara la cantidad de consultas que se han realizado. Ahora , y esto para que sirve??? pues un solo ejemplo, supongamos que tenemos un modelo de tarjeta wifi que no tenemos idea de como instalarla en linux ubuntu, bueno, aqui mientras coloquemos "how to install", nos ira completando con miles de palabras que se han puesto en ese mismo orden, si agregamos "ubuntu" ira haciendo lo mismo , y de esta forma nuestra busqueda va siendo cada vez más especifica e incluso podemos redireccionarla al ver otras opciones que salen en el listado. Lo unico es que por el momento esta disponible solo en ingles y en japones.
Bueno, aqui les dejo el link para que se diviertan un rato:
http://labs.google.es/
Continua...

