<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3316387604535223966</id><updated>2012-02-16T04:41:05.171-08:00</updated><category term='virtualización'/><category term='linux'/><category term='musica'/><category term='cvs'/><category term='gnump3d'/><category term='ntfs'/><category term='servidores'/><category term='discos duros'/><category term='vmware'/><category term='máquina virtual'/><category term='tareas programadas'/><category term='blade center'/><category term='tutorial'/><category term='remote'/><category term='ssh'/><category term='servidor'/><category term='lirc'/><category term='htpc'/><category term='bluetooth'/><category term='xmbc'/><category term='no-ip'/><category term='movil'/><category term='mando a distancia'/><category term='utilidades'/><category term='internet'/><category term='server'/><category term='windows'/><category term='memorias'/><category term='ubuntu'/><category term='cron'/><category term='blogs'/><category term='xen'/><category term='google'/><title type='text'>JMengual</title><subtitle type='html'>el increible mundo de la informatica</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-5000844528647582254</id><published>2010-09-21T01:22:00.001-07:00</published><updated>2010-09-21T04:38:50.395-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='server'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='servidores'/><category scheme='http://www.blogger.com/atom/ns#' term='tareas programadas'/><category scheme='http://www.blogger.com/atom/ns#' term='cron'/><title type='text'>Tareas programadas con Cron</title><content type='html'>Al poco tiempo de empezar a tratar con un servidor Linux te das cuenta de que tarde o temprano vas a utilizar una tarea programada. Puede ser que necesites realizar una copia de seguridad cada X tiempo, vaciar una cola de correos, o simplemente controlar que todo está en su sitio.&lt;br /&gt;&lt;br /&gt;Sabía desde hace tiempo que algún día hablaría con Don Cron. Llevábamos una temporada mirándonos a la cara, con tono desafiante. Aún conociéndole de oídas, me ha impresionado la potencia y las opciones disponibles de este demonio.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Quién es Cron, y donde lo puedo encontrar&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cron se encarga de ejecutar las tareas programadas que se configuren en el sistema. Probablemente, y aunque depende de tu distribución Linux, en &lt;span style="font-style: italic; font-weight: bold; color: rgb(51, 102, 255);"&gt;/etc&lt;/span&gt; encuentres varios directorios llamados &lt;span style="font-style: italic; font-weight: bold; color: rgb(51, 102, 255);"&gt;cron.hourly, cron.daily, cron.weekly, cron.monthly&lt;/span&gt;. En estos directorios se encuentran los scripts que se ejecutan cada hora, cada día, cada semana, etc...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Uso básico de Cron&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Si dejáramos un script en cualquiera de estos directorios se ejecutaría en el momento que proceda. Por ejemplo, si creamos un script que realice una copia de seguridad de nuestros archivos y lo colocamos en &lt;span style="font-weight: bold; font-style: italic; color: rgb(51, 102, 255);"&gt;cron.daily&lt;/span&gt;, este script se ejecutará una vez al día.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;Uso avanzado de Cron&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tal vez el uso de los directorios &lt;span style="font-weight: bold; font-style: italic; color: rgb(51, 102, 255);"&gt;cron.*&lt;/span&gt; no satisface nuestras necesidades de configuración para la tarea que queremos programar. En este caso programaremos las tareas a través del archivo &lt;span style="font-weight: bold; font-style: italic; color: rgb(51, 102, 255);"&gt;crontab&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Esta es, dadas las posibilidades que ofrece, la forma más interesante de utilizar Cron. El archivo en cuestión se encuentra en el directorio &lt;span style="font-weight: bold; font-style: italic; color: rgb(51, 102, 255);"&gt;/etc&lt;/span&gt;, y tiene un formato parecido a este:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);font-size:85%;" &gt;SHELL=/bin/sh&lt;br /&gt;PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin&lt;br /&gt;MAILTO=root&lt;br /&gt;#&lt;br /&gt;# check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly&lt;br /&gt;#&lt;br /&gt;-*/15 * * * *   root  test -x /usr/lib/cron/run-crons &amp;amp;&amp;amp; /usr/lib/cron/run-crons &gt;/dev/null 2&gt;&amp;amp;1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pasemos a explicar cada una de las partes de este archivo.  En primer lugar las primeras cuatro líneas, que contienen variables para Cron.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;SHELL&lt;/span&gt;, la cual nos indica el shell con el que se ejecutarán las órdenes de Cron. En caso de no asignar valor o de no existir la variable, se tomará el shell del usuario que ejecuta Cron.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;PATH&lt;/span&gt;, contiene o indica la ruta a los directorios en los cuales cron  buscará el comando a ejecutar. Este path es distinto al path global del sistema  o del usuario.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;b style="color: rgb(51, 102, 255);"&gt;MAIL TO&lt;/b&gt; es a quien se le envía la salida del comando (si es que este  tiene alguna salida). Cron enviará un correo a quien se especifique en este variable,  es decir, debe ser un usuario válido del sistema o de algún otro sistema.  Si no se especifica, entonces cron enviará el correo al usuario propietario  del comando que se ejecuta.&lt;/p&gt; &lt;p&gt;&lt;b style="color: rgb(51, 102, 255);"&gt;HOME&lt;/b&gt; es el directorio raíz o principal del comando cron, si no se indica  entonces, la raíz será la que se indique en el archivo &lt;span class="t1"&gt;/etc/passwd&lt;/span&gt; correspondiente al usuario que ejecuta cron.&lt;/p&gt;&lt;p&gt;Tras las líneas con las variables entramos en materia, y empezamos a econtrarnos con líneas de ejecución de tareas. cada una de estas líneas tiene un formato parecido a este:&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(51, 102, 255);"&gt;minutos | horas | día-mes | mes | día-semana | usuario | script&lt;/p&gt;&lt;p style="font-weight: bold; color: rgb(51, 102, 255);"&gt;&lt;span style="color: rgb(204, 0, 0); font-weight: normal;"&gt;40 * * * * root /etc/scripts/tareaProgramada1.sh&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;En la primera parte de la linea tenemos la definición del momento en que se ejecutará la tarea.En caso de tener un &lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;*&lt;/span&gt; en alguno de los campos, significará que se ejecutará la tarea para cada uno de los valores posibles. De esta forma en el ejemplo el script se ejecutará en el minuto 40 de cada hora, cada día de cada semana de cada mes.&lt;/p&gt;&lt;p&gt;El siguiente campo de la línea especifica el usuario que ejecutará el script, y después tenemos la ruta donde tenemos el script que queremos ejecutar. Tendremos que tener en cuenta que el script tiene asignado el permiso de ejecución, y que el usuario que lo tiene que ejecutar tiene permisos sobre el archivo.&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Configuración del tiempo de ejecución&lt;/span&gt;&lt;/p&gt;Una de las ventajas de Cron es la posibilidad de configurar el momento exacto en que se ejecutará una tarea. Las posibilidades son prácticamente infinitas, por lo que vamos a ver unos ejemplos que nos harán tenerlo más claro.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-&lt;/span&gt; Aparte de ejecutar una tarea en un momento concreto, también podemos ejecutarla cada X tiempo. Para esto podemos utilizar la&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span style="color: rgb(51, 102, 255); font-weight: bold; font-style: italic;"&gt;/&lt;/span&gt;. Veamos un ejemplo.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;15 */2 2/3 * *      root  /etc/scripts/tareaProgramada1.sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En este ejemplo el script se ejecutará en el minuto 15 de cada 2 horas, cada 3 días a partir del día 2 de cada mes. La primera ejecución será el próximo día 2 a las 0:15. Hay que tener en cuenta que si no especificamos el incio para el periodo de repetición Cron tendrá en cuenta el primer valor válido. Con &lt;span style="color: rgb(204, 0, 0);"&gt;*/2&lt;/span&gt; se tomará como inicio la hora cero. Con &lt;span style="color: rgb(204, 0, 0);"&gt;2/3&lt;/span&gt; se contará de tres en tres, a partir del 2.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-&lt;/span&gt; En el caso de que lo necesitemos, también podemos especificar los valores concretos en que queremos configurar la ejecución de la tarea. Utilizando la &lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;,&lt;/span&gt; podemos dar varios valores a un campo del tiempo de ejecución.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;15 7,14 * * *    root  /etc/scripts/tareaProgramada1.sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La tarea se ejecutará a las 7:15 y las 14:15 de cada día.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-&lt;/span&gt; Podemos también configurar el día de la semana en que se ejecutará la tarea. Nos valdría si lo que queremos es lanzar un proceso muy largo y necesitamos que no haya nadie, por ejemplo el fin de semana. Para el día de la semana podemos utilizar números (del 0 al 7), o con las tres primeras letras del día en inglés. Si se usan numeros hay que tener en cuenta que tanto el 0 como el 7 es el domingo.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;15 7 * * sun      root  /etc/scripts/tareaProgramada1.sh&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;15 7 * * 7    root  /etc/scripts/tareaProgramada1.sh&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;15 7 * * 0   root  /etc/scripts/tareaProgramada1.sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Con estas tres lineas ejecutaremos la tarea a las 7:15 del domingo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; -&lt;/span&gt; Otra opción interesante es configurar un rango de valores para los que se ejecutará la tarea. Utilizaremos el &lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;-&lt;/span&gt; entre dos valores para especificar un rango. Vamos con un ejemplo.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;15 7-14 * * 7    root  /etc/scripts/tareaProgramada1.sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En el ejemplo ejecutaremos la tarea los domingos, en el minuto 15 de 7 a 14 horas. La primera ejecución será a las 7:15 y la última a las 14:15.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;-&lt;/span&gt; Ahora, si combinamos las diferentes formar de configurar una tarea, podemos ver casos como este:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;*/15 8-18/2 10 5 sat    root  /etc/scripts/tareaProgramada1.sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La tarea se ejecutará cada 15 minutos, entre las 8 de la mañana y las 6 de la tarde cada dos horas, el día 10 de mayo, siempre que ese día sea sábado.&lt;br /&gt;&lt;br /&gt;Este ejemplo sirve para entender que las tareas se ejecutarán sólo si se cumple cada una de las condiciones especificadas. Es posible que tarde años en llegar un sábado 10 de mayo (el último fue en 2008), por lo que hay que tener bastante claro que las condiciones que configuremos tengan algo de sentido.&lt;br /&gt;&lt;br /&gt;Ahora ya sabemos programar tareas en nuestro Linux, y lo mejor de todo es que esto es sólo una parte de las cosas que puede hacer Cron. Seguro que volvemos a vernos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-5000844528647582254?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/5000844528647582254/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2010/09/tareas-programadas-con-cron.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/5000844528647582254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/5000844528647582254'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2010/09/tareas-programadas-con-cron.html' title='Tareas programadas con Cron'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-6776951850601938559</id><published>2010-06-23T02:33:00.000-07:00</published><updated>2010-06-23T02:48:43.903-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virtualización'/><category scheme='http://www.blogger.com/atom/ns#' term='ssh'/><category scheme='http://www.blogger.com/atom/ns#' term='vmware'/><category scheme='http://www.blogger.com/atom/ns#' term='máquina virtual'/><category scheme='http://www.blogger.com/atom/ns#' term='blade center'/><title type='text'>Acceso SSH a ESXi</title><content type='html'>Después de unos meses tratando con máquinas virtuales y demás, llegó la hora de actuar.&lt;br /&gt;&lt;br /&gt;En su día comenté que la mayor parte del trabajo se centraría en Xen, pero los problemas que han aparecido son acerca de una máquina virtual de VMWare. La cuestión es que de un día para otro la máquina ha dejado de funcionar, y ahora nos toca, almenos, averiguar lo que ha pasado.&lt;br /&gt;&lt;br /&gt;Probablemente en la mayoría de los casos con la consola del ESXi tengamos suficiente, pero cuando las cosas se ponen feas una de nuestras mejores opciones será la de habilitar el acceso al ESXi a través de SSH para poder ver "desde dentro" lo que está pasando. Es tan fácil como:&lt;br /&gt;&lt;br /&gt;Desde la consola de ESXi&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Pulsar ALT + F1 para acceder al  shell. Se muestra una pantalla negra.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;escribir &lt;span style="font-weight: bold;"&gt;unsupported&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;escribir  la contraseña del usuario root del ESXi.&lt;/li&gt;&lt;li&gt;En el directorio /etc  se encuentra el archivo de configuración del servicio inetd, &lt;span style="font-weight: bold;"&gt;inetd.conf&lt;/span&gt;.  Lo editamos.&lt;/li&gt;&lt;li&gt;Descomentamos las lineas del archivo que hacen  referencia al servicio &lt;span style="font-weight: bold;"&gt;SSH&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;Rearrancamos inetd. Podemos&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;A partir de este momento podremos  acceder al ESXi directamente a través de SSH y trabajar sobre él.&lt;br /&gt;&lt;br /&gt;Me ha parecido interesante también la opción de realizar tareas a través del navegador, accediendo a la dirección IP del ESXi, pero esa es otra historia que contaremos en otro momento.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-6776951850601938559?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/6776951850601938559/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2010/06/acceso-ssh-esxi.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/6776951850601938559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/6776951850601938559'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2010/06/acceso-ssh-esxi.html' title='Acceso SSH a ESXi'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-551952465098488637</id><published>2010-03-25T09:20:00.001-07:00</published><updated>2010-04-06T06:44:48.000-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='utilidades'/><category scheme='http://www.blogger.com/atom/ns#' term='memorias'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='discos duros'/><title type='text'>Partir una memoria usb flash</title><content type='html'>Como no paro de tener problemas con los discos duros (gracias windows,  gracias subidas de tensión) he tenido que utilizar mucho más de lo que  me gustaría ese gran programa llamado &lt;a href="http://www.dposoft.net/"&gt;HDD Regenerator&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;La  utilidad de esta aplicación está fuera de toda duda, me ha ayudado a  seguir utilizando discos que habían empezado a dar errores serios, pero  este no es el tema. La cuestión es que las últimas veces que he  utilizado esta aplicación ha sido desde Windows,  recuperando el segundo  disco del sistema.&lt;br /&gt;&lt;br /&gt;Ésta última vez me tocó utilizarlo en el disco  principal, por lo que no era posible ejecutar desde Windows, al estar  cargado el SO en ese mismo disco y la aplicación necesitar acceso total  al mismo. Ante este panorama me tocó decidir si grabar un CD y arrancar  desde él o utilizar mi querido pendrive (8GB) para ello.&lt;br /&gt;&lt;br /&gt;HDD  Regenerator tiene la opción de crear un disco USB de arranque, por lo  que es algo automático y muy fácil. Tan sólo tuve que mover los archivos  que tenía en la memoria para recuperarlos después. El problema vino  cuando en vez de 8GB el pendrive sólo tenía una capacidad de  1,92GB.  ¿Qué ha pasado?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HO0IHo0NR3o/S6uRfOKHxjI/AAAAAAAAAHk/xspb53B8yKA/s1600/HDDReg1.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 38px;" src="http://1.bp.blogspot.com/_HO0IHo0NR3o/S6uRfOKHxjI/AAAAAAAAAHk/xspb53B8yKA/s400/HDDReg1.JPG" alt="" id="BLOGGER_PHOTO_ID_5452611739424638514" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Al parecer HDDRegenerator sólo necesitaba 1,92GB de espacio, por lo que creó una partición con ese tamaño, dejando sin asignar el resto de la capacidad de la memoria.  A pesar de no fiarme del particionador de Windows, traté de eliminar la partición y crear una nueva con el máximo espacio disponible. &lt;span style="font-weight: bold;"&gt;No pudo ser&lt;/span&gt;, claro.&lt;br /&gt;&lt;br /&gt;En este momento es cuando me acordé de una aplicación que ya había utilizado antes para trabajar sobre memorias flash. Se llama SwissKnife, y a pesar de ser freeware vale su peso en oro.&lt;br /&gt;&lt;br /&gt;Recuperar el estado inicial de la memoria es tan fácil como hacer un formateo completo (full) del mismo, con con que tendremos una sola partición con el total del tamaño disponible.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HO0IHo0NR3o/S6uQ72Lky3I/AAAAAAAAAHU/ZGDyY2Ad3Js/s1600/SwissKnife1.JPG"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 290px;" src="http://1.bp.blogspot.com/_HO0IHo0NR3o/S6uQ72Lky3I/AAAAAAAAAHU/ZGDyY2Ad3Js/s400/SwissKnife1.JPG" alt="" id="BLOGGER_PHOTO_ID_5452611131692862322" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HO0IHo0NR3o/S6uRnkY5XqI/AAAAAAAAAHs/0ZMHl1a_U5g/s1600/HDDReg2.JPG"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 37px;" src="http://1.bp.blogspot.com/_HO0IHo0NR3o/S6uRnkY5XqI/AAAAAAAAAHs/0ZMHl1a_U5g/s400/HDDReg2.JPG" alt="" id="BLOGGER_PHOTO_ID_5452611882831142562" border="0" /&gt;&lt;/a&gt;SwissKnife ofrece más características,  por lo que me parece un software muy recomendable si tenemos una memoria USB de un tamaño considerable. En la &lt;a href="http://www.compuapps.com/download/swissknife/swissknife.htm"&gt;página de descarga&lt;/a&gt; se puede obtener más información acerca de esta aplicación. A mi, de momento, me ha salvado de darme de cabezazos, o de reiniciar para arrancar en Linux, que ya es bastante.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-551952465098488637?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/551952465098488637/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2010/03/particiones-en-memorias-flash.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/551952465098488637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/551952465098488637'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2010/03/particiones-en-memorias-flash.html' title='Partir una memoria usb flash'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HO0IHo0NR3o/S6uRfOKHxjI/AAAAAAAAAHk/xspb53B8yKA/s72-c/HDDReg1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-4509936240518620095</id><published>2010-02-18T04:23:00.000-08:00</published><updated>2010-02-18T04:33:07.718-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='server'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='virtualización'/><category scheme='http://www.blogger.com/atom/ns#' term='servidores'/><category scheme='http://www.blogger.com/atom/ns#' term='xen'/><title type='text'>Virtualicemos el mundo</title><content type='html'>Hace tiempo que no escribo en el blog, y la verdad es que si lo hago es porque se trata de un tema más que interesante: la virtualización.&lt;br /&gt;&lt;br /&gt;El caso es que hace no mucho he empezado a pelearme y experimentar con &lt;a href="http://xen.org/"&gt;Xen&lt;/a&gt;, tras un fugaz paso por &lt;a href="http://www.vmware.com/es/"&gt;VMware&lt;/a&gt;. El resultado no puede ser más satisfactorio, aunque como es normal, al ser novato, se me escapan miles de cosas que se aprenden poco a poco.&lt;br /&gt;&lt;br /&gt;Espero que poco a poco tenga la posibilidad de escribir en el blog las cosas que vaya aprendiendo. De momento parece que Xen y yo vamos a ser amigos...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-4509936240518620095?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/4509936240518620095/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2010/02/virtualicemos-el-mundo.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/4509936240518620095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/4509936240518620095'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2010/02/virtualicemos-el-mundo.html' title='Virtualicemos el mundo'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-2307883501715855546</id><published>2009-09-10T07:32:00.000-07:00</published><updated>2009-09-10T10:28:57.776-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bluetooth'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='movil'/><title type='text'>Bluetooth y Linux se llama BlueProximity</title><content type='html'>Antes de empezar nos aseguraremos de que tenemos el material necesario, que no es más que un &lt;u&gt;dispositivo Bluetooth&lt;/u&gt; (por ejemplo uno USB), un &lt;u&gt;teléfono móvil&lt;/u&gt;, y nuestra distribución Linux preferida, en este caso &lt;u&gt;Ubuntu 9.04&lt;/u&gt;.&lt;br /&gt;&lt;br /&gt;El primer paso será comprobar que nuestro adaptador Bluetooth funciona correctamente, tan fácil como conectarlo y ver que en la barra de tareas de nuestro Ubuntu aparece el logo del Bluetooth.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Instalación&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Como es la primera vez que oimos hablar de BlueProximity, lo más probable es que no tengamos instalados ni la aplicación ni los paquetes que se necesitan para que funcione. Para instalar abriremos el gestor de Paquetes &lt;b&gt;Synaptic&lt;/b&gt; que nos facilitará el trabajo, de paso que resolverá las dependencias con otros paquetes que se necesiten.&lt;br /&gt;&lt;br /&gt;Tan sólo buscando por blueproximity nos aparecerá la aplicación a instalar y el sistema se encargará de instalar también todo lo necesario para que funcione al 100%.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Configuración&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Después de instalar ejecutaremos BlueProximity, lo que nos mostrará otro icono de Bluetooth en la barra de tareas, pero este con una llave, que en principio será de color rojo.&lt;br /&gt;&lt;br /&gt;Abrimos la aplicación y nos encontramos con una ventana como ésta.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/Pantallazo-PreferenciasdeBluePro-3.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/Pantallazo-PreferenciasdeBluePro-3.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Para emparejar el adaptador USB con nuestro móvil exploraremos en busca de dispositivos con el Bluetooth conectado &lt;img src="http://www.todohtpc.com/components/com_kunena/template/default_ex_moof/images/spanish/emoticons/wassat.png" alt="" style="border: 0px none ; vertical-align: middle;" /&gt; y seleccionaremos el que se corresponda con el nuestro.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/Pantallazo-PreferenciasdeBluePro-2.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/Pantallazo-PreferenciasdeBluePro-2.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ahora que tenemos seleccionado el móvil con el que queremos relacionar nuestro equipo, lo seleccionamos y pulsamos &lt;i&gt;Usar el dispositivo seleccionado&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;Si en el móvil no notamos ningún tipo de reacción, podemos buscar canales en el dispositivo, lo que irá por cada uno de los puertos del móvil para encontrar un canal disponible. En este paso seleccionaremos un canal y tendremos que configurar una clave de paso para emparejar los dispositivos. Ahora si, nuestro móvil nos preguntará por esa clave, y al confirmarla ya podremos utilizar BlueProximity con normalidad.&lt;br /&gt;&lt;br /&gt;Ahora tenemos que configurar las distancias, tanto para el bloqueo como para el desbloqueo. Esto se llama así por la finalidad inical de BlueProximity que os contaba antes, que era la de bloquear/desbloquear el PC. Como es normal, podemos decidir estos parámetros, aquí tenemos la pantalla para hacerlo:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/Pantallazo-PreferenciasdeBluePro-1.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/Pantallazo-PreferenciasdeBluePro-1.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Todavía más importante que las distancias en las que reaccionará nuestro HTPC a la presencia de nuestro móvil, es que hará cuando lo detecte o deje de detectar. Podremos configurar un comando que queramos para cada una de las acciones.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/Pantallazo-PreferenciasdeBlueProxim.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/Pantallazo-PreferenciasdeBlueProxim.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Para hacer una prueba rápida podemos escribir &lt;span style="color: rgb(0, 0, 255);"&gt;firefox &lt;a href="http://www.todohtpc.com/" target="_blank" rel="nofollow"&gt;www.todohtpc.com&lt;/a&gt;&lt;/span&gt; en el comando de desbloqueo, y ver como se abre un navegador con nuestra página preferida al acercarnos al adaptador Bluetooth. Ya tenemos BlueProximity funcionando al 100% !!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-2307883501715855546?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/2307883501715855546/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2009/09/blueproximity.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/2307883501715855546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/2307883501715855546'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2009/09/blueproximity.html' title='Bluetooth y Linux se llama BlueProximity'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-4139407900269135746</id><published>2009-09-10T05:29:00.000-07:00</published><updated>2009-09-10T05:40:38.570-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><category scheme='http://www.blogger.com/atom/ns#' term='xmbc'/><title type='text'>Descomprimir video por hardware en Linux: VDPAU</title><content type='html'>Una de las finalidades de nuestro&lt;a href="http://jmengual.blogspot.com/2008/11/el-pc-sale-del-cuarto.html"&gt; HTPC&lt;/a&gt; Linux será la de poder ver videos en alta definición. Hace tiempo que oimos que las tarjetas gráficas pueden descomprimir el video liberando al procesador de tanta carga. Si tenemos un procesador lo suficientemente potente como para hacer el trabajo él sólo, tal vez no nos hayamos parado a pensar en utilizar esta característica de la tarjeta gráfica. Si lo que tenemos es un equipo con una gráfica capaz de descomprimir el vídeo y un procesador no tan potente, el hecho de utilizar la descompresión por hardware puede ser la diferencia entre poder y no poder ver una película en alta definición. Sea cual sea el caso, vamos a ver como se hace.&lt;br /&gt;&lt;br /&gt;Lo primero que tenemos que saber es que tenemos entre manos, y se trata de VDPAU &lt;span style="font-weight: bold;"&gt;(Video Decode and Presentation API for Unix)&lt;/span&gt;, un API desarrollada por Nvidia para decodificar el video en las tarjetas de la marca. En &lt;a href="http://en.wikipedia.org/wiki/VDPAU" rel="nofollow" target="_blank"&gt;este enlace&lt;/a&gt; se pueden ver las características de VDPAU y las tarjetas gráficas y aplicaciones compatibles.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Entorno de pruebas&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Para hacer las pruebas hemos utilizado una instalación básica de &lt;a href="http://www.ubuntu.com/GetUbuntu/download"&gt;Ubuntu 9.04&lt;/a&gt; en un equipo con un procesador de doble núcleo 5200+ de AMD, 2GB de RAM y una tarjeta gráfica 8600GT de Nvidia. La película elegida es Transformers en una resolución 1080p en formato &lt;a href="http://es.wikipedia.org/wiki/H.264/MPEG-4_AVC"&gt;H.264&lt;/a&gt; (.mkv).&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Instalación&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Como vamos a trabajar sobre una versión recien instalada de Ubuntu en principio no estaremos utilizando los drivers de la tarjeta gráfica, ya que no son software libre, por lo que tendremos que autorizar al sitema a ello. En la sección de Administración podemos activar los controladores. Tendremos que reiniciar para que se apliquen los cambios. Tras el reinicio podremos ver en Administración como han cambiado los drivers de video y son ahora de Nvidia. Probablemente tengamos disponible también el panel de control de Nvidia.&lt;br /&gt;&lt;br /&gt;Ahora pasamos a instalar el API de VDPAU, dirigiéndonos al gestor de paquetes (Administración/Gestor de paquetes Synaptic) y buscando en el campo de texto por VDPAU. Obtendremos resultados del estilo &lt;b&gt;nvidia-180-libvdpau-dev&lt;/b&gt;. Instalamos el paquete y pasamos a la instalación de un reproductor compatible con VDPAU: Mplayer.&lt;br /&gt;&lt;br /&gt;Para instalar Mplayer de forma más sencilla abriremos una consola e iremos ejecutando los siguientes comandos de uno en uno. Cada uno de ellos puede tardar algo de tiempo en terminar, por lo que tendremos que tener algo de paciencia. El último de los comandos tendremos que ejecutarlo como root, por lo que nos pedirá la contraseña de superusuario del sistema.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;$sudo apt-get install build-essential subversion&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt; $sudo apt-get build-dep mplayer&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt; $svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt; $ cd $HOME/mplayer&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt; $ ./configure&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt; $ make&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt; $ sudo make install&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En el momento en que tengamos instalado Mplayer ya podremos utilizar VDPAU en la visualización a través del reproductor. Calculamos que todo el proceso de instalación puede tardar entre 20-30 minutos, por lo que además de fácil es bastante rápido empezar a ver videos en alta definición en nuestro Linux. Pero ¿Habrá valido la pena tanto esfuerzo? Vamos a ver los resultados.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Pruebas realizadas&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Las dos primera imágenes muestran la llamada a Mplayer sin utilizar VDPAU en dos escenas diferentes de la película. Podemos observar en el rendimiento del procesador que siempre almenos uno de los dos núcleos sobrepasa el 50% en el mejor de los casos. Vemos ahora las ventajas que nos ofrece VDPAU.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/PantallaSinVDPAU.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/PantallaSinVDPAU.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/PantallaSinVDPAU2.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/PantallaSinVDPAU2.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;En estas dos capturas de las mismas escenas que las anteriores, podemos ver que el rendimiento necesario para reproducir el archivo es muy inferior. Salvo algunos picos en la carga, ambos núcleos del procesador se mantienen siempre por debajo del 50%, incluso llegando a quedarse en algún momento en el 0% uno de ellos.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/PantallaVDPAU1.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/PantallaVDPAU1.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/PantallaVDPAU2.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/PantallaVDPAU2.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Las ventajas son muy importantes utilizando VDPAU, por lo que es muy recomendable si disponemos de una gráfica compatible.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Xbmc y VDPAU&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Como nuestro equipo es un &lt;a href="http://jmengual.blogspot.com/2008/11/el-pc-sale-del-cuarto.html"&gt;HTPC&lt;/a&gt;, no podemos pasar por alto que los archivos de video no se ejecutarán directamente a través del reproductor, sino de un mediacenter. Dado que Xbmc es compatible con VDPAU, vamos a ver como configurarlo para que haga uso del API y la mejora en el rendimiento también a través de este famoso mediacenter.&lt;br /&gt;&lt;br /&gt;Para utilizar VDPAU tan sólo tenemos que dirigirnos a la sección de ajustes de reproductor de Xbmc (Settings/Video/Player) y seleccionar Render method como VDPAU. Así de fácil.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/ConfigXbmcVDPAU.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/ConfigXbmcVDPAU.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Las mejoras siguen siendo notables reproduciendo desde Xbmc.&lt;br /&gt;&lt;br /&gt;Sin VDPAU:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/PantallaXbmcSinVDPAU.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/PantallaXbmcSinVDPAU.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Con VDPAU:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://i670.photobucket.com/albums/vv62/juanma451/PantallaXbmcVDPAU.png" rel="lightbox"&gt;&lt;img src="http://i670.photobucket.com/albums/vv62/juanma451/PantallaXbmcVDPAU.png" style="max-width: 405px;" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Conclusión&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Para terminar decir simplemente que, teniendo en cuenta lo que ganamos y que no hace falta entrar en configuraciones complejas para obtener resultados... &lt;span style="color: rgb(0, 153, 0);"&gt;¿Que haces que no aceleras el video por hardware?.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-4139407900269135746?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/4139407900269135746/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2009/09/descomprimir-video-por-hardware-en.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/4139407900269135746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/4139407900269135746'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2009/09/descomprimir-video-por-hardware-en.html' title='Descomprimir video por hardware en Linux: VDPAU'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-6501647302300461995</id><published>2009-07-09T23:20:00.000-07:00</published><updated>2009-10-07T09:20:02.704-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='remote'/><category scheme='http://www.blogger.com/atom/ns#' term='lirc'/><category scheme='http://www.blogger.com/atom/ns#' term='mando a distancia'/><title type='text'>Lirc y el control a distancia</title><content type='html'>Esta entrada tiene algo de especial por varias razones, una es que hacía algún tiempo que no escribía en el blog, y la otra es que (por fin!) me he puesto en serio con la configuración del mando a distancia en mi Linux. Culpa de esto la tiene DuKKon, ya que en &lt;a href="http://dukkon.blogspot.com/"&gt;su blog&lt;/a&gt; leí un post sobre Moovida en la que se hacía referencia a la configuración del mando, lo que me animó a retomar esta deuda pendiente que tenía.&lt;br /&gt;&lt;br /&gt;Primero explicaremos cómo funciona el mapeo de teclas para el mando, suponiendo que tenemos a nuestra disposición un mando compatible y que el sistema haya reconocido. Sinceramente no creo que haya problemas con esto, ya que para las pruebas tengo el mando de la Avermedia Studio 203 que configuramos allá por febrero para ver la tele en Linux.&lt;br /&gt;&lt;br /&gt;Las aplicaciones en las que nos basaremos para utilizar el mando serán, básicamente, irexec e irxevent. La primera de ellas ejecutará comandos asociados a botones en el mando, y la seguna ejecutará eventos, como por ejemplo cualquiera de las teclas o combinaciones de teclas del teclado.&lt;br /&gt;&lt;br /&gt;Para este ejemplo hemos utilizado Ubuntu 9.04 con un mando y receptor que el sistema ya había detectado, concretamente la Avermedia AverTv Studio que utilizamos para ver la tele en Linux.&lt;br /&gt;&lt;br /&gt;Utilizaremos &lt;a href="http://www.lirc.org/" rel="nofollow" target="_blank"&gt;Lirc&lt;/a&gt; (Linux Infrared Remote Control) el cual podemos instalar desde el gestor de paquetes, o visitanto el sitio web Oficial &lt;a href="http://www.lirc.org/" rel="nofollow" target="_blank"&gt;www.lirc.org&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Para ver las señales que nuestro mando está enviando al sistema podemos utilizar el comando &lt;b&gt;irw&lt;/b&gt;, que nos mostrará en la consola las teclas que vayamos pulsando.&lt;br /&gt;&lt;br /&gt;&lt;div class="fbcode" style="width: 450px;"&gt;&lt;table style="width: 253px; height: 187px;" border="0" cellpadding="3" cellspacing="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Código: &lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr /&gt;&lt;code class="php"&gt;juanma@juanma:~$irw&lt;br /&gt;193 0 KEY_CHANNELDOWN event6&lt;br /&gt;174 0 KEY_ZOOM event6&lt;br /&gt;192 0 KEY_CHANNELUP event6&lt;br /&gt;73 0 KEY_VOLUMEUP event6&lt;br /&gt;72 0 KEY_VOLUMEDOWN event6&lt;/code&gt;&lt;hr /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br /&gt;Ahora que sabemos que el mando envía señales a nuestro sistema, trataremos que el sistema responda a estas señales de la forma que nosotros queramos, para ello editaremos el archivo &lt;b&gt;.lircrc&lt;/b&gt; que se encuentra oculto en nuestro directorio home. Si el archivo no existe, lo crearemos con nuestro editor de textos favorito.&lt;br /&gt;&lt;br /&gt;Lirc buscará en este archivo los comandos a realizar para cada tecla que tengamos mapeada del mando. Para convertir las pulsaciones del mando en comandos o en órdenes para nuestro HTPC podemos hacerlo de dos formas diferentes y compatibles, a través de &lt;b&gt;irexec&lt;/b&gt; o de &lt;b&gt;irxevent&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Irexec&lt;/b&gt; ejecutará el comando que configuremos como si lo hicieramos desde la consola, por el contrario &lt;b&gt;irxevent&lt;/b&gt; ejecutará una acción concreto, como por ejemplo pulsaciones en el teclado, que nos serán muy útiles para configurar el comportamiento de nuestro mando en cada programa que vayamos a utilizar. Ambos buscarán en el archivo &lt;b&gt;.lircrc&lt;/b&gt; de nuestro directorio home las acciones para cada tecla.&lt;br /&gt;&lt;br /&gt;El ejemplo que presentamos está configurado para arrancar y manejar XBMC con el mando, tal vez necesiteis configurar otro programa, pero creo este caso servirá para ver cómo funciona. Y a partir de ahí ajustar la configuración a las necesidades de cada uno.&lt;br /&gt;&lt;br /&gt;Para arrancar XBMC con el mando en cualquier momento, utiizaremos una orden para irexec.&lt;br /&gt;&lt;br /&gt;&lt;div class="fbcode" style="width: 450px;"&gt;&lt;table border="0" cellpadding="3" cellspacing="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Código: &lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr /&gt;&lt;code class="php"&gt;begin&lt;br /&gt;prog = irexec&lt;br /&gt;button = KEY_POWER&lt;br /&gt;config = exec xbmc --fullscreen&lt;br /&gt;end&lt;/code&gt;&lt;hr /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Como veis el formato del archivo no tiene mucho secreto, sólo tendremos que saber el botón al que queremos relacionar la acción (utilizando &lt;b&gt;irw&lt;/b&gt; de nuevo) y el comando a ejecutar. Tendremos en cuenta que cada vez que pulsemos esta tecla estaremos ejecutando el comando, incluso cuando estemos utilizando XBMC, por lo que dejaremos esta tecla sólo para arrancar el programa.&lt;br /&gt;&lt;br /&gt;Ahora vamos con un ejemplo para emular las teclas con las que navegaremos por XBMC.&lt;br /&gt;&lt;br /&gt;&lt;div class="fbcode" style="width: 450px;"&gt;&lt;table style="width: 280px; height: 245px;" border="0" cellpadding="3" cellspacing="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Código: &lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr /&gt;&lt;code class="php"&gt;begin&lt;br /&gt;prog = irxevent&lt;br /&gt;button = KEY_CHANNELUP&lt;br /&gt;config = Key Up CurrentWindow&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;prog = irxevent&lt;br /&gt;button = KEY_CHANNELDOWN&lt;br /&gt;config = Key Down CurrentWindow&lt;br /&gt;end&lt;br /&gt;&lt;/code&gt;&lt;hr /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;De esta forma cuando pulsemos las teclas de canal arriba/canal abajo estaremos mandando las teclas de arriba/abajo del teclado, para el programa que estemos utilizando en ese momento. Tendremos en cuenta que estamos mandando estas pulsaciones a irxevent, por lo que esta configuración nos valdrá para otros programas, no sólo para XBMC. Además podemos programar acciones diferentes cuando la pulsación de la tecla se repite, muy útil si queremos que se ejecute una acción diferente cuando detectamos una pulsación larga. Además las pulsaciones pueden enviar acciones diferentes dependiendo del programa que estemos ejecutando.&lt;br /&gt;&lt;br /&gt;Para completar la configuración podremos definir las teclas para seleccionar un punto de menú, ir atrás, izquierda, derecha, etc... Podemos ver las teclas que podemos mandar a &lt;b&gt;irxevent&lt;/b&gt; en &lt;a href="http://www.wh9.tu-dresden.de/%7Eheinrich/lirc/irxevent/irxevent.keys" rel="nofollow" target="_blank"&gt;irxevents.keys&lt;/a&gt;. Incluso podemos mandar combinaciones de teclas.&lt;br /&gt;&lt;br /&gt;Si vamos a configurar más de un programa con irxevent podemos crear un directorio .lirc en nuestro /home donde guardar el archivo de configuración de cada programa e incluir los archivos en .lircrc de esta forma:&lt;br /&gt;&lt;br /&gt;&lt;div class="fbcode" style="width: 450px;"&gt;&lt;table border="0" cellpadding="3" cellspacing="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Código: &lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;hr /&gt;&lt;code class="php"&gt;include /home/juanma/.lirc/xmbc&lt;/code&gt;&lt;hr /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Conclusión&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Como pasa siempre en Linux, las opciones de configuración son casi infinitas, por lo que la calidad de nuestra configuración dependerá de cuanto afinemos las acciones del mando. Pero tenemos la posibilidad de controlar al completo nuestro sistema desde el mando a distancia, así como cualquier programa que vayamos a utilizar.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-6501647302300461995?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/6501647302300461995/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2009/07/lirc-y-el-control-distancia.html#comment-form' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/6501647302300461995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/6501647302300461995'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2009/07/lirc-y-el-control-distancia.html' title='Lirc y el control a distancia'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-893028928427234466</id><published>2008-12-10T11:27:00.000-08:00</published><updated>2008-12-11T04:48:11.550-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><title type='text'>Televisión y Linux</title><content type='html'>Si tienes un Linux y una tarjeta sintonizadora de televisión, probablemente estarás pensando en cómo ver la tele igual que lo harías en Windows.&lt;br /&gt;&lt;br /&gt;Aunque en la mayoría de los casos los drivers y apliaciones necesarias para usar nuestro hardware vienen pensados para que los utilicemos en Windows, vamos a ver lo fácil que es instalar y utilizar nuestra sintonizadora en Linux, concretamente una Avermedia AverTV 203 en KUbuntu.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 102, 0);font-size:130%;" &gt;Detección de la tarjeta&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El hecho de que nuestra capturadora utilice el chip Bt878 nos facilitará el proceso, ya que es un chip bastante usual en las sintonizadoras de hace algún tiempo. En nuestro caso el sistema reconoce nuestra capturadora automáticamente, aunque sea con otro nombre. Utilizaremos el comando &lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;$ lspci&lt;/span&gt; para listar los dispositivos conectados por PCI a nuestra placa. Y el sistema nos devolverá entradas de este tipo:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);font-family:courier new;font-size:100%;"  &gt;02:08.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)&lt;/span&gt;&lt;span style="color: rgb(0, 0, 153);font-family:courier new;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);font-family:courier new;font-size:100%;"  &gt;02:08.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Lo que más nos interesa de estos datos es que el sistema reconozca el chip (Bt878)  de nuestra tarjeta. En caso de que tengamos un chip diferente y el sistema no reconozca nuestra tarjeta, tenemos problemas, pero no sin solución.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 102, 0);font-size:130%;" &gt;Posibles problemas&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Si el sistema no ha reconocido automáticamente tu tarjeta, puedes utilizar &lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;modconf&lt;/span&gt; para configurar los módulos que se utilizarán para la tarjeta. Si no lo tienes instalado puedes hacerlo con &lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;$ sudo apt-get install modconf&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;En primer lugar eliminaremos los módulos asociados a la tarjeta para luego añadir los que nos interesen.&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold; color: rgb(204, 0, 0);font-family:courier new;font-size:100%;"  &gt;$ sudo rmmod -f bt878&lt;br /&gt;$ sudo rmmod -f bttv&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;code style="font-weight: bold; color: rgb(204, 0, 0);"&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Si nos devuelve un error porque los módulos no existen, no pasa nada.&lt;br /&gt;Ahora ejecutamos &lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;$modconf&lt;/span&gt; para entrar en la configuración de los módulos y buscamos el módulo Bt878, que se encontrará más o menos en &lt;em&gt;&lt;span style="font-weight: bold;"&gt;kernel/drivers/media/dvb/bt8xx&lt;/span&gt;. &lt;/em&gt;Se nos preguntará si queremos instalar el módulo y aceptamos, pasando como argumentos una línea del siguiente tipo:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;code style="font-weight: bold; color: rgb(0, 0, 153);"&gt;&lt;/code&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;font-size:100%;" &gt;card=xx tuner=xx radio=x remote=&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;x&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Donde deberemos especificar la tarjeta (card) que tenemos y su sintonizador (tuner). Para las opciones radio, remote y pll dependerá de si tenemos o no (0/1) mando a distacia, opción de radio, etc... Para saber cuales son los códigos de nuestra tarjeta y del sintonizador lo podemos ver &lt;a href="http://enpc3240.eas.asu.edu/lxr/linux/http/source/Documentation/video4linux/bttv/CARDLIST"&gt;aqui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 0); font-weight: bold;font-size:130%;" &gt;Instalación y configuración&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Como tenemos disponible nuestra tarjeta ahora sólo tenemos que emplear un software que nos permita ver la TV a través de ella. En este caso utilizaremos un programa llamado TvTime.&lt;br /&gt;&lt;br /&gt;Para instalar podemos utilizar el comando &lt;span style="font-weight: bold; color: rgb(153, 0, 0);"&gt;$ apt-get install tvtime&lt;/span&gt; o instalar tvtime desde el gestor de paquetes.&lt;br /&gt;&lt;br /&gt;Abrimos TvTime y lo primero que haremos será ir a la gestión de canales y establecer la &lt;span style="font-weight: bold;"&gt;tabla de frecuencias&lt;/span&gt; a la zona donde nos encontremos, por ejemplo &lt;span style="font-style: italic; font-weight: bold;"&gt;Europa&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Para sintonizar bien los canales activaremos todos los canales y empezaremos a &lt;span style="font-weight: bold;"&gt;escanear canales&lt;/span&gt;. En nuestro caso hemos desactivado la &lt;span style="font-weight: bold;"&gt;detección de señal&lt;/span&gt; para evitar que TvTime descarte los canales con poca señal y asegurarnos de que rastrea todas las frecuencias. Puede ser que tengamos que jugar un poco con los parámetros de TvTime dependiendo de la zona en la que estemos sintonizando.&lt;br /&gt;&lt;br /&gt;Cuando tengamos todas las frecuencias rastreadas tendremos canales que no se ven mezclados con los canales que nos interesan. Para organizar la lista de canales editaremos el archivo &lt;span style="font-style: italic; font-weight: bold;"&gt;stationlist.xml&lt;/span&gt; que encontraremos en el directorio oculto &lt;span style="font-style: italic;"&gt;.tvtime&lt;/span&gt; de nuestro directorio personal. Este archivo tendrá un formato parecido a este:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center; color: rgb(0, 0, 153);"&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);font-family:courier new;" &gt;station name="La primera" active="1" position="1" band="VHF E2-E12" channel="E10" finetune="0" norm="PAL" audio="auto"&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-weight: bold; color: rgb(204, 102, 0);font-family:courier new;" &gt;    &lt;/span&gt;&lt;br /&gt;Donde cada linea con la etiqueta &lt;span style="font-style: italic; font-weight: bold;"&gt;station&lt;/span&gt; es un canal de la lista. Para identificar los canales que nos interesan desde la pantalla de TvTime iremos desactivando los canales que queramos mantener, para luego eliminar del archivo stationlist.xml las entradas que tengan la etiqueta &lt;span style="font-weight: bold;"&gt;active=1&lt;/span&gt;, de forma que nos quedaremos con los canales que antes hemos desactivado, que realmente son los que queremos tener en la lista. Por supuesto cuando tengamos estos canales los volveremos a activar.&lt;br /&gt;&lt;br /&gt;Ahora, con nuestra lista definida podremos organizar nuestros canales de la forma que más nos guste con la etiqueta &lt;span style="font-style: italic; font-weight: bold;"&gt;position&lt;/span&gt;, e incluso ponerles un nombre para identificarlos mejor en la eiqueta &lt;span style="font-style: italic; font-weight: bold;"&gt;name&lt;/span&gt;. A partir de aquí sólo tendremos que disfrutar de nuestra tarjeta sintonizadora.&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-893028928427234466?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/893028928427234466/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/12/televisin-y-linux.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/893028928427234466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/893028928427234466'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/12/televisin-y-linux.html' title='Televisión y Linux'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-8544050543911679995</id><published>2008-12-09T01:07:00.000-08:00</published><updated>2008-12-10T03:04:05.803-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='musica'/><title type='text'>No diga música, diga Amarok</title><content type='html'>La mayoría de los usuarios tenemos nuestra (pequeña o grande) &lt;a href="http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&amp;amp;LEMA=biblioteca"&gt;biblioteca&lt;/a&gt; de música. Pero lo que realmente marca la diferencia a la hora de escucharla no es el que, sino el cómo reproducimos nuestra música.&lt;br /&gt;&lt;br /&gt;Mucha gente conoce Amarok por ser una gran reproductor de música, pero muchos menos lo conocen por haberlo utilizado, dado que hasta hace no mucho era para usuarios exclusivamente de Linux. Hoy en día es uno de los mejores, sino el mejor, de los reproductores que puedes instalar en tu ordenador.&lt;br /&gt;&lt;br /&gt;Con Amarok puedes reproducir la música que tienes en el disco duro, pero además puedes configurar tu reproductor mp3, o escuchar música desde last.fm, emisoras de radio on-line, podcasts, etc...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HO0IHo0NR3o/ST-iCOUZ7EI/AAAAAAAAAF4/NAoEi4iliGk/s1600-h/amarokj.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 201px;" src="http://3.bp.blogspot.com/_HO0IHo0NR3o/ST-iCOUZ7EI/AAAAAAAAAF4/NAoEi4iliGk/s320/amarokj.png" alt="" id="BLOGGER_PHOTO_ID_5278115447388630082" border="0" /&gt;&lt;/a&gt;La verdad es que si no conoces Amarok, probablemente no conozcas Linux, dado que viene en la instalación de KDE. En cualquier caso, ser usuario de Windows ya no es impedimento para no disfrutar del gran Amarok, ya que si tienes un Windows también puedes ejecutar aplicaciones de KDE gracias al &lt;a href="http://windows.kde.org/"&gt;KDE Windows Project&lt;/a&gt;. Sin duda una gran noticia para los usuarios potenciales de Linux.&lt;br /&gt;&lt;br /&gt;Yo de momento siento que &lt;span style="font-style: italic;"&gt;nos han robado&lt;/span&gt; algo... para mí Amarok era uno de los argumentos básicos para convencer a alguien de que se pasara a Linux.&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-8544050543911679995?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/8544050543911679995/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/12/no-diga-msica-diga-amarok.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/8544050543911679995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/8544050543911679995'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/12/no-diga-msica-diga-amarok.html' title='No diga música, diga Amarok'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HO0IHo0NR3o/ST-iCOUZ7EI/AAAAAAAAAF4/NAoEi4iliGk/s72-c/amarokj.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-2786238104160859951</id><published>2008-12-03T03:10:00.000-08:00</published><updated>2008-12-10T03:29:44.223-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Expediente Ubuntu: Capítulo 1</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HO0IHo0NR3o/STZ1noQTsuI/AAAAAAAAAFQ/D3DQeuKjZbM/s1600-h/ubuntu-logo02N.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 150px; height: 150px;" src="http://2.bp.blogspot.com/_HO0IHo0NR3o/STZ1noQTsuI/AAAAAAAAAFQ/D3DQeuKjZbM/s200/ubuntu-logo02N.png" alt="" id="BLOGGER_PHOTO_ID_5275533337192280802" border="0" /&gt;&lt;/a&gt;Hace algún tiempo que probé la versión 8.04 de Ubuntu y me dejó una buena impresión. Por casualidades del destino y &lt;a href="http://jmengual.blogspot.com/2008/11/ntfs-y-los-gigas-gratis.html"&gt;el buen hacer de Windows&lt;/a&gt; he vuelto instalar Linux en mi ordenador, esta vez la la 8.10 Intrepid Ibex.&lt;br /&gt;&lt;br /&gt;La primera vez que lo probé me dió alguna sorpresa, como por ejemplo el hecho de que funcionaran las teclas de volumen de mi teclado Microsoft. Aparte de esto tiene la ventaja de que instalar cualquier cosa es todavía más fácil. Un claro ejemplo es el soporte para mp3 y los codecs de video, que en distribuciones como OpenSuse pueden dar al usuario algún que otro dolor de cabeza, en Ubuntu tan sólo hay que permitir que el sistema descargue e instale los paquetes necesarios.&lt;br /&gt;&lt;br /&gt;Además de todo esto, una de las razones para instalar Ubuntu era la de probar MythBuntu, una distribución orientada al uso en &lt;a href="http://jmengual.blogspot.com/2008/11/el-pc-sale-del-cuarto.html"&gt;HTPC&lt;/a&gt;.&lt;br /&gt;Y de nuevo otra grata sorpresa por parte de MythBuntu al comprobar que el mando de la sintonizadora controla el volumen (+/-), y la reproducción de video (play/pause) sin ningún tipo de configuración extraña ni mapeo de teclas.&lt;br /&gt;&lt;br /&gt;Recomendaría Ubuntu a aquellos usuarios que se quieran pasar a Linux sin complicarse demasiado. De momento Ubuntu se lleva una muy buena nota, así como MythBuntu, lo único que no me acaba de convencer es el entorno de escritorio Gnome, aunque es más una cuestión de gustos y supongo que estoy demasiado acostumbrado a KDE en OpenSuse xD. En cualquier caso se puede instalar KDE desde Ubuntu, o directamente instalar KUbuntu, pero eso será en el próximo capítulo...&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-2786238104160859951?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/2786238104160859951/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/12/expediente-ubuntu-captulo-1.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/2786238104160859951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/2786238104160859951'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/12/expediente-ubuntu-captulo-1.html' title='Expediente Ubuntu: Capítulo 1'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HO0IHo0NR3o/STZ1noQTsuI/AAAAAAAAAFQ/D3DQeuKjZbM/s72-c/ubuntu-logo02N.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-7134680757849015377</id><published>2008-11-25T02:01:00.000-08:00</published><updated>2008-12-10T03:29:31.429-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>XP SP3, el nuevo virus de Microsoft</title><content type='html'>Al leer en foros comentarios sobre lo bien que va el SP3 empecé a pensar que mis problemas con este paquete de actualizaciones eran algo puntual. Pero me he puesto a buscar un poco por la red y resulta que hay mucha gente que ha tenido problemas, y serios, con el SP3 de XP.&lt;br /&gt;&lt;br /&gt;He podido leer comentarios de gente a la que misteriosamente le dejan de funcionar los puertos USB, dejan de reconocerse algunos dispositivos de la noche a la mañana, o incluso el sistema se reinicia de forma automática indefinidamente. Estos problemas han aparecido con procesadores AMD y sobre placas ASUS, curiosamente la configuración de mi equipo.&lt;br /&gt;&lt;br /&gt;Aparte de los problemas que he podido leer, a mi el SP3 también me ha dado algún palo inexplicable. Por ejemplo, hace poco formatee y reinstalé el XP en el equipo de un amigo (Asus+Intel), y como acababa de salir el SP3 lo instalé desde las actualizaciones automáticas. El siguiente paso fue instalar el Msn Messenger, última versión, desde el sitio oficial.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HO0IHo0NR3o/SSvSl9f7M4I/AAAAAAAAAFA/abPwM4ywX-Y/s1600-h/antiwindows-full.jpeg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 152px; height: 200px;" src="http://4.bp.blogspot.com/_HO0IHo0NR3o/SSvSl9f7M4I/AAAAAAAAAFA/abPwM4ywX-Y/s200/antiwindows-full.jpeg" alt="" id="BLOGGER_PHOTO_ID_5272539338372756354" border="0" /&gt;&lt;/a&gt;La sorpresa vino cuando, al tratar de instalar, el instalador del Msn me dice que no puede hacerlo porque el equipo no tiene el Windows installer 3.1, por lo que se cierra. Así que descargo el paquete del Windows installer 3.1 desde el sitio de Microsoft, y cuando trato de instalarlo me dice que no puede instalar porque la versión del instalador es más reciente que la 3.1 (¿?). Un error que calificaría de grave, ya que queda claro que las diferentes versiones del instalador no son compatibles entre sí.&lt;br /&gt;&lt;br /&gt;Al final, para poder instalar el messenger, tuve que eliminar el SP3 del ordenador, instalar y volver a poner el SP3. Muy a lo chapuzas, pero así es como Microsoft lo ha hecho.&lt;br /&gt;&lt;br /&gt;Yo recomiendo, y mucho, el paso a un SO linux, el cual tiene &lt;a href="http://www.linux-es.org/distribuciones"&gt;distribuciones&lt;/a&gt; para todo tipo de usuarios, incluidos los más inexpertos.&lt;br /&gt;&lt;br /&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-7134680757849015377?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/7134680757849015377/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/11/xp-sp3-el-nuevo-virus-de-microsoft.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/7134680757849015377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/7134680757849015377'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/xp-sp3-el-nuevo-virus-de-microsoft.html' title='XP SP3, el nuevo virus de Microsoft'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HO0IHo0NR3o/SSvSl9f7M4I/AAAAAAAAAFA/abPwM4ywX-Y/s72-c/antiwindows-full.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-1590108250601342380</id><published>2008-11-20T03:35:00.000-08:00</published><updated>2008-12-10T03:29:20.327-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='servidor'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>El "inicio" de Linux</title><content type='html'>&lt;div style="text-align: justify;"&gt;No me refiero a cómo se creó (eso lo puedes leer &lt;a href="http://es.wikipedia.org/wiki/Linux"&gt;aqui&lt;/a&gt;) , sino al arranque del sistema, y sobretodo cómo añadir comandos para que se ejecuten en el mismo.&lt;br /&gt;&lt;br /&gt;Viene a cuento de que estamos instalando muchos servicios en nuestro servidor, y como es natural, no nos interesa que cada vez que lo arranquemos requiera de nuestra presencia para iniciar los servicios que hemos instalado.&lt;br /&gt;&lt;br /&gt;Para esto vamos a ver un poco, y de forma muy general, lo que hace nuestro servidor en el inicio del sistema.&lt;br /&gt;&lt;br /&gt;Como en Linux todo son archivos, y la mayoría de configuración, encontramos en el directorio &lt;span style="font-weight: bold; color: rgb(153, 0, 0);"&gt;/etc/init.d&lt;/span&gt; un archivo que se llama &lt;span style="font-weight: bold; color: rgb(0, 153, 0);"&gt;boot&lt;/span&gt;, en el que se encuentran los comandos que se ejecutarán en el inicio del sistema. Todo muy lógico.&lt;br /&gt;&lt;br /&gt;Ponernos a editar directamente el archivo boot puede ser peligroso para la integridad de nuestro sistema, ya que si cometemos algún error podríamos hacer que no arranque del todo bien.&lt;br /&gt;Para facilitarnos las cosas existe el archivo &lt;span style="font-weight: bold; color: rgb(0, 153, 0);"&gt;boot.local&lt;/span&gt;, que se ejecutará &lt;span style="font-style: italic;"&gt;inmediatamente después&lt;/span&gt; que &lt;span style="font-weight: bold; color: rgb(0, 153, 0);"&gt;boot&lt;/span&gt;, y aquí es donde añadiremos los comandos que queremos ejecutar al inicio, sin temor a que un error pueda influir en el arranque "básico" del sistema.&lt;br /&gt;&lt;br /&gt;Por poner un ejemplo, podríamos añadir la siguiente linea, para abrir un navegador con esta misma página cargada:&lt;br /&gt;&lt;br /&gt;firefox http://jmengual.blogspot.com&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-1590108250601342380?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/1590108250601342380/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/11/el-inicio-de-linux.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/1590108250601342380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/1590108250601342380'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/el-inicio-de-linux.html' title='El &quot;inicio&quot; de Linux'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-8315688703445124497</id><published>2008-11-13T07:17:00.000-08:00</published><updated>2008-12-10T03:29:01.099-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ntfs'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>NTFS y los gigas gratis</title><content type='html'>&lt;div style="text-align: justify;"&gt;Resulta que el otro dia me tocó realizar una &lt;span style="font-style: italic; color: rgb(102, 0, 204);"&gt;reinstalación periódica&lt;/span&gt; de Windows XP en casa. Como el gran Windows borró el arranque dual que tenía con &lt;a href="http://www.opensuse.org/es/"&gt;OpenSuse,&lt;/a&gt; pensé que era el momento de probar la última versión de &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt;, de la que me habían hablado bastante bien.&lt;br /&gt;&lt;br /&gt;Asi que me dirijo al gestor de discos de XP para formatear la partición EXT3 del Suse y dejarla preparada para el Ubuntu, cuando, para mi sorpresa, los aproximadamente 30GB de espacio que tenía reservados para Suse, se habían convertido en 200 !!&lt;br /&gt;&lt;br /&gt;Haciendo cálculos resulta que mi disco de 320GB (según la BIOS) había pasado mágicamente a tener 500GB, o eso mismo seguía diciendo Windows XP. Como no me lo creía traté de abrir la nueva unidad creada y Windows me da uno de sus avisos, porque la unidad no tenía formato... asi que a formatear tocan, con NTFS, claro.&lt;br /&gt;La cuestión es que Windows me sigue diciendo que tengo 500GB de espacio en el disco, y además si grabo datos en la nueva unidad me deja grabralos sin problemas.&lt;br /&gt;&lt;br /&gt;Una buena oferta de Microsoft para que ampliemos nuestro espacio en disco, pero yo de momento no voy a guardar nada allí dentro, por lo que pueda pasar.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-8315688703445124497?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/8315688703445124497/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/11/ntfs-y-los-gigas-gratis.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/8315688703445124497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/8315688703445124497'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/ntfs-y-los-gigas-gratis.html' title='NTFS y los gigas gratis'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-4112951565405583806</id><published>2008-11-11T01:56:00.000-08:00</published><updated>2008-12-10T03:28:46.910-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='htpc'/><title type='text'>El PC sale del cuarto</title><content type='html'>&lt;div style="text-align: justify;"&gt;El salón de tu casa está en el punto de mira.&lt;br /&gt;&lt;br /&gt;El PC salió del dormitorio para pasearse en forma de portátil, pero ahora viene dispuesto a conquistar el salón en forma de HTPC (Home Theather Personal Computer). Entre sus planes destaca el de dejarte clavado en el sofá durante horas disfrutando de tus películas en alta definición.&lt;br /&gt;&lt;br /&gt;Para que sepas reconocerlo, tiene pinta de DVD de sobremesa, o de equipo HI-FI, pero dentro se esconde un Pc con capacidad para todo lo que te puedas imaginar.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HO0IHo0NR3o/SRlY2xbfn5I/AAAAAAAAAEg/66EZlA3n-2Y/s1600-h/stock.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_HO0IHo0NR3o/SRlY2xbfn5I/AAAAAAAAAEg/66EZlA3n-2Y/s320/stock.jpg" alt="" id="BLOGGER_PHOTO_ID_5267338937191341970" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;HTPC montado sobre una caja Thermaltake&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;Otro aspecto importante de los HTPC es que utilizan un software creado para ser lo suficientemente sencillo y utilizable como para poder gestionar el equipo desde un mando a distancia.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Se trata de una opción muy interesante para aquellos que quieren obtener un rendimiento superior a cualquier reproductor de sobremesa o disco duro multimedia que nos encontremos en el mercado.&lt;br /&gt;&lt;br /&gt;De momento creamos una serie de artículos relacionados con este mundo, por lo que seguiremos informando al respecto.&lt;br /&gt;&lt;br /&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-4112951565405583806?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/4112951565405583806/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/11/el-pc-sale-del-cuarto.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/4112951565405583806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/4112951565405583806'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/el-pc-sale-del-cuarto.html' title='El PC sale del cuarto'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HO0IHo0NR3o/SRlY2xbfn5I/AAAAAAAAAEg/66EZlA3n-2Y/s72-c/stock.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-6961864229863860283</id><published>2008-11-07T04:27:00.000-08:00</published><updated>2008-12-10T03:28:32.525-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Street View, más allá de Google Maps</title><content type='html'>&lt;div style="text-align: justify;"&gt;Si ya me quedé alucinando con GoogleEarth y GoogleMaps, ahora tenemos a nuestra disposición el servicio Street View de Google, que viene a ser una vuelta de tuerca más a la posibilidad de explorar el mundo desde casa.&lt;br /&gt;&lt;br /&gt;Street View se basa en fotos hechas por la gente de Google un día cualquiera en las ciudades disponibles. Suelen ser núcleos urbanos bastante grandes, por lo que los pueblos de momento no se pueden ver utilizando el servicio.&lt;br /&gt;&lt;br /&gt;Lo más interesante es que las fotos se hacen en un día normal a una hora cualquiera, por lo que es posible que tú mismo salgas en la foto andando por la calle, o que reconozcas a alguien de tu barrio.&lt;br /&gt;&lt;br /&gt;Si antes podíamos ver los mapas y navegar por donde quisieramos, ahora incluso podemos darnos un paseo por el Times Square de Nueva York, o contemplar monumentos con fotos reales.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HO0IHo0NR3o/SRQ5MSSxYzI/AAAAAAAAAEY/L9J2oOosS7s/s1600-h/tsquarep.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 177px;" src="http://1.bp.blogspot.com/_HO0IHo0NR3o/SRQ5MSSxYzI/AAAAAAAAAEY/L9J2oOosS7s/s320/tsquarep.jpg" alt="" id="BLOGGER_PHOTO_ID_5265896747534738226" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;Times square, Nueva York&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HO0IHo0NR3o/SRQ42O_WKhI/AAAAAAAAAEQ/SRe_sQGlonI/s1600-h/eiffelp.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 179px;" src="http://1.bp.blogspot.com/_HO0IHo0NR3o/SRQ42O_WKhI/AAAAAAAAAEQ/SRe_sQGlonI/s320/eiffelp.jpg" alt="" id="BLOGGER_PHOTO_ID_5265896368690833938" border="0" /&gt;&lt;/a&gt;&lt;span style="color: rgb(0, 153, 0);font-size:78%;" &gt;La torre Eiffel de París&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Un 10 para la gente de Google, que todavía hoy nos sigue sorprendiendo con sus ideas.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;Puedes probar Street View desde&lt;/span&gt; &lt;a href="http://maps.google.com/help/maps/streetview/"&gt;aquí&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-6961864229863860283?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/6961864229863860283/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/11/street-view-ms-all-de-google-maps.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/6961864229863860283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/6961864229863860283'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/street-view-ms-all-de-google-maps.html' title='Street View, más allá de Google Maps'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HO0IHo0NR3o/SRQ5MSSxYzI/AAAAAAAAAEY/L9J2oOosS7s/s72-c/tsquarep.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-7098256934170649845</id><published>2008-11-05T13:31:00.000-08:00</published><updated>2008-12-10T03:28:03.374-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='servidor'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='cvs'/><title type='text'>Instalación del servicio CVS en Linux</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hoy tratamos el tema de la instalación del servicio de repositorios de software CVS en un servidor Linux. Para obtener información sobre qué es CVS y cómo se utiliza podeis echarle un vistazo los enlaces. Nosotros nos centraremos en su instalación y solución de los problemas que encontramos.&lt;br /&gt;&lt;br /&gt;La instalación del servicio se obvia ya que es tan fácil como la de cualquier paquete que hayas intalado anteriormente en tu linux. El paquete CVS se encuentra en el CD/DVD de la distribución (en nuestro caso OpenSuse 11).&lt;br /&gt;&lt;br /&gt;Asi que pasamos directamente a la configuración y el acceso al servicio.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;- En primer lugar habilitamos el servicio CVS en nuestro equipo. Es recomendable activarlo en el arranque del sistema.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 204);"&gt; &lt;/span&gt;&lt;/b&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;Ejecutamos el YaST ( &lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="font-weight: bold; color: rgb(153, 0, 0);"&gt;$yast&lt;/span&gt; &lt;/span&gt;) y accedemos como root a la sección de &lt;i&gt;Servicios de Red/Xinetd&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt; Habilitamos los servicios si los teniamos deshabilitados.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt; Activamos el servicio CVS (en nuestro caso '&lt;span style="color: rgb(153, 0, 0); font-weight: bold;"&gt;cvspserver&lt;/span&gt;')&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt; Guardamos la configuración y salimos.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;/*&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;- Para conectarnos desde otro equipo nuestro servidor este deberá tener el puerto asociado al servicio CVS abierto. &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;Abrimos el YaST, sección&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;i style="font-weight: bold;"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;Seguridad y usuarios/Cortafuegos (Firewall)/Servicios autorizados&lt;/span&gt;&lt;/i&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;Notese que el servicio CVS no es un servicio por defecto  y no lo encontraremos en la lista que se nos proporciona para seleccionarlo.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;En este caso abrimos las &lt;i style="font-weight: bold;"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;Opciones Avanzadas&lt;/span&gt;&lt;/i&gt; y encontramos una lista de puertos abiertos. Añadimos el numero de puerto ( 2401 por defecto ) y ya podremos acceder al servidor a través del mismo.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;Guardamos la configuración y salimos.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;/*&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;- En este momento, nuestro servidor esta preparado para recibir conexiones a traves del servicio CVS, Pero si ejecutamos la orden &lt;/span&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;$cvs init&lt;/span&gt; el shell nos devolverá un error ya que no hemos definido un directorio raiz el cual albergará el repositorio de sofware y los archivos de configuración.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;Creamos un directorio raíz (REPO en nuestro caso) en nuestro sistema de ficheros. &lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;$mkdir REPO&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;Exportamos la variable de entorno &lt;span style="color: rgb(102, 102, 204);"&gt;CVSROOT&lt;/span&gt; asignandole la ruta absoluta del directorio donde guardaremos nuestros repositorios de software. En nuestro caso con &lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;$export CVSROOT=/usr/local/REPO&lt;/span&gt;&lt;/span&gt; funcionaria pero al rearrancar el servidor probablemente la variable se habria inicializado sin valor.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;Para no tener que asignar la variable cada vez que iniciemos editaremos el archivo &lt;i&gt;cvs&lt;/i&gt; que encontraremos en el directorio &lt;i style="font-weight: bold;"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;/etc/xinetd.d&lt;/span&gt;&lt;/i&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;/*&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Nos encontraremos un formato de archivo como este:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;# CVS pserver (remote acces to your CVS repositories)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;# Please read the section on security and passwords in the CVS manual,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;# before you enable this.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;# default: off&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;service cvspserver&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;        socket_type     = stream&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;        protocol        = tcp&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;        wait            = no&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;        user            = root&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;        server          = /usr/bin/cvs&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;        server_args     = -f --allow-root=&lt;/span&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;/usr/local/&lt;span style="font-weight: bold; color: rgb(153, 0, 0);"&gt;REPO&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 51);"&gt; pserver&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Donde asignaremos nuestra ruta absoluta al directorio REPO.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;- Llegados a este punto,con el servicio CVS activo ,estamos listos para conectar al servidor y trabajar con los repositorios.&lt;/span&gt;&lt;br /&gt;En nuestro caso conectamos mediante la conexión pserver, la cual necesita un usuario unix en el sistema para la autenticación.&lt;br /&gt;Para que los usuarios puedan conectarse al servidor y trabajar sobre el directorio REPO que hemos creado tendremos que tener en cuenta los permisos sobre el directorio, ya que podemos encontrarnos con que los usuarios del servicio no tengan permisos suficientes, por ejemplo de escritura y no puedan subir repositorios al servidor.&lt;br /&gt;En cuanto a la autenticación, en el directorio CVSROOT que se encuentra dentro de nuestro directorio raiz editaremos (o crearemos si no existe) el archivo &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;passwd&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; que contendrá los usuarios que pueden acceder al servicio de forma remota.&lt;br /&gt;la estructura del archivo es la siguiente:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i style="color: rgb(153, 0, 0);"&gt;usuariolocal:&lt;wbr&gt;contraseñaencriptada:&lt;wbr&gt;usuarioremoto&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Donde el usuario local deberá estar definido en nuestro sistema.&lt;br /&gt;El nombre del usuario remoto es el que se mostrará al usuario al acceder. Si omitimos este campo el nombre será el mismo que el usuario local.&lt;br /&gt;&lt;br /&gt;Con todos los usuarios definidos ya podemos probar a acceder al servicio normalmente a través de pserver. En nuestro caso accedemos a través de Eclipse.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;- Problemas encontrados tras la instalación.&lt;/span&gt;&lt;br /&gt;&lt;i style="color: rgb(153, 0, 0);"&gt;&lt;b&gt;[connection refused. No such repository]&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Que nos dio a entender que no habian archivos en el directorio raiz del CVS.&lt;br /&gt;La sorpresa fue que en el directorio &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;/etc/xinetd.d&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; teniamos un archivo de configuración llamado &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;servers&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; que nos estaba redireccionando el servicio al puerto 9099. Editamos el archivo apuntando al puerto 2401 que habiamos definido anteriormente y a funcionar con normalidad.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;- Enlaces Relacionados:&lt;/span&gt;&lt;br /&gt;CVS Sitio oficial - &lt;a href="http://www.cvshome.org/" target="_blank"&gt;http://www.cvshome.org&lt;/a&gt;&lt;br /&gt;CVS en la Wikipedia - &lt;a href="http://es.wikipedia.org/wiki/CVS" target="_blank"&gt;http://es.wikipedia.org/wiki/&lt;wbr&gt;CVS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-7098256934170649845?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/7098256934170649845/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/11/instalacin-del-servicio-cvs-en-linux.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/7098256934170649845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/7098256934170649845'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/instalacin-del-servicio-cvs-en-linux.html' title='Instalación del servicio CVS en Linux'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-9191841291836377385</id><published>2008-11-04T15:08:00.000-08:00</published><updated>2008-12-10T03:27:49.920-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='servidor'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='no-ip'/><title type='text'>No-Ip en tu linux</title><content type='html'>&lt;div style="text-align: justify;"&gt;Vamos a instalar en nuestra máquina linux un servicio que puede resultar muy interesante. Hablamos de &lt;b style="color: rgb(204, 102, 0);"&gt;No-IP&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;No-IP, como su propio nombre indica, trata de eliminar los accesos a un ordenador a través de la IP, esto se consigue creando un dominio que nos redireccionará automáticamente hacia la dirección en cuestión. Dado que hoy en dia es normal encontrarse con IP's dinámicas, No-IP se actualiza periódicamente para que un cambio de IP no nos deje sin acceso al equipo. A continuación vamos a ver que es lo que hay que hacer para beneficiarse de este servicio, que, de momento, es gratis.&lt;br /&gt;&lt;br /&gt;Antes de nada una breve explicación de cómo funciona No-IP.&lt;br /&gt;El servicio consta de dos partes:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-left: 40px; text-align: justify;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;*&lt;/span&gt; El registro del usuario en el sitio web (&lt;a href="http://ww.no-ip.com/" target="_blank"&gt;www.no-ip.com&lt;/a&gt;), el cual nos dará la posibilidad de registrar redirecciones a un host o equipo.&lt;br /&gt;* La instalación del cliente No-IP, que se encargará de sincronizar y actualizar nuestra IP dinámica con el nombre de host registrado en el sitio web.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;- Registro.&lt;/span&gt;&lt;br /&gt;Como es natural, visitaremos &lt;a href="http://www.no-ip.com/" target="_blank"&gt;http://www.no-ip.com&lt;/a&gt; y nos registraremos siguiendo los pasos habituales.&lt;br /&gt;En cuanto completemos el registro nos dirigimos, en el menu de usuario, a &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;Hosts/Redirects&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;, donde añadiremos (&lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;add a host&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;) una redirección a nuestra máquina.&lt;br /&gt;&lt;br /&gt;El formulario de alta, básicamente se compone de :&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-left: 40px; text-align: justify;"&gt;* La dirección IP desde la que accedemos, que se supone que es a donde queremos redirigir con el nombre de host&lt;br /&gt;* El nombre de host, que formará parte de un subdominio de no-ip, por ejemplo &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;&lt;a href="http://mihost.no-ip.info/" target="_blank"&gt;mihost.no-ip.info&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;. Este nombre será el que empleemos para acceder a nuestro ordenador.&lt;br /&gt;* El tipo de host, que define el tipo de redirección. El valor por defecto nos servirá para conectarnos a nuestro equipo sin problemas.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Tras registrar un host, descargamos la última version del No-IP y procedemos a la instalación.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;- Instalación.&lt;/span&gt;&lt;br /&gt;Ya tenemos los archivos (descomprimidos) en nuestro ordenador, y estamos dispuestos a instalarlos. Para ellos ejecutamos, con el usuario root, &lt;span style="color: rgb(153, 0, 0); font-weight: bold;"&gt;$make install&lt;/span&gt; dentro del directorio de No-IP.&lt;br /&gt;Lo primero que se nos pide antes de instalar, como no, son nuestros datos de acceso al sitio de No-IP.&lt;br /&gt;Cuando hemos proporcionado nuestro usuario y contraseña del servicio, el sistema nos advierte del numero de hosts registrados a nuestro nombre de usuario, nos pregunta si queremos actualizarlos, a los que respondemos que &lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;SI&lt;/span&gt;&lt;/b&gt;, nos pregunta por el intervalo en minutos de actualizacion (por defecto &lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;30&lt;/span&gt;&lt;/b&gt;) y le asignamos el que más nos guste, y por último nos pregunta si queremos ejecutar algun comando cuando actualice, que de momento &lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;NO&lt;/span&gt;&lt;/b&gt; nos interesa.&lt;br /&gt;&lt;br /&gt;Desde ahora cuando ejecutemos&lt;b style="font-weight: bold; color: rgb(153, 0, 0);"&gt; $noip2&lt;/b&gt; estaremos arrancando el servicio y podremos acceder a nuestro ordenador, desde cualquier sitio, a traves del nombre de host que hayamos definido. Sin importarnos si nuestra dirección IP ha cambiado desde la última vez que accedimos.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;-Posibles problemas de instalación&lt;/span&gt;.&lt;br /&gt;Es posible que cuando tratemos de instalar No-IP nos devuelva un error porque no encuentra el archivo de configuración. Y es que  por defecto No-IP trata de instalar en &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;/usr/local/etc&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;. Si es nuestro caso podemos optar por 2 soluciones diferentes. Una, la más rápida y simple, crear el directorio en la ruta que No-IP espera. Y la otra utilizar la opcion &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;-c&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; para cambiar el directorio en el que se copiará el archivo de configuración.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="font-weight: bold;"&gt;- Enlaces relacionados.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Sitio oficial: &lt;a href="http://www.no-ip.com/" target="_blank"&gt;http://www.no-ip.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-9191841291836377385?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/9191841291836377385/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/11/no-ip-en-tu-linux.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/9191841291836377385'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/9191841291836377385'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/no-ip-en-tu-linux.html' title='No-Ip en tu linux'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-6976925960385740506</id><published>2008-11-03T13:25:00.001-08:00</published><updated>2008-12-10T03:27:39.080-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='servidor'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='gnump3d'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><title type='text'>GnuMp3d en Linux</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hoy nos vamos a dedicar a instalar en nuestro servidor Linux el servicio &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;GnuMp3d&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;.&lt;br /&gt;¿Que es eso ?&lt;br /&gt;GnuMp3d básicamente es un servidor de música por &lt;i&gt;streaming &lt;/i&gt;en formato mp3&lt;i&gt;, &lt;/i&gt;aunque en la web oficial señalan otros formatos, además de videos multimedia.&lt;br /&gt;&lt;br /&gt;Es muy útil en el caso de que queramos escuchar la música de nuestra casa, por ejemplo, en la oficina, ya que podemos acceder a ella a través de un navegador web desde cualquier sitio en el que tengamos conexión a internet.&lt;br /&gt;&lt;br /&gt;Instalarlo es bastante fácil. Basta con descargar el paquete de &lt;a href="http://www.gnu.org/software/gnump3d/download.html" target="_blank"&gt;http://www.gnu.org/software/&lt;wbr&gt;gnump3d/download.html&lt;/a&gt; y descomprimir.&lt;br /&gt;&lt;br /&gt;Ejecutamos&lt;span style="color: rgb(153, 0, 0);"&gt; &lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;$make install&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; como root y el sistema instalará gnump3d en &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;/usr/bin&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; y los archivos de configuración en &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;/etc/gnump3d&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para configurar nuestro servidor de música editaremos el archivo &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;gnump3d.conf&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; que encontramos en &lt;b&gt;&lt;i&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;/etc/gnump3d&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;, donde podemos definir multitud de parámetros, por ejemplo, el puerto de escucha del servicio, el directorio donde almacenaremos la música, el acceso de los usuarios,etc... De momento sólo las dos primeras nos interesan, ya que son suficientes para poner en marcha el servidor.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="font-weight: bold;"&gt;- Definimos el directorio raíz.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Editamos el archivo &lt;b&gt;&lt;i&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;gnump3d.conf&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;, nos posicionamos en la linea correspondiente y le asignamos a &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;root&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; la ruta donde vamos a guardar nuestros archivos multimedia. En nuestro caso se trata de &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;root = /usr/local/musica&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="font-weight: bold;"&gt;- Añadimos el puerto de escucha del servicio.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Editamos de nuevo el archivo &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;gnump3d.conf&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;, buscamos la linea que hace referencia a port y le asignamos el puerto que nos interese. En nuestro caso &lt;b&gt;&lt;i&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;port=8888&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Es posible que observemos que se hacen más referencias al puerto, concretamente en nuestro archivo de configuración tenemos una linea comentada (&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;#&lt;/span&gt;&lt;/b&gt; en el inicio de la linea) que asigna el puerto 3333. Sólo se tendrán en cuenta las lineas que no esten comentadas, y por lo tanto no nos interesa forzar errores teniendo dos asignaciones a puertos diferentes.&lt;br /&gt;&lt;br /&gt;Con esto ya podemos llamar al servicio con&lt;span style="color: rgb(153, 0, 0);"&gt; &lt;/span&gt;&lt;b&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;$gnump3d&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;, aunque es conveniente que ejecutemos primero &lt;b&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;$gnump3d -index&lt;/span&gt;&lt;/span&gt;&lt;/b&gt; para crear un indice de nuestra música y asi poder acceder a ella con más velocidad y de forma más práctica, ya que de esta forma podremos organizar la música en base a las tags de los archivos, como album, artista, etc...&lt;br /&gt;&lt;br /&gt;Para ver el resultado de la instalación abrimos un navegador y accedemos al servidor en localhost a traves del puerto que hemos configurado. En nuestro caso &lt;i style="color: rgb(0, 0, 0);"&gt;&lt;a href="http://localhost:8888/" target="_blank"&gt;http://localhost:8888&lt;/a&gt;&lt;/i&gt; y nos encontramos con una web que nos ofrece muchas opciones de reproducción para disfrutar de nuestra música como queramos.&lt;br /&gt;&lt;br /&gt;Para acceder desde cualquier sitio al servidor resulta interesante una redireccion de IP como &lt;a href="http://jmengual.blogspot.com/2008/11/no-ip-en-tu-linux.html"&gt;No-IP&lt;/a&gt;, que explicaremos en otro momento.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="font-weight: bold;"&gt;- Además.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Encontramos en el mismo directorio de configuración un archivo &lt;b&gt;&lt;i&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;file.types&lt;/span&gt;&lt;/i&gt;&lt;/b&gt; que relacionará el tipo de archivo con las aciones correspondientes al formato, por ejemplo &lt;b&gt;&lt;i&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;mp3=audio&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;, &lt;b&gt;&lt;i&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;avi=movie&lt;/span&gt;&lt;/i&gt;&lt;/b&gt; o &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;m3u=playlist&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;. Podemos configurar la forma en que se reproducen, claro que tendremos que tener instalados los codecs de audio pertinentes para añadir nuevos formatos de reproducción.&lt;br /&gt;&lt;br /&gt;GnuMp3, al ser un servicio, nos interesa ejecutarlo con el arranque del sistema y de forma que no nos "moleste" demasiado en nuestro uso normal del equipo, por lo tanto es conveniente editar (o crear si no existe) el archivo &lt;i&gt;&lt;b&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;boot.local&lt;/span&gt;&lt;/b&gt;&lt;/i&gt; en &lt;b&gt;&lt;i&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;/etc/init.d&lt;/span&gt;&lt;/i&gt;&lt;/b&gt; al que podemos añadir los comandos que se ejecutarán al iniciar el sistema. Concretamente nos interesa ejecutar el comando &lt;b&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(153, 0, 0);"&gt;$gnump3d --background&lt;/span&gt;&lt;/span&gt;&lt;/b&gt; para que el servicio corra en segundo plano.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;- Para más información.&lt;/span&gt;&lt;br /&gt;Sitio oficial - &lt;a href="http://www.gnu.org/software/gnump3d/" target="_blank"&gt;http://www.gnu.org/software/&lt;wbr&gt;gnump3d/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr style="margin-left: 0px; margin-right: 0px;"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-6976925960385740506?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jmengual.blogspot.com/feeds/6976925960385740506/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://jmengual.blogspot.com/2008/11/gnump3d-en-linux.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/6976925960385740506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/6976925960385740506'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/gnump3d-en-linux.html' title='GnuMp3d en Linux'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3316387604535223966.post-5053158941652315181</id><published>2008-11-03T07:52:00.000-08:00</published><updated>2008-12-10T03:27:26.636-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><title type='text'>Sobre blogs y tal</title><content type='html'>&lt;div style="text-align: justify;"&gt;Hoy mismo, 3 de Noviembre de 2008 creo el blog de JMengual en internet. Supongo que en tu barra del navegador veras jmengual.blogspot.com, pero si pones jmengual.blogspot.es también te encontrarás con un blog parecido a este. ¿A que se debe tanto JMengual por ahi suelto? Pues sencillamente a que este blog lo había creado antes en blogspot.es (alias blogspot, a secas), pero resulta que las opciones de configuración eran bastante escasas, por lo que decidí irme a la competencia (blogger) a ver si se me ofertaba algo mejor. El caso es que es mucho mejor, en cuanto a opciones de publicación y de libertad para diseñar el blog como uno quiera, así que no te lies, y acuérdate de que este blog se aloja en blogspot.com. Y si quieres publicar uno, mejor Blogger !!&lt;br /&gt;&lt;/div&gt;&lt;hr /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3316387604535223966-5053158941652315181?l=jmengual.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/5053158941652315181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3316387604535223966/posts/default/5053158941652315181'/><link rel='alternate' type='text/html' href='http://jmengual.blogspot.com/2008/11/sobre-blogs-y-tal.html' title='Sobre blogs y tal'/><author><name>JMengual</name><uri>http://www.blogger.com/profile/08843848294287577244</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry></feed>
