<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Juanlu Pérez &#187; GNU/Linux</title>
	<atom:link href="http://www.juanluperez.com/index.php/category/gnulinux/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.juanluperez.com</link>
	<description>Mis Pensamientos, creo.</description>
	<lastBuildDate>Tue, 24 Aug 2010 14:56:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Google Talk Plugin en GNU/Linux</title>
		<link>http://www.juanluperez.com/index.php/2010/08/24/google-talk-plugin-en-gnulinux/</link>
		<comments>http://www.juanluperez.com/index.php/2010/08/24/google-talk-plugin-en-gnulinux/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 14:56:17 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=459</guid>
		<description><![CDATA[Estamos de enhorabuena, Google al fin ha publicado su versión de Google Talk Plugin para los usuarios de GNU/Linux tanto en 32 bits como en 64 bits. Los distribuyen como paquetes Debian, pero no es problema, podemos descomprimirlos e instalarlos a mano en cualquier distribución GNU/Linux sin mucha complicación. Descargamos el paquete .deb de este [...]]]></description>
			<content:encoded><![CDATA[<p>Estamos de enhorabuena, <em>Google</em> al fin ha publicado su versión de <em>Google Talk Plugin</em> para los usuarios de <em>GNU/Linux</em> tanto en <em>32 bits</em> como en <em>64 bits</em>. Los distribuyen como paquetes <em>Debian</em>, pero no es problema, podemos descomprimirlos e instalarlos a mano en cualquier distribución <em>GNU/Linux</em> sin mucha complicación.</p>
<ol>
<li>Descargamos el paquete <strong>.deb</strong> de este <a href="http://www.google.com/chat/video" target="_blank">enlace</a>. En mi caso reconoció que uso un sistema de <em>64 bits</em>, supongo que influye el hecho de que uso un navegador compilado para <em>64 bits</em>.</li>
<li><code>$ ar x google-talkplugin_current_amd64.deb<code><br />
	<em>Descomprimimos el paquete <strong>.deb</strong>.</em></li>
<li><code># tar xzf data.tar.gz --exclude=opt --exclude=etc --strip-components 2 -C /usr<br />
# tar xzf data.tar.gz --exclude=usr --exclude=etc --strip-components 2 -C /opt</code><br />
<em>Extraemos solo los ficheros necesarios para instalar el plugin.</em></li>
<li><code>$ /opt/google/talkplugin/GoogleTalkPlugin</code><br />
<em>Comprobamos si es capaz de encontrar las bibliotecas necesarias ejecutando este comando.</em></li>
<li><code># ln -s /usr/lib/libssl.so /usr/lib/libssl.so.0.9.8<br />
# ln -s /usr/lib/libcrypto.so /usr/lib/libcrypto.so.0.9.8<code><br />
<em>Si nos da algún error, tenemos que crear enlaces simbólicos de las bibliotecas que nos pidiera.</em></code></code></li>
</ol>
<p>Fuente: <a href="http://systemadmin.es/2010/08/videochat-en-gtalk-para-fedora-centos-y-rhel" target="_blank">systemadmin.es</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2010/08/24/google-talk-plugin-en-gnulinux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Borrado seguro de ficheros</title>
		<link>http://www.juanluperez.com/index.php/2010/04/26/borrado-seguro-de-ficheros/</link>
		<comments>http://www.juanluperez.com/index.php/2010/04/26/borrado-seguro-de-ficheros/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 15:08:07 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=435</guid>
		<description><![CDATA[Probablemente haya personas que no sepan que cuando borramos un fichero de nuestro disco duro, realmente no es borrado. Al menos de la forma análoga en que podemos borrar nuestras tareas escritas a lápiz de cuando íbamos al &#8220;cole&#8221;. Lo que ocurre en realidad es que en el sistema de ficheros se marcan como libres [...]]]></description>
			<content:encoded><![CDATA[<p>Probablemente haya personas que no sepan que cuando borramos un fichero de nuestro disco duro, realmente no es borrado. Al menos de la forma análoga en que podemos borrar nuestras tareas escritas a lápiz de cuando íbamos al &#8220;cole&#8221;. Lo que ocurre en realidad es que en el sistema de ficheros se marcan como libres todos los bloques usados para contener ese fichero. Sin embargo, los datos o contenido de ese fichero sigue existiendo. Vamos, que no hemos pasado la goma de borrar por cada una de las líneas de nuestras tareas del &#8220;cole&#8221;.</p>
<p>Pero sí que hay herramientas que nos ayudan a hacer un borrado seguro de nuestros datos en el disco duro, como lo es <a href="http://www.jetico.com/linux/" target="_blank"><em>BCWipe</em></a>, disponible para <em>GNU/Linux</em>, <em>MacOS X</em> y <em>Windows</em>.</p>
<p>¿Por qué querría yo asegurarme de que lo que borro no puede ser recuperado? Realmente, cualquier persona debería preocuparse por un borrado seguro, al menos, en el caso de deshacerse de un disco duro. Porque ahí podrían sacarse muchos datos nuestros como contraseñas, datos fiscales, personales, incluso información íntima que muy probablemente no nos gustaría que nadie más conociera como pueden ser registros de conversaciones de chat o mensajes de correo elecrónico.</p>
<p><em>BCWipe</em> lo que hace es escribir información de forma aleatoria en todos los bloques ocupados por el fichero a eliminar y, una vez hecho esto, solicitar al sistema de ficheros que lo borre. Así, ni usando las propias herramientas de recuperación del sistema de ficheros, ni otras tecnologías de recuperación de información, podríamos recuperar los datos borrados. Hay personas que afirman que incluso llenar de ceros todos los bloques del fichero no es suficiente, ya que hay sistemas capaces de leer incluso el dato escrito con anterioridad a ese cero. ¡Increíble!</p>
<p>Menos mal que <em>BCWipe</em> dispone de varios algoritmos de reescritura y con diferetes repeticiones de reescritura, con lo que conseguimos reducir muchísmo la probabilidad de recuperar la información borrada.</p>
<p>Veamos 3 ejemplos primordiales de uso de <em>BCWipe</em>:</p>
<ol>
<li>Este es un ejemplo típico para borrar un dispositivo de bloque por completo, ya sea el disco completo o una partición. Hay que tener en cuenta que si se lo hacemos al disco completo (como hda o sda) perderemos con ello el <em>MBR</em>, la tabla de particiones y las particiones junto con su contenido. Pero si se lo hacemos a una partición (como hda1 o sda6) solo perderíamos el contenido de esa partición, y luego nos bastaría con formearla de nuevo para volverla a usar.<br />
<code># bcwipe -b /dev/sda</code><br />
<em>Borrado de disco completo.</em><br />
<code># bcwipe -bv /dev/hda6</code><br />
<em>Borrado completo del contenido de la partición, y además ofrece información adicional por consola.</em></li>
<li>También tenemos la posibilidad de borrar ficheros concretos, directorios o árboles de directorios.<br />
<code>$ bcwipe mifichero.txt</code><br />
<em>Borrado de un fichero.</em><br />
<code>$ bcwipe -f mifichero.txt miotrofichero.txt</code><br />
<em>Borrado de una enumeración de ficheros sin preguntar.</em><br />
<code>$ bcwipe -rvf directorio </code><br />
<em>Borrado de un directorio y todo su contenido de forma recursiva, sin preguntar</em><em>, y además ofrece información adicional por consola</em><em>.</em></li>
<li>Y también tiene una opción muy últil, que es hacer borrado seguro de toda la parte vacía del sistema de ficheros, es decir, todo lo que hemos borrado con anterioridad sea borrado realmente. Además esto puede ser usado con el sistema de ficheros montado.<br />
<code># bcwipe -F /home</code><br />
<em>Borrado seguro del espacio libre del directorio /home.</em></li>
</ol>
<p>A partir de ahora, cuando venda un disco duro usado, siempre le haré un <code>bcwipe -bf</code> antes de ponerlo a la venta. Por si acaso.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2010/04/26/borrado-seguro-de-ficheros/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Webcam gspca-561 con Skype en Gentoo 64bits</title>
		<link>http://www.juanluperez.com/index.php/2010/02/12/webcam-gspca-561-con-skype-en-gentoo-64bits/</link>
		<comments>http://www.juanluperez.com/index.php/2010/02/12/webcam-gspca-561-con-skype-en-gentoo-64bits/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 09:23:43 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[Gentoo GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=423</guid>
		<description><![CDATA[Tener un sistema de 64bits en ocasiones da algunos quebraderos de cabeza, más que nada porque hay Software que es distribuido para plataformas x86 en su versión 32bits. Esta práctica es muy normal en desarrollos de Software privativo. Antes Adobe no distribuía su famoso Flash para 64bits para GNU/Linux y otro ejemplo es Skype, que [...]]]></description>
			<content:encoded><![CDATA[<p>Tener un sistema de <em>64bits</em> en ocasiones da algunos quebraderos de cabeza, más que nada porque hay <em>Software</em> que es distribuido para plataformas <em>x86</em> en su versión <em>32bits</em>. Esta práctica es muy normal en desarrollos de <em>Software</em> privativo. Antes <em>Adobe</em> no distribuía su famoso <em>Flash</em> para <em>64bits</em> para <em>GNU/Linux</em> y otro ejemplo es <em>Skype</em>, que aún se niega a publicar una versión de <em>64bits</em> de su famoso programa de vídeo-conferencias.</p>
<p>Si además unimos a esto que <em>Skype</em> tiene problemas con las cámaras basadas en el driver <em>gspca</em>, tenemos un cóctel bastante amargo.</p>
<p>Para hacer funcionar nuestra flamante cámara basada en el <em>driver gspca_561</em> o cualquier otra cámara basada en los <em>drivers gspca</em> en el <em>Skype</em> de nuestro <em>Gentoo GNU/Linux 64bits</em> debemos seguir los pasos siguientes:</p>
<ol>
<li><code># echo "media-libs/libv4l ~amd64" &gt;&gt; /etc/portage/package.keywords<br />
# emerge -av media-libs/libv4l</code><br />
<em>Para instalar la versión 0.6.1 de <strong>libv4l</strong> que está enmascarada y es la que mejor funciona.</em></li>
<li><code> # echo "net-im/skype ~amd64" &gt;&gt; /etc/portage/package.keywords<br />
# emerge -av net-im/skype </code><br />
<em>Instalamos <strong>Skype</strong>.</em></li>
<li><code># nano -w /usr/bin/skype</code><br />
<em>Modificamos el fichero para que cuando ejecutemos <strong>Skype</strong> cargue la biblioteca de compatibilidad con <strong>V4l1</strong>:</em></p>
<blockquote><p>#!/bin/sh<br />
cd &#8220;/opt/skype&#8221;<br />
if [ -n "/opt/skype" ] ; then<br />
if [ "${LD_LIBRARY_PATH+set}" = "set" ] ; then<br />
export LD_LIBRARY_PATH=&#8221;${LD_LIBRARY_PATH}:/opt/skype&#8221;<br />
else<br />
export LD_LIBRARY_PATH=&#8221;/opt/skype&#8221;<br />
fi<br />
fi<br />
export LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so<br />
exec ./skype &#8220;$@&#8221;</p></blockquote>
</li>
</ol>
<p>Si nos encontrásemos con la situación de que <em>portage</em> nos dice que <em>Skype</em> está enmascarado por el tipo de licencia, debemos decir a <em>portage</em> que acepte la licencia de <em>Skype</em> o bien que las acepte todas y así olvidarnos de eso. Basta con editar el fichero <strong>/etc/make.conf</strong> para añadir una de estas líneas:</p>
<ul>
<li><code>ACCEPT_LICENSE="skype-eula"</code><br />
<em>Para aceptar solo la licencia de <strong>Skype</strong>.</em></li>
<li><code>ACCEPT_LICENSE="*"</code><br />
<em>Para aceptar cualquier licencia.</em></li>
</ul>
<p>Con esto podemos usar normalmente<em> Skype</em>, y veremos como ya podemos disfrutar de nuevo nuestra <em>Webcam</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2010/02/12/webcam-gspca-561-con-skype-en-gentoo-64bits/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Instalar Gentoo en un equipo sin teclado, ni ratón, ni monitor</title>
		<link>http://www.juanluperez.com/index.php/2010/02/06/instalar-gentoo-en-un-equipo-sin-teclado-ni-raton-ni-monitor/</link>
		<comments>http://www.juanluperez.com/index.php/2010/02/06/instalar-gentoo-en-un-equipo-sin-teclado-ni-raton-ni-monitor/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 08:32:27 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[Gentoo GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=401</guid>
		<description><![CDATA[¿Cómo podemos instalar un sistema operativo en un equipo en el que no hay ni ratón, ni teclado, ni tan siquiera un monitor? Por red, está claro. Para ello primeramente deberíamos haber configurado la BIOS de nuestro equipo para que inicie automáticamente desde CD. Después debemos preparar nuestra imagen de CD para que inicie automáticamente [...]]]></description>
			<content:encoded><![CDATA[<p>¿Cómo podemos instalar un sistema operativo en un equipo en el que no hay ni ratón, ni teclado, ni tan siquiera un monitor? Por red, está claro. Para ello primeramente deberíamos haber configurado la <em>BIOS</em> de nuestro equipo para que inicie automáticamente desde <em>CD</em>.</p>
<p>Después debemos preparar nuestra imagen de <em>CD</em> para que inicie automáticamente el servicio <em>SSH</em> al iniciar el sistema, y por supuesto con una clave de paso conocida. El <em>CD</em> de instalación de <em>Gentoo</em> nos propone unos parámetros de arranque para este fin, un ejemplo: <code>gentoo-nofb dossh passwd=miclavedepaso</code> y nos iniciará el sistema sin soporte <em>frame-buffer</em> y arrancará el demonio <em>SSH</em> para entrar como <em>root</em> con clave <em>miclavedepaso</em>.</p>
<p>Pero claro, no tenemos teclado, no podemos introducir estos parámetros en el arranque. Por lo que modificaremos el fichero <strong>isolinux.cfg</strong> del <em>CD</em> de instalación para hacer esto.</p>
<ol>
<li>Descargamos la imagen iso de la <a href="http://www.gentoo.org/main/en/where.xml" target="_blank">web de <em>Gentoo</em></a>.</li>
<li><code># mount -o loop -t iso9660 install-x86-minimal-20100119.iso /mnt/cdrom</code><br />
<em>Montamos la imagen.</em></li>
<li><code># mkdir /tmp/iso<br />
# cp -rp /mnt/cdrom/* /tmp/iso</code><br />
<em>Copiamos el contenido.</em></li>
<li><code># nano -w /tmp/iso/isolinux/isolinux.cfg</code><br />
<em>Modificamos las siguientes líneas, dejando todo lo demás tal cual está.</em></p>
<blockquote><p><code>default gentoo-nofb<br />
timeout 30<br />
label gentoo<br />
kernel gentoo<br />
append root=/dev/ram0 init=/linuxrc nokeymap looptype=squashfs loop=/image.squashfs dosshd passwd=miclavedepaso cdroot initrd=gentoo.igz vga=791<br />
label gentoo-nofb<br />
kernel gentoo<br />
append root=/dev/ram0 init=/linuxrc nokeymap looptype=squashfs loop=/image.squashfs dosshd passwd=miclavedepaso cdroot initrd=gentoo.igz</code></p></blockquote>
</li>
<li><code> # mkisofs -J -R -l -z -V "MiGentoo </code><code>20100119</code><code>" -o MiGentoo-20100119.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /tmp/iso/</code><br />
<em>Creamos la imagen iso.</em></li>
<li><code> # rm -rf /tmp/iso</code><br />
<em>Borramos ficheros temporales.</em></li>
<li><code> # umont /mnt/cdrom</code><br />
<em>Desmontamos la imagen original del sistema de ficheros.</em></li>
<li><code> # qemu -boot d -cdrom </code><code>MiGentoo-20100119.iso</code><br />
<em>Probamos la iso con Qemu.</em></li>
<p><em> </em></ol>
<p>Ahora podemos grabar <strong>migentoo.iso</strong> en un <em>CD</em> para arrancar nuestro equipo. Desde otro equipo podemos entrar por <em>SSH</em> de forma remota. Para ello debemos saber qué dirección <em>IP</em> tiene en nuestra red, cosa que supongo no será muy complicado de averiguar. Podemos entrar en nuestro <em>router</em> y mirar qué equipos hay con direcciones asignadas.</p>
<p>Sin embargo tenemos la opción de modificar la inicialización de la red para que en lugar de intentar configurar todas las interfaces de red haciendo uso de <em>DHCP</em>, ponga una dirección <em>IP</em> válida para nuestra interfaz de red. De este modo, una vez llevado a cabo el <strong>paso 4</strong> anterior, prosiguiríamos con los siguitentes:</p>
<ol>
<li><code> # emerge -av sys-fs/squashfs-tools</code><br />
<em>Instalamos <strong>sys-fs/squashfs-tools</strong> si no lo estuviera.</em></li>
<li><code> # mkdir /tmp/squash /mnt/squash<br />
# mount -o loop -t squashfs /tmp/iso/image.squashfs /mnt/squash<br />
# cp -rp /mnt/squash/* /tmp/squash/</code><br />
<em>Montamos el sistema de ficheros <strong>SquashFS</strong> y copiamos el contenido.</em></li>
<li><code># nano -w /tmp/squash/etc/conf.d/net</code><br />
<em>Modificamos el fichero con nuestra configuración de red de modo que quede así:</em></p>
<blockquote><p><code># This blank configuration will automatically use DHCP for any net.*<br />
# scripts in /etc/init.d.  To create a more complete configuration,<br />
# please review /etc/conf.d/net.example and save your configuration<br />
# in /etc/conf.d/net (this file :]!).<br />
config_eth0=( "192.168.1.111/24" )<br />
routes_eth0=( "default via 192.168.1.1" )<br />
</code></p></blockquote>
</li>
<li><code> # mksquashfs /tmp/squashfs /tmp/iso/image.squashfs.nuevo<br />
# umount /mnt/squash<br />
# rm -f /tmp/iso/image.squashfs<br />
# mv /tmp/iso/image.squashfs.nuevo /tmp/iso/image.squashfs<br />
# rm -rf /tmp/squash</code><br />
<em>Creamos la nueva imagen <strong>SquashFS</strong>, desmontamos la imagen antigua y substituimos la copia antigua por la nueva. Para acabar borramos la copia temporal del contenido de la imagen <strong>SquashFS</strong>.</em></li>
</ol>
<p>Una vez hecho esto podemos continuar con el <strong>paso 5</strong> del primer bloque. De esta manera con ejecutar en nuestra máquina de trabajo un comando como por ejemplo <code>ssh root@192.168.1.111</code>, ya podríamos comenzar con la instalación. También podríamos usar el <em>CD</em> como sistema de rescate, por supuesto.</p>
<p>Si vas a instalar <em>Gentoo</em> te recomiendo que uses <em>GNU screen</em>, ya que si la conexión <em>SSH</em> falla o simplente quieres apagar tu equipo de trabajo, puedes cerrar y volver a entrar en la sesión <em>screen</em> con posterioridad para seguir por donde ibas.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2010/02/06/instalar-gentoo-en-un-equipo-sin-teclado-ni-raton-ni-monitor/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Autoactualizar WordPress a través de SSH</title>
		<link>http://www.juanluperez.com/index.php/2009/11/27/autoactualizar-wordpress-a-traves-de-ssh/</link>
		<comments>http://www.juanluperez.com/index.php/2009/11/27/autoactualizar-wordpress-a-traves-de-ssh/#comments</comments>
		<pubDate>Fri, 27 Nov 2009 19:30:05 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[Gentoo GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=365</guid>
		<description><![CDATA[Sabemos que las nuevas versiones de WordPress son capaces de autoactualizarse a través del protocolo FTP. En mi servidor no tengo ni quiero configurar un servidor FTP, porque con el SSH me basto y me sobro. Podemos conseguirlo en Gentoo de un modo muy sencillo: Instalamos el soporte de SSH2 para PHP: # emerge dev-php5/pecl-ssh2 [...]]]></description>
			<content:encoded><![CDATA[<p>Sabemos que las nuevas versiones de <em>WordPress</em> son capaces de autoactualizarse a través del protocolo <em>FTP</em>. En mi servidor no tengo ni quiero configurar un servidor <em>FTP</em>, porque con el <em>SSH</em> me basto y me sobro. Podemos conseguirlo en <em>Gentoo</em> de un modo muy sencillo:</p>
<p>Instalamos el soporte de <em>SSH2</em> para <em>PHP</em>:</p>
<p><code># emerge dev-php5/pecl-ssh2</code></p>
<p>Reiniciamos nuestro servidor web <em>Cherokee</em>: <code># /etc/init.d/cherokee restart</code></p>
<div id="attachment_368" class="wp-caption alignnone" style="width: 560px"><img class="size-full wp-image-368" title="WordPress con soporte SSH para autoactualización." src="http://www.juanluperez.com/wordpress/wp-content/uploads/2009/11/wp-ssh.jpg" alt="Autoactualización con soporte SSH." width="550" height="391" /><p class="wp-caption-text">Autoactualización con soporte SSH.</p></div>
<p>Cuando aparezca una nueva actualización de <em>WordPress</em> y este nos avise como de costumbre, veremos que nos aparece la pantalla de autoactualización de siempre, pero con <em>SSH</em> como una nueva opción. La seleccionamos y rellenamos los campos necesarios para actualizar. Debemos tener en cuenta algunas cosas muy importantes antes de pulsar en actualizar, como son hacer copia de seguridad de nuestra base de datos y de la propia instalación de <em>WordPress</em>. Que luego si algo va mal y no la hemos hecho nos podemos estar tirando de los pelos una hora y estaremos igual pero calvos.</p>
<p>Además, si os diera error y aparentemente lo tenéis todo correcto. Debéis tener en cuenta que la estructura de directorios y ficheros de vuestro <em>WordPress</em> deben tener como dueño al usuario de ejecuta el servidor <em>web</em>, en mi caso es <em>cherokee</em>.</p>
<p>Ejemplo de solución: <code># chmod -R cherokee:cherokee /var/www/directorio/a/wordpress</code></p>
<p>Tened en cuenta cosas como el usuario que usáis para hacer login, que debe tener permisos suficientes para ejecutar este proceso. En mi caso es <em>root</em>, pero no permito el acceso a <em>root</em> por <em>SSH</em> así que tengo que cambiar esto en mi configuración sólo y exclusivamente para la actualización automática. Aún así sigue siendo más cómodo esto que hacer la actualización manual.</p>
<p>Espero que sirva de ayuda a alguien.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2009/11/27/autoactualizar-wordpress-a-traves-de-ssh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Consola estilo Gentoo en Ubuntu</title>
		<link>http://www.juanluperez.com/index.php/2009/11/25/consola-estilo-gentoo-en-ubuntu/</link>
		<comments>http://www.juanluperez.com/index.php/2009/11/25/consola-estilo-gentoo-en-ubuntu/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 19:30:44 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[Gentoo GNU/Linux]]></category>
		<category><![CDATA[Ubuntu GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=352</guid>
		<description><![CDATA[Una de muchísimas cosas que me gustan de Gentoo es la estética de la consola. Supongo que la manera en que se suele administrar este sistema y sobre todo lo peculiar de su instalación hacen que los usuarios que disfrutamos de ella usemos la consola mucho. Y si lidias con algo durante mucho tiempo, qué [...]]]></description>
			<content:encoded><![CDATA[<p>Una de muchísimas cosas que me gustan de <i>Gentoo</i> es la estética de la consola. Supongo que la manera en que se suele administrar este sistema y sobre todo lo peculiar de su instalación hacen que los usuarios que disfrutamos de ella usemos la consola mucho. Y si lidias con algo durante mucho tiempo, qué mejor que sea lo más bonito posible, ¿no?</p>
<p>Algo que echo mucho de menos en una instalación de <i>Ubuntu</i> es esa tan cuidada decoración de la consola que tiene <i>Gentoo</i>, así que he decidido copiarla en mi portátil, donde uso <i>Ubuntu 9.10</i>.</p>
<p>Bueno, la consola en <i>Gentoo</i> básicamente se muestra como una consola con un <i>prompt</i> decorado con colores y, ademas, el comando <i>ls</i> que colorea los ficheros según el tipo al que pertenecen. Debemos ejecutar estos comandos:</p>
<p><code>$ echo "export PS1='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w $\[\033[00m\] '" &gt;&gt; ~/.bashrc<br />
$ echo "eval \$(dircolors -b .DIR_COLORS)" &gt;&gt; ~/.bashrc<br />
$ echo "alias ls='ls --color=auto'" &gt;&gt; ~/.bashrc<br />
$ echo "alias grep='grep --color=auto'" &gt;&gt; ~/.bashrc<br />
</code></p>
<p>Para acabar debéis descargar el fichero <a target="_blank" mce_href="http://www.juanluperez.com/wordpress/wp-content/uploads/2009/11/.DIR_COLORS" href="http://www.juanluperez.com/wordpress/wp-content/uploads/2009/11/.DIR_COLORS">.DIR_COLORS</a> en ~.</p>
<p>Para el usuario root, es básicamente lo mismo, solo que cambia el primer comando a añadir en el .bashrc:</p>
<p><code>$ echo "export PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W #\[\033[00m\] '" &gt;&gt; ~/.bashrc<br />
$ echo "eval \$(dircolors -b .DIR_COLORS)" &gt;&gt; ~/.bashrc<br />
$ echo "alias ls='ls --color=auto'" &gt;&gt; ~/.bashrc<br />
$ echo "alias grep='grep --color=auto'" &gt;&gt; ~/.bashrc<br />
</code></p>
<p>Y por supuesto debéis descargar tambien el fichero <a target="_blank" mce_href="http://www.juanluperez.com/wordpress/wp-content/uploads/2009/11/.DIR_COLORS" href="http://www.juanluperez.com/wordpress/wp-content/uploads/2009/11/.DIR_COLORS">.DIR_COLORS</a> en el ~ de root.</p>
<p>
<div class="mceTemp">
<dl id="attachment_357" class="wp-caption alignnone" style="width: 446px;">
<dt class="wp-caption-dt"><img src="http://www.juanluperez.com/wordpress/wp-content/uploads/2009/11/consola-estilo-gentoo.png" mce_src="http://www.juanluperez.com/wordpress/wp-content/uploads/2009/11/consola-estilo-gentoo.png" alt="Imagen de muestra de la consola." title="consola-estilo-gentoo" class="size-full wp-image-357" height="200" width="436"></dt>
<dd class="wp-caption-dd">Imagen de muestra de la consola.</dd>
</dl>
</div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2009/11/25/consola-estilo-gentoo-en-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WTF en Gentoo</title>
		<link>http://www.juanluperez.com/index.php/2009/11/20/wtf-en-gentoo/</link>
		<comments>http://www.juanluperez.com/index.php/2009/11/20/wtf-en-gentoo/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 10:02:01 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[Gentoo GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=347</guid>
		<description><![CDATA[Con pocas palabras entederéis de qué va esto: # emerge wtf $ wtf is lmao LMAO: laughing my ass off $ wtf is lol LOL: laughing out loud $ wtf is wtf WTF: {what,when,where,who,why} the fuck Uno de los programas más útiles que he encontrado últimamente, jajaja.]]></description>
			<content:encoded><![CDATA[<p>Con pocas palabras entederéis de qué va esto:</p>
<p><code># emerge wtf<br />
$ wtf is lmao<br />
LMAO: laughing my ass off<br />
$ wtf is lol<br />
LOL: laughing out loud<br />
$ wtf is wtf<br />
WTF: {what,when,where,who,why} the fuck</code></p>
<p>Uno de los programas más útiles que he encontrado últimamente, jajaja.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2009/11/20/wtf-en-gentoo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Truecrypt en Gentoo</title>
		<link>http://www.juanluperez.com/index.php/2009/11/17/truecrypt-en-gentoo/</link>
		<comments>http://www.juanluperez.com/index.php/2009/11/17/truecrypt-en-gentoo/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 13:53:58 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[Gentoo GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=343</guid>
		<description><![CDATA[Estoy usando una memoria USB cifrada con TrueCrypt para que en caso de pérdida no se puedan acceder a los datos contenidos en ella. La suelo usar en un equipo con Windows XP que no está en mi casa, y en casa solo uso GNU/Linux. El problema ha sido que el sistema de ficheros VFAT [...]]]></description>
			<content:encoded><![CDATA[<p>Estoy usando una memoria <em>USB</em> cifrada con <em>TrueCrypt</em> para que en caso de pérdida no se puedan acceder a los datos contenidos en ella.</p>
<p>La suelo usar en un equipo con <em>Windows XP</em> que no está en mi casa, y en casa solo uso <em>GNU/Linux</em>. El problema ha sido que el sistema de ficheros <em>VFAT </em>se ha corrompido, y para arreglarlo en casa he tenido que usar <em>Truecrypt</em> en <em>Gentoo</em>.</p>
<p>Descargasmos de la web de <a title="http://www.truecrypt.org/downloads2" href="http://" target="_blank"><em>Truecrypt</em></a> la versión última del software para <em>GNU/Linux</em>, y la copiamos en <code>/usr/portage/distfiles</code>. Ejecutamos <code># emerge truecrypt</code> y ya lo tenemos listo.</p>
<p>Para montar usamos <code># truecrypt fichero.tc</code>, veremos que se nos monta en <code>/media/truecrypt1</code> o algo similar.</p>
<p>En mi caso necesitaba conectar solo el dispositivo pero sin montar el sistema de ficheros para poder hacerle un <code>fsck.vfat</code>. Cosa que conseguimos con <code># truecrypt --filesystem=none fichero.tc</code>. A continuación: <code># fsck.vfat -a /dev/mapper/truecrypt1</code>.</p>
<p>Para desmontar todos los sistemas montados usamos <code># truecrypt -d</code></p>
<p>Y por último si os da un error del tipo:<br />
<code>device-mapper: reload ioctl failed: Invalid argument<br />
Command failed</code></p>
<p>Podéis solucionarlo <a href="http://en.gentoo-wiki.com/wiki/TrueCrypt#Troubleshooting" target="_blank">aquí</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2009/11/17/truecrypt-en-gentoo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La pesadilla del Cron</title>
		<link>http://www.juanluperez.com/index.php/2009/09/17/la-pesadilla-del-cron/</link>
		<comments>http://www.juanluperez.com/index.php/2009/09/17/la-pesadilla-del-cron/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 11:55:46 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[Gentoo GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=336</guid>
		<description><![CDATA[¡Qué pesadilla! Mi cron daemon me envía un correo-e de aviso cada vez que algo inesperado ocurre en la ejecución de los comandos. Bien, pues resulta que me han llegado como 500 correos en los que todos comentaban el mismo error: &#8220;/bin/bash: root: command not found&#8221;. ¡Claro que root no es un comando! ¿Pero por [...]]]></description>
			<content:encoded><![CDATA[<p>¡Qué pesadilla! Mi <em>cron daemon</em> me envía un correo-e de aviso cada vez que algo inesperado ocurre en la ejecución de los comandos. Bien, pues resulta que me han llegado como 500 correos en los que todos comentaban el mismo error: &#8220;/bin/bash: root: command not found&#8221;. ¡Claro que <em>root</em> no es un comando! ¿Pero por qué <em>cron</em> intenta ejecutar <em>root</em> como un comando? Hoy me ha quedado clarísimo.</p>
<p>Uso <em>vixie-cron</em> como <em>cron daemon</em>, este demonio al igual que otros tiene soporte para un <em>crontab file</em> de sistema y otros para cada usuario de sistema. La diferencia entre el <em>crontab file</em> de un usuario y el del sistema es que el sexto campo en el <em>crontab file</em> del sistema es el usuario usado para ejecutar el comando que aparece en el campo séptimo. El cron de sistema es el único que puede ejectuar comandos haciéndose pasar por otro usuario del sistema. Debido a esto, si cualquier otro usuario tiene un <em>crontab file</em>, el sexto campo debe ser directamente el comando a ejecutar.</p>
<p>¿Qué narices me había pasado? Pues que en algún momento edité el <em>crontab</em> del usuario <em>root</em> como si el de sistema se tratase, por equivocación. Así que tenía el mismo <em>crontab file</em> para el sistema como para el usuario <em>root</em>. Si quieres editar el <em>crontab file</em> del sistema jamás uses el comando <code>crontab</code> tal cual. Para editarlo se recomienda usar el comando <code>crontab -e</code> o bien editar <strong>/etc/crontab</strong> con tu editor de texto favorito.</p>
<p>¿Y como solucioné el problema? Ejecuté como <em>root</em> el comando <code>crontab -r</code> que borra el <em>crontab</em> de usuario. De ese modo ya solo se ejecuta el <em>crontab</em> de sistema y todo ha vuelto a la normalidad.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2009/09/17/la-pesadilla-del-cron/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Nokia S60 como Webcam Wifi o Bluetooth</title>
		<link>http://www.juanluperez.com/index.php/2009/08/28/nokia-s60-como-webcam-wifi-o-bluetooth/</link>
		<comments>http://www.juanluperez.com/index.php/2009/08/28/nokia-s60-como-webcam-wifi-o-bluetooth/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 15:59:27 +0000</pubDate>
		<dc:creator>Juanlu</dc:creator>
				<category><![CDATA[Gentoo GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.juanluperez.com/?p=331</guid>
		<description><![CDATA[Hace unos días hablaba con un amigo sobre programitas para nuestros teléfonos Symbian de Nokia, el mío en concreto es un Nokia N81 y el de él un Nokia N95. Entre varios programas hablamos algo sobre los programas que hay que te permiten usar el terminal móvil como webcam inalámbrica. Había visto algunos para Windows [...]]]></description>
			<content:encoded><![CDATA[<p>Hace unos días hablaba con un amigo sobre programitas para nuestros teléfonos <em>Symbian</em> de <em>Nokia</em>, el mío en concreto es un <em>Nokia N81</em> y el de él un <em>Nokia N95</em>. Entre varios programas hablamos algo sobre los programas que hay que te permiten usar el terminal móvil como webcam inalámbrica. Había visto algunos para <em>Windows</em> y por eso mismo ni los había probado. Hoy he buscado de nuevo a ver qué me encontraba y me he llevado una grata sorpresa. He topado con <a href="http://sourceforge.net/projects/smartcam/" target="_blank"><em>SmartCam</em></a> un proyecto libre alojado en <em>Sourceforge</em>, que consigue que mi móvil funcione como webcam en mi máquina <em>GNU/Linux</em>.</p>
<p>El funcionamiento consiste en instalar un programa cliente en el terminal móvil, y otro programa servidor más el <em>driver</em> para el <em>kernel</em> en el equipo en el que queremos usar el terminal como <em>webcam</em>. He probado también en mi <em>N70</em> tanto con el cliente <em>Java</em> como con el cliente nativo para <em>Symbian</em>, pero no he tenido suerte. Sin embargo, todo ha funcionado perfecto para mi <em>N81.</em></p>
<p>He instalado usando el código fuente que podéis encontrar <a href="http://sourceforge.net/projects/smartcam/files/">aquí</a>, si os fijáis también hay paquetes <em>deb</em> para <em>Debian</em> y que usen <em>APT</em>. Los pasos son muy sencillos: descargar el correspondiente <em>.tar.gz</em>, descomprimir <strong>tar xzfv fichero.tar.gz</strong>, cambiamos al directorio que ha descomprimido y ejecutamos los tres comandos mágicos: <code>./configure</code>, <code>make</code>, <code>make install</code>.</p>
<p>Con esto ya tenemos el servidor instalado, que se ejecuta desde consola solo con teclear smartcam, pero aún nos queda compilarnos el módulo para el <em>kernel</em> y montarlo debidamente. Para ello accedemos al directorio <strong>driver_src</strong> que cuelga del directorio que hemos descomprimido antes, y llamamos a la orden <code>make -C /lib/modules/`uname -r`/build M=`pwd`</code> y con esto deberíamos tener el driver compilado sin problemas.</p>
<p>Para montar el driver:<br />
<code># modprobe videodev</code><br />
<code># insmod smartcam.ko</code></p>
<p>Para instalar el cliente en el teléfono enviamos el <strong>.sis</strong> correspondiente por <em>bluetooth</em> al terminal, podemos encontrarlos en el directorio <strong>/usr/local/share/smartcam/phone_installs/</strong>, ejecutamos el servidor en nuestro <em>PC</em> con la orden <strong>smartcam</strong> como usuario.</p>
<p>Si usáis un kernel 2.6.29 como yo, necesitaréis aplicar un parche al código fuente del <em>driver</em>. Es fácil, descargáis el <a href="http://zache.kapsi.fi/misc/smartcam-2.6.29.4.patch" target="_self">parche</a> en el mismo directorio donde está el código fuente del <em>driver</em> (<em>driver_src/</em>)y ejectuáis <strong>patch -p0 &lt; smartcam-2.6.29.4.patch</strong> y luego compiláis como expliqué antes.</p>
<p>Los dos programas tanto cliente como servidor son sencillísimos de usar tanto por wifi como por bluetooth, si queréis usarlo por <em>bluetooth</em> o por <em>WiFi</em> debéis configurar antes el servidor para que espere la conexión por lo que hayáis escogido (<em>File-&gt;Settings</em>). Tened en cuenta que debéis tener una conexión <em>bluetooth</em> en correcto funcionamiento previamente, al igual que vuestra red local y vuestro <em>WiFi</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.juanluperez.com/index.php/2009/08/28/nokia-s60-como-webcam-wifi-o-bluetooth/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
