Cambiar la codificación de un archivo a UTF-8

Para pasar el archivo a UTF-8 con VIM hay que editar el archivo y poner: :set fenc=utf8
Con esto solucionarás el problema de mostrar caracteres extraños en páginas web si tienes Apache configurado con AddDefaultCharset UTF-8 en /etc/apache2/conf.d/charset

Más información: http://mindspill.net/computing/linux-notes/determine-and-change-file-character-encoding.html

Actualización: Es recomendable no habilitar AddDefaultCharset UTF-8 en Apache. En su lugar, hay que usar etiqueta meta de HTML:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Exportar un archivo a HTML desde vim

Una vez abierto un archivo con vim, podemos exportarlo a HTML con el siguiente comando dentro de vim: :so  $VIMRUNTIME/syntax/2html.vim

Ahí veremos que se abre un nuevo buffer con el código HTML, el cual salvaremos con: :wq

Si usamo un fondo negro en la consola, es posible que el HTML salga con fondo blanco y que los colores de las palabras se vean mal. Para eso, se puede modificar para que ponga un fondo negro en en HTML. Editamos el archivo /usr/share/vim/vimcurrent/syntax/2html.vim

439c439
<   let s:fgc = ( &background == "dark" ? "#ffffff" : "#000000" )
---
>   let s:fgc = ( &background == "dark" ? "#ffffff" : "#ffffff" )

442c442
<   let s:bgc = ( &background == "dark" ? "#000000" : "#ffffff" )
---
>   let s:bgc = ( &background == "dark" ? "#000000" : "#000000" )



UUID y fstab

He visto que el fstab de Debian Squeeze ha cambiado y ya no usa las antiguas entradas (por ejemplo /dev/hda1, /dev/hdc1) para nuestros discos, si no que usa UUID=identificador_unico

¿Qué ventaja tiene?
Pues teniendo entradas /dev/hda1 y /dev/hdc1 en el fstab, si cambiamos de IDE (cambiar el cable físicamente), tendremos que el antiguo /dev/hda1 se convierte en /dev/hdc1 y viceversa, con lo cual el sistema no arrancará. Si usamos entradas con el UUID, da igual la conexión física en la placa o la configuración (maestro/esclavo) que se tenga porque los discos serán reconocidos por su identificador único.

Si queremos saber el UUID de nuestros discos, podemos hacerlo con vol_id /dev/nuestro_disco:

debian:~# vol_id /dev/hda1
ID_FS_USAGE=filesystem
ID_FS_TYPE=ext3
ID_FS_VERSION=1.0
ID_FS_UUID=383ef386-8da7-4b20-953e-9fb7618f6d50
ID_FS_UUID_ENC=383ef386-8da7-4b20-953e-9fb7618f6d50
ID_FS_LABEL=
ID_FS_LABEL_ENC=
ID_FS_LABEL_SAFE=

Ahora en el fstab modificaríamos la entrada /dev/hda1 por la nueva con el UUID:

UUID=383ef386-8da7-4b20-953e-9fb7618f6d50   /   ext3    errors=remount-ro   0   1

Instalar dependencias para compilar un paquete

Si alguna vez has tenido/querido compilar el mldonkey-server desde archivos fuente, te habrás dado cuenta que necesita unas cuantas librerías development cuando haces el configure.

La forma más sencilla de hacerlo es con:

apt-get build-dep mldonkey-server

Obviamente, para otro paquete, cambiaríamos mldonkey-server por lo que corresponda.

Firmar correos con DKIM y exim4

Con DKIM podemos autenticar correos electrónicos para que nuestros correos no sean marcados como spam. La configuración de Exim es send-only (sólo para enviar correos).

Primero reconfiguramos exim4 para poder enviar y recibir correos electrónicos usando SMTP: dpkg-reconfigure exim4-config
En las opciones seleccionamos lo siguiente:

internet site; mail is sent and received directly using SMTP
dominio.com
<blanco>
host.dominio.com;host;localhost.localdomain;localhost
<blanco>
<blanco>
No
mbox format in /var/mail/
Yes

Ahora creamos las claves para firmar los correos:

mkdir -p /etc/exim4/dkim
chown Debian-exim /etc/exim4/dkim/
chmod u=rx,go= /etc/exim4/dkim/
openssl genrsa -out /etc/exim4/dkim/dominio.com.private.key 2048
openssl rsa -in /etc/exim4/dkim/dominio.com.private.key -pubout

El último comando nos dará la clave pública que hay que usar en la configuración DNS de nuestro dominio. Deberemos crear una entrada TXT en nuestro servidor de la siguiente forma:

exim._domainkey TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqG(...recortado...)0N7BNi4CZVkylsqnYuRuuot/N0XQIDAQAB"

No es necesario añadir una entrada MX porque eso sólo es para recibir correos.

El último paso es configurar exim para que use esta configuración: vi /etc/exim4/conf.d/transport/10_exim4-config_transport-macros

DKIM_DOMAIN = ${lc:${domain:$h_from:}}
DKIM_FILE = /etc/exim4/dkim/dominio.com.private.key
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
DKIM_SELECTOR = exim

Ojo al DKIM_SELECTOR, que debe ser el mismo que hay en la línea de DNS exim._domainkey. Después de esto, reiniciamos el exim: /etc/init.d/exim4 restart

Para comprobar si funciona, mandar un correo a check-auth@verifier.port25.com

Otras formas de comprobar:
http://www.myiptest.com/staticpages/index.php/DomainKeys-DKIM-SPF-Validator-test
http://www.brandonchecketts.com/emailtest.php