Diferencia entre apt-get update y apt-get upgrade

Cada día intentan ocultarnos más el trasfondo del sistema de paquetes, que bastante ya abstrae de la instalación de software, con programas como el Centro de Software de Ubuntu. Sin embargo, apt, aptitude y el sistema en sí siguen estando ahí detrás y en más de una ocasión tendrás que usarlos.

Una duda frecuente que surge con esta problemática es la siguiente, ¿qué diferencia hay entre apt-get update y apt-get update?

  • apt-get update: actualiza la lista de paquetes disponibles y sus versiones, pero no instala o actualiza ningún paquete. Esta lista la coge de los servidores con repositorios que tenemos definidos en el sources.list.
  • apt-get upgrade: una vez el comando anterior ha descargado la lista de software disponible y la versión en la que se encuentra, podemos actualizar dichos paquetes usando este comando: apt-get upgrade. Instalará las nuevas versiones respetando la configuración del software cuando sea posible (esta es la maravilla de este tipo de sistemas).

Mención aparte existe el dist-upgrade, la diferencia entre apt-get upgrade y apt-get dist-update la comentaremos en una entrada posterior. read more

Leer más » 3 Comentarios

Comprobar el estado de la caché de MySQL

mysql-caching-techniquesHace unos días hablamos de cómo activar la caché de MySQL. Espero que la hayáis probado y que hayáis visto cómo vuestros tiempo de consulta se reducen considerablemente con sólo activarla. Os dije que os comentaría cómo monitorizarla y de esa promesa, esta entrada.

Soy de los que dice que algo por bien que funcione, si no puede medirse, no funciona tan bien. Las sensaciones son esos y aunque veamos que el tiempo de ejecución ha caído, no sabemos nada sobre la caché. Todos los que hayáis estudiado algo relacionado con la informática, conoceréis conceptos como la tasa de fallos y de aciertos de cualquier caché y ésta, no podía ser menos.

¿Cómo podemos ver esos datos? Veamos.

Comprobar si la caché está activada

Para esta labor usaremos el siguiente comando (siempre desde la consola de MySQL):

SHOW VARIABLES LIKE 'have_query_cache';

Que nos devolverá si está activada lo siguiente:

+------------------+-------+
| Variable_name | Value |
+------------------+-------+
| have_query_cache | YES |
+------------------+-------+

Parámetros de estado

Para ver todos los parámetros del estado de la caché, una vez sabemos que está activada hacemos:

SHOW STATUS LIKE 'Qcache%';

Y el resultado es el siguiente:

+-------------------------+-----------+ | Variable_name | Value | +-------------------------+-----------+ | Qcache_free_blocks | 3409 | | Qcache_free_memory | 501720656 | | Qcache_hits | 3265000 | | Qcache_inserts | 1321208 | | Qcache_lowmem_prunes | 0 | | Qcache_not_cached | 72160 | | Qcache_queries_in_cache | 10027 | | Qcache_total_blocks | 24143 | +-------------------------+-----------+ read more

Leer más » 3 Comentarios

Consola de recuperación de Ubuntu: quitar modo de sólo lectura, permitir escritura

Probablemente en alguna ocasión os hayáis tenido que enfrentar a la consola de recuperación de Ubuntu. El problema más frecuente en estos casos suele venir derivado del servidor gráfico: problemas al configurarlo, con el controlador de la tarjeta gráfica o al trastear con diferentes entornos de escritorio.

Ubuntu 13.04 logo

Una vez el sistema gráfico no funciona y sólo nos queda entrar en la consola de recuperación, ésta, nos ofrece una terminal en la que el sistema de ficheros, el nuestro, está montado en modo de sólo lectura. Sin embargo, somos superusuarios y podemos cambiar esto rápidamente. read more

Leer más » 3 Comentarios

Integración de sistemas y servicios distribuidos con OpenLDAP

Me ha llegado desde una lista de correo el siguiente manual sobre OpenLDAP. Me gustaría compartirlo con vosotros mediante esta vía para darle difusión.

ldap_linux_hispano

Prefiero no replicar contenido. Podéis encontrarlo desde el siguiente enlace.

Leer más » 1 Comentario

Determinar si un vector está aumentando constantemente – Curso Octave

NOTA: este tutorial es parte del curso de Octave de Linux Hispano.

Os voy a proponer un pequeño ejercicio a resolver. Más adelante tenéis la solución pero en un principio me gustaría que lo intentáseis por vosotros mismos.

El ejercicio es el siguiente: Crea una función, incrementa_vector_constantemente.m, que reciba un vector de números. Dicha función devuelve true si los elementos del vector van aumentando constantemente. De lo contrario devuelve false.

