Autenticación web con Apache

Para realizarla autenticaciónde usuarios a través de Apache, hay que añadir las siguientes directivas en el fichero de configuración de Apache (por defecto /etc/httpd/httpd.conf).

<Files "mailgraph.cgi">
AuthUserFile /var/www/mailgraph/.htpasswd
AuthName "Mailgraph"
AuthType Basic
require valid-user
</Files>

Con esto se consigue que se compruebe el usuario al acceder al fichero «mailgraph.cgi» en función de los usuarios provisionados en el fichero /var/www/mailgraph/.htpasswd

Para provisionar usuarios en este fichero, se utiliza el siguiente comando:

/usr/sbin/htpasswd /usr/share/mailgraph/.htpasswd nombreUsuario

Comandos Unix para administrar sistemas

Hoy he descubiertos dos nuevos comandos para Unix bastante útiles a la hora de la administración de un sistema:

  • pstree -cpal: Muestra de forma jerárquica los procesos que tiene el sistema corriendo.
  • pstree -p 2323: Muestra la jerarquía de procesos a partir del proceso 2323.
  • lsof: (ls Open Files) Muestra los descriptores de fichero que tiene el sistema abiertos, ya sean descriptores de ficheros, o conexiones de red… que UNIX las trata también como descriptores de fichero.
  • watch -d: Ejecuta un comando cada X segundos, y muestra la diferencia de la salida por pantalla con respecto a la iteración anterior.

Más información: watch, lsof, pstree.

Warning en postfix

Hoy he visto el warning.log que genera Postfix, y me he encontrado la siguiente línea:

Sep  1 01:30:49 apaair postfix/smtpd[23271]: warning: database /etc/postfix/aliases.db is older than source file /etc/postfix/aliases

Esto indica que se ha actualizado el fichero /etc/postfix/aliases y no se ha actualizado un base de datos que utiliza Postfix.

Para solucionarlo, basta con ejecutar lo siguiente:

postalias /etc/postfix/aliases

Importar datos de MySQL de latin1 a UTF8

Hoy me he topado con un pequeño incoveniente al intentar importar una base de datos que estaba en un equipo con MySQL 12.21, y la quería copiar a un equipo que tenía MySQL 14.12.
El problema residía en que la base de datos origen tenía un tipo de carácteres distintos (latin1) a la base de datos destino (UTF8).

La solución fue la siguiente:

mysql -uusername -p dbname --default-character-set=latin1 < bbdd_original.sql

Así conseguí que se exportaran los datos sin problemas de codificación de los carácteres.

Enlace

Comando find de Unix (GNU/Linux)

Existe un comando en sistemas Unix muy útil para poder encontrar ficheros con determinadas
características, es el comando find.

  • Para buscar los ficheros más grandes del sistema:
    find / -size +100000k -exec ls -lh '{}' ;
  • Para buscar los ficheros modificados recientemente (Último día):
    find / -mtime 0 -exec ls -lh '{}' ;
  • Para buscar los ficheros modificados recientemente (Último minuto):
    find / -mmin 0 -exec ls -lh '{}' ;

Para buscar ficheros de una fecha especifica, se puede intentar con lo siguiente:

$ ls -l | grep “`date ‘+%b %d’` 09:[1-5][0-9]“

que buscaría los ficheros modificados hoy entre las 9.00 y las 9.59… aunque seguro que hay alguna forma mejor de hacer esto. ¿A alguien se le ocurre?

Curriculum Vitae Profesional con LaTeX

He encontrado un paquete llamado moderncv que ofrece una plantilla bastante profesional para realizar un curriculum vitae.

Para instalarla:

sudo apt-get install texlive-latex-extra texlive-fonts-recommended lmodern

  • texlive-latex-extra: contiene el paquete moderncv y muchos más.
  • texlive-fonts-recommended: contiene las fuentes marvosym necesarias para el funcionamiento de moderncv.
  • lmodern: contiene las fuentes lmodern.

Enlace

Instalar Latex en Ubuntu

Para instalar LaTeX en tu Ubuntu, debes de instalar los siguientes paquetes:

sudo apt-get install texlive-latex-base

si necesitáis más paquetes para LaTeX como ifpdf, podéis instalarlo así:

sudo apt-get install texlive-latex-recommended

Para instalar la fuente marvosym tienes que instalar lo siguiente:

sudo apt-get install ttf-marvosym

Para instalar el paquete ldesc2e.sty, primero nos debemos descargar el fichero, y luego guardarlo en el siguiente directorio:

/usr/share/texmf-texlive/tex/latex/ldesc2e

/usr/share/texlive/texmf/tex/latex/ldesc2e

para que se guarden los cambios, ejecutaremos

sudo texhash

Manual para instalación

Y para posteriormente crear ficheros en PDF, te puede ayudar este documento.

Comprimir Ficheros en Linux

Hay varias formas de comprimir ficheros en Linux.

La que yo uso normalmente es la siguiente, ya que sirve tanto para comprimir ficheros, como directorios:

Ficheros .tar.gz

  • Comprimir: # tar -czf archivo.tar.gz ficheros
  • Descomprimir: # tar -xvzf archivo.tar.gz
  • Ver contenido: # tar -tzf archivo.tar.gz

Instalar PHP PEAR en Linux

PHP Pear, es un framework, que contiene un montón de librerías con código en PHP, y que puede ser muy útil para ciertas necesidades de funciones en PHP.

En este caso, voy a explicar cómo instalarlo desde la línea de comandos.

Primero descargamos el paquete PEAR.

El paquete se descarga así:

wget http://pear.php.net/get/PEAR-1.4.3.tar

Una vez descargado, procedemos a descomprimirlo:

tar xvf PEAR-1.4.3.tar

Ya está instalado. Ahora debemos de incluir las siguientes líneas que indican la ruta donde se ha instalado PEAR, en los ficheros que usen las librerías de PEAR.

$RUTA = "/home/pepito/pear";
ini_set("include_path",ini_get("include_path").":".$RUTA);

¡Y ya está!

Ahora si quisieramos usar un generador de hojas excel, existe un pequeño tutorial en español.