Recuperar la contraseña de root a MySQL
Paramos MySQL y lo iniciamos MySQL de forma segura:
sudo /etc/init.d/mysql stop sudo mysqld_safe –skip-grant-tables &
Entramos con el nombre de usuario root y seleccionamos la base de datos:
mysql -u root use mysql;
Ejecutamos esta sentencia cambiando “xxx” por la nueva contraseña que queramos:
update user set password=PASSWORD("xxx") where User='root';
Refrescamos los permisos y salimos de MySQL:
flush privileges; quit
Reiniciamos MySQL:
sudo /etc/init.d/mysql restart
Instalar mcrypt en Ubuntu 8.04.3 server LTS
Estoy repreparando el servidor personal que utilizo para proyectos de desarrollo. Lo he hecho desde cero por que la vez anterior lo hice hace tiempo y sin dejar nada documentado sobre lo que se hacía, de manera que con el tiempo y mi pobre memória he acabado olvidándome de casi todas las contraseñas que puse… por eso he hecho copias de seguridad de todo y he vuelto a reinstalar el sistema. Quería instalar debian, como tenía antes, pero aún no sé por qué no me aceptaba el disco… y por eso he usado un Ubuntu Server… que tampoco está mal, y menos para mí que no sé demasiado de esto.
El caso es que necesitaba el paquete mcrypt, y no sé por qué no estaba en los repositorios que venían… por lo que he leido eso acaba siendo un problema para bastante gente que como yo ha buscado ayuda… (que al final ha resultado estar en la misma página de ubuntu). Lo que he tenido que hacer es, añadir un nuevo repositorio en el archivo sources.list para que busque ahí el paquete que necesito, php5-mcrypt.
Editamos el archivo sources.list
nano /etc/apt/sources.list
Y se añade la linea
(si nuestro servidor es amd64, si es otro visita la página de ubuntu para buscar el tuyo)
http://packages.ubuntu.com/hardy/amd64/php5-mcrypt/download
Actualizamos la lista de paquetes:
apt-get update
Y ahora ya se puede instalar el paquete que quería:
apt-get install php5-mcrypt
Ahora sólo queda reiniciar Apache para que tenga sentido el trabajo hecho:
/etc/init.d/apache2 restart
RMDIR recursivo en PHP
Para eliminar directorios con php se utiliza la función rmdir(), el problema es que esa función no permite borrar carpetas que contengan algo, ya sea otras carpetas vacías o archivos.
Se pueden hacer funciones para eliminar carpetas y su contenido utilizando sólo php, de hecho en el manual de rmdir en php.net se pueden ver algunas en los comentarios, pero no es eso lo que me interesa. Lo que voy a explicar es cómo hacerlo utilizando comandos del sistema (en unix, los de windows no tengo ni idea).
La cosa es sencilla, para ejecutar comandos del sistema se utiliza la función exec() de PHP.
Por ejemplo:
echo '<ol>';
if(exec('rm -frv /el/directorio/a/borrar/',$salida)){
foreach($salida as $line){
echo '<li>'.$line.'</li>';
}
}else{
echo '<li>Error al eliminar archivos</li>';
}
echo '</ol>';
Como se ve, he utilizado el comando rm con las opciones -frv, la f es para forzar (ignora archivos inexistentes), la r para que sea recursivo y la v (de verbose) para que explique lo que esta haciendo. Si queréis, en la wikipedia hay mas información sobre el comando rm.
Vectorizando 8. Mercè
He hecho otro dibujo. Estoy bastante contento con el resultado pero creo que no haré ninguno más… resulta un poco triste decirlo, pero bueno, me duelen las manos cuando cojo el lápiz, al principio me daba igual pero ahora duele como para tomarselo en serio xD. El caso es que he tardado algo más de dos semanas (tomándomelo con calma, claro) y ha sido el primer dibujo que he hecho dese el Photoshop de Mac (ha sido exactamente lo mismo).
Vectorizando 8, Mercè from Josep Viciana on Vimeo.