Leer más » 6 Comentarios

Comprimir imágenes JPG con Jpegoptim

Hace unos meses os contaba cómo comprimir imágenes en formato PNG con la herramienta OptiPNG pasando a obtener una imagen con la misma calidad y menor tamaño. Ahora veremos su homólogo para reducir el tamaño de imágenes en formato JPEG a través de la herramienta Jpegoptim.

jpegoptim

Veamos cómo instalar Jpegoptim en nuestra distro, en el caso de Debian/Ubuntu/Mint, podemos abrir un terminal y continuar como sigue:

ahornero@6581-D:~$ sudo apt-get install jpegoptim

Ya instalado, vamos a probar. Me dirijo al directorio Pictures y lanzo el comando sobre una única imagen:

ahornero@6581-D:~/Pictures$ jpegoptim IMG018.jpg

Y una vez lanzado obtendremos lo siguiente como salida, sonde se aprecia una reducción de tamaño del 2.43%:

IMG018.jpg 2592×1944 24bit Exif [OK] 1778140 –> 1734850 bytes (2.43%), optimized.

Esto esta muy bien, pero ¿y si quiero aplicarlo a toda mi galería de imágenes?

Leer más » 2 Comentarios

Cómo borrar archivos de un sólo tipo y de forma recursiva

Nos encontramos ante la siguiente situación: tenemos en una ruta determinada, formada por varias carpetas, un tipo de fichero que queremos borrar conservando el resto.

La solución si hablamos de dos carpetas y tres ficheros es hacerlo a mano, si tenéis más carpeta o más ficheros, debéis usar la solución que abajo os propongo y que hace uso de las bondades de la terminal.

Si no estáis seguros de lo que vais a hacer lo mejor es que pida confirmación entre borrado y borrado.

Veamos un ejemplo: queremos borrar todos los ficheros PDF que existen en nuestro directorio actual y en todos sus hijos:

find . -type f -name "*.pdf" -exec rm -i {} \;

Leer más » 9 Comentarios

rsync a través de SSH con ficheros PEM

Si ya hemos hablado en entradas anteriores de copiar ficheros mediante SCP usando un fichero PEM para autenticarse y de conectarse a un servidor por SSH con un fichero de certificado digital PEM, hoy seguimos nuestra serie dedicada al manejo de conexiones seguras con ficheros PEM con el uso de rsync.

Como veis son tips muy cortos pero verdaderamente útiles en ambientes como Amazon Web Services donde este tipo de autenticación es frecuente.

Lo único que debemos hacer en este caso es indicar el tipo de comunicación, mediante SSH y más concretamente usando dicha clave:

rsync -e "ssh -i miclave.pem"

Un ejemplo completo podría ser:

Leer más » 1 Comentario

¿Cómo desmontar un dispositivo cuando está ocupado? Device is busy

Os pongo en situación, habéis montado de forma manual o automática cualquier dispositivo: desde una carpeta usando SMB o CIFS, o un USB extraíble o un CD-ROM y al ir a desmontarlo recibimos un aviso así que nos lo impide:

# umount /media/disco/
umount: /media/disco: device is busy

¿Qué significa esto? Que hay algún proceso que está usando el punto de montaje. ¿Quién? fuser nos lo dice:

# fuser -m /dev/sdc1
/dev/sdc1: 928

Es el proceso con identificador 928, veamos más datos sobre él, eso tenemos ps ayudado por grep:

Leer más » 5 Comentarios

Insertar clave de Akismet desde el wp-config.php

Logo AkismetAkismet es un plugin de WordPress y es un modelo de negocio que me encanta en sí mismo. Ofrece un servicio básico para los que usamos blogs: aislar el spam de forma inteligente, y hay que pagarlo o no, depende para qué lo usemos, haciendo del Software Libre un modelo económico viable, amable y a la vez justo.

Pero bueno, dejando de lado esas consideraciones, hoy os comento cómo meter la clave API de Akismet que conseguís al registraros, para poder usar el servicio.

Probablemente todos conozcáis el método por el cuál introduces la clave API en el escritorio de WordPress. Este método tiene tres problemas, de menor a mayor importancia:

  • Es más lento que el que os voy a inscribir.
  • Es muy pesado si tenemos una red WordPress con muchos blogs (hay que replicar uno a uno).
  • En algunas instalaciones, sobre todo de WordPress Network, el interfaz gráfico de usuario para meter la clave está deshabilitado por un problema técnico que aparece por restricción de permisos. Es un bug y hay varios tickets al respecto.

¿Cuál es la idea que os planteo? Introducirlo directamente en vuestro wp-config.php, exactamente así:

Leer más » 2 Comentarios