Publicado en
Linux el
31 de May de 2009 por
Manel Pérez Mata
Tags: Debian, Ubuntu | Añadir comentario
Si os encontrais desesperados porque habeis perdido la contraseña de root de vuestra Ubuntu (por mencionar una distribución) estais de suerte, siempre que podais acceder físicamente a la máquina, hay una manera de recuperarlo.
Para conseguirlo, aprovecharemos que en un LiveCD entramos con privilegios de root para montar nuestras particiones en él, desdea aquí haremos un salto a nuestra máquina recién montada y modificaremos el password.
Puede parecer, que un sistema Linux es vulnetable debido a esta característica, pero recordemos que ningún sistema operativo es seguro si tenemos acceso físico a la máquina. Si no confiamos en las personas que pueden acceder a nuestro PC, lo único que nos queda es encriptar toda la información confidencial de nuestra máquina. … Seguir Leyendo
Publicado en
Programación el
29 de May de 2009 por
Manel Pérez Mata
Tags: Expresiones Regulares, PHP, Script | (4 Comentarios)
¿Nunca habeis necesitado extraer todas las URLs de las imágenes de una web? Pues con este script mostraremos por pantalla las rutas de todas las imágenes contenidas en la página $url
$url = "http://www.elmejorcoche.com";
$html = file_get_contents($url);
preg_match_all("/<img[\s]+[^>]*?src[\s]?=[\s\"\']+(.*\.([gif|jpg|png|bmp|jpeg|tiff]{3,4}))[\"\']+.*?>/", $html, $images);
$images = $images[1];
$list = array();
foreach($images as $img) {
echo $img."<br>";
}
Si tu versión de PHP es inferior a 4.3.0 (en primer lugar te recomiendo pasar a PHP5) puedes usar la siguiente función en lugar de file_get_contents:
function getHtml($url) {
$foo = @fopen($url,"r");
if($foo){
while(!feof($foo)){
$html.=fgets($foo);
}
}
return $html;
}
Publicado en
Linux el
27 de May de 2009 por
Manel Pérez Mata
Tags: Bash, Compiz, Ubuntu | Añadir comentario
Existe una pequeña incompatibilidad entre Compiz Fusion y la librería Swing de Java que provoca que algunas aplicaciones desarrolladas en este lenguaje tengan problemas. Se han detectado, por ejemplo, que aparezca una ventana en blanco al abrir NetBeans o problemas al redimensionar la ventana en jEdit.
Para los que no lo conozcais, Compiz Fusion es un gestor gráfico que añade multitud de efectos al escritorio de Ubuntu, en mi caso GNOME, como el super conozido efecto “Cube” para pasar de un escritorio a otro:

Efecto cube de Compiz Fusion
Actualmente el bug está en el lado de Java ya que sus aplicaciones basadas en Swing/AWT no funcionan bien con estos gestores de ventanas. El bug para Compiz está corregido en el J2SE 6u2.
¿Cómo podemos solventar esta incompatibilidad?
Añadiendo un export en el archivo environment solventaremos todos los problemas derivados de dicha incompatibilidad.
echo "export AWT_TOOLKIT=MToolkit" | sudo tee -a /etc/environment
Publicado en
Bases de datos el
26 de May de 2009 por
Manel Pérez Mata
Tags: MySQL | (1 Comentario)
Supongamos un escenario real de producción en el que tenemos dos servidores. Una de las máquinas contiene un servidor http y una base de datos MySQL que usamos para abserver el tráfico web; la otra la utilizamos para otras tareas necesarias. Sería magnífico poder utilizar la segunda máquina como backup de nuestro MySQL por si hay algún problema grave en la primera ¿no? En este artículo os explico como hacerlo.
La replicación en MySQL funciona de la siguiente manera, el servidor maestro escribe todas las actualizaciones en un fichero de log binario, y mantiene un índice de los ficheros para rastrear las rotaciones de logs. A su vez, el servidor esclavo, que mantiene una conexión abierta contínua con el maestro, es informado cuando sucede algún cambio en el log binario del maestro, y ejecutan estos cambios en sus tablas. … Seguir Leyendo
Publicado en
Linux, Windows el
25 de May de 2009 por
Manel Pérez Mata
Tags: Ubuntu, VirtualBox, Windows | (1 Comentario)

¿Utilizas Linux, pero necesitas ejecutar algún programa sólo para Windows? ¿Echas de menos el Photoshop o el Office? Pues VirtualBox es la solución. Con esta aplicación podemos virtualizar un Sistema Operativo desde tu Linux… no sólo Windows, sino cualquier otro sistema operativo de los que VirtualBoxtiene contemplado, por ejemplo, si quieres probar otra distribución de Linux o emular un Mac Os X Leopard.
En comparación con otras aplicaciones privadas de virtualizacion, como VMware Workstation o Microsoft Virtual PC, VirtualBox carece de algunas funcionalidades, pero provee de otras como la ejecución de máquinas virtuales de forma remota, por medio del Remote Desktop Protocol (RDP) o soporte iSCSI.
En una virtualización entran en juego dos conceptos, el de “sistema anfitrión” que es el sistema operativo original de nuestra máquina y “sistema huésped” que es el que será virtualizado. En mi caso concreto, el sistema anfitrión es Ubuntu Hardy Heron, y el huésped Windows XP puesto que es el más extendido actualmente. … Seguir Leyendo
Publicado en
Bases de datos, Programación el
23 de May de 2009 por
Jordi Anta Ugarte
Tags: Oracle, SQL | Añadir comentario
Muchas veces nos encontramos con la necesidad de crear un campo autoincremental en una tabla de nuestra base de datos. Típicamente suele usarse para generar una clave primaria para dicha tabla. Pues bien, la primera vez que nos enfrentamos con esta situación trabajando con Oracle, nos encontraremos con un grave problema que nos puede hacer perder mucho tiempo, puesto que, aunque parezca mentira, no existe ningún tipo de campo autoincremental en Oracle.
La solución es bastante sencilla (aunque no por ello deja de ser incómodo no disponer de un campo de este tipo directamente). Oracle dispone de un tipo de objeto denominado secuencia (SEQUENCE). Una secuencia tiene un valor inicial, un valor máximo y un valor de secuencia que incrementará cada vez que hagamos una llamada a la secuencia. … Seguir Leyendo
Publicado en
Frameworks, Programación el
22 de May de 2009 por
Manel Pérez Mata
Tags: Symfony | (3 Comentarios)
Esta artículo es la segunda parte de mis primeros pasos con Symfony, puedes ver la primer parte de como crear un proyecto con Symfony, donde se describe paso a paso como diseñar y generar el proyecto, crear las aplicaciones y los módulos y conectar nuestro proyecto con la base de datos.
En esta segunda parte, vamos a dar forma a la parte pública y privada, hacer uso del scaffolding para generar las acciones comunes CRUD (Create, Read, Update, Delete) o como tunear las URLs para conseguir un mejor posicionamiento. … Seguir Leyendo
Publicado en
Frameworks, Programación el
21 de May de 2009 por
Manel Pérez Mata
Tags: Symfony | (4 Comentarios)
Después de ver que es Symfony e instalar Symfony en nuestra máquina, voy a poner los pasos que he seguido, y los problemas que me he encontrado (junto con su resolución) para crear mi primer proyecto con Symfony.
Antes de ponernos manos a la obra, es imporatante entender como estructura Symfony el código. Todo proyecto creado por Symfony consta de una serie de carpetas y archivos que contienen el código base del framework. El árbol de carpetas de un proyecto es:

A su vez, los proyectos están divididos en aplicaciones y módulos, los cuales, suelen coincidir con las tablas de nuestra base de datos. En este primer proyecto, haremos un blog muy simple y le pondremos el nombre blog (para ser original), a su vez, estará formado por dos aplicaciones, el frontend (o la parte visible para los usuarios comunes) y el backend (el panel de administración). Por último, cada una de las aplicaciones tendrá dos modulos: post y comment:

Estructura proyecto Symfony
… Seguir Leyendo
Publicado en
Programación el
20 de May de 2009 por
Manel Pérez Mata
Tags: PHP | Añadir comentario
A pesar de que hace varios años que PHP5 vio la luz y de que su uso es ya super común, nunca me había parado a mirar con detenimiento cuales son las principales diferencias entre PHP4 y PHP5.
Después de dar un paseo por la fantástica documentación de PHP, dejan bastante claro que se centraron principalmente en conseguir un soporte decente para la Programación Orientada a Objetos y mejorar significativamente el rendimiento y las capacidades de PHP intentando conseguir la máxima compatibilidad con su versión 4, lo qual ha sido un detalle ya que facilita enormemente la migración. … Seguir Leyendo
Publicado en
Frameworks, Programación el
19 de May de 2009 por
Manel Pérez Mata
Tags: Symfony | (5 Comentarios)
El otro día os comentaba que és Symfony. Hoy os voy a explicar como instalarlo paso a paso de cuatro modos distintos, mediante PEAR, de los repositorios oficiales de Ubuntu/Debian, desde los repositorios Subversion y descargandonos el archivo de la web.
Cualquiera de las opciones que aquí os expondré són igualmente válidas para acondicionar nuestra máquina y usar Symfony, sin embargo, recomiendo instalarlo mediante PEAR o de los repositorios de Ubuntu/Debian para facilitar la actualización posterior.
… Seguir Leyendo