Configurar vlans, bondings y IPv6 en un Proxmox

Venga, hoy tenemos una configuración completita! :)

Nos encontramos con un equipo que tiene instalado proxmox y quiero que sus contenedores puedan tener vlan. Toda feliciana me propongo de pasar olímpicamente de configurar las vlan con el proxmox ya que alguna vez lo he intentado desde el interfaz y no hay ni un solo menú que sirva para realizar esta tarea.

Como es normal, busco en el blog para manuales de referencia y me pongo a seguir éste: Configurar vlans con GNU/Linux. Pero me encuentro que no me hace ni puñetero caso, así que buscando por internet leo que es necesario tener el módulo 8021q activado, así que trato de activarlo y el sistema dentro del contenedor me suelta palabrotas:

root@murzim-dnsnat64:/# modprobe 8021q
libkmod: ERROR ../libkmod/libkmod.c:505 kmod_lookup_alias_from_builtin_file: could not open builtin file '/lib/modules/2.6.32-27-pve/modules.builtin.bin'
FATAL: Module 8021q not found.

Instalar zimbra 8 + ubuntu 12.04

Los que me conocéis sabéis la tirria que le tengo a ubuntu, pero cuando se trata de superpaquetes ya preparados bajo esta distribución y además que te dan soporte, pues se tiene que pasar por el aro :(

Así que vamos a instalar zimbra 8 en una ubuntu 12.04 virtualizada en un contenedor vz.

Con el contenedor ya preparado lo primero que tendremos que hacer será desinstalar unos paquetes que vienen instalados by default en este template:

# apt-get remove --purge apache2 apache2-doc apache2-mpm-prefork apache2-utils apache2.2-bin apache2.2-common bind9 bind9-host bind9utils sendmail sendmail-base sendmail-bin sendmail-cf sendmail-doc sensible-mda bsd-mailx rmail samba

Nos descargamos el paquete de zimbra community 8 de esta web.…

tvenlinux

¿Qué es tvenlinux? Sencillo script en bash para ver y grabar televisión en sistemas GNU/Linux / BSD sin tarjeta capturadora. Solo se necesita una conexión a Internet, tener instalado Mplayer, Curl, Rtmpdump y Zenity para entornos Gtk o Kdialog para escritorio que usen Qt como KDE.

URL: http://www.tvenlinux.com/

Proxmox: Montar particiones del host amfitrión a la máquina virtual

Tenemos el ejemplo de un hd externo con los backups

amfitrión] mount -t auto /dev/sdc2 /mnt/hd
amfitrión] mount -n -t simfs /mnt/hd /var/lib/vz/root/105/mnt/hd -o /mnt/hd
amfitrión] vzctl enter 105

root@v-www-conway:/# ls /mnt/hd
backup_conway  backups_vonneuman  ibdata1      ib_logfile1  mysql               wikies
backup_sda3    debian-5.0.flag    ib_logfile0  lost+found   mysql_upgrade_info

root@v-www-conway:/# mount
/dev/simfs on / type simfs (rw)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid)
proc on /proc type proc (rw,nosuid,nodev,noexec)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec)
/dev/sdc2 on /mnt/hd type ext3 (rw,data=ordered)

root@v-www-conway:/# fdisk -l
cannot open /proc/partitions

root@v-www-conway:/# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/simfs             20G   13G  6.6G  66% /
tmpfs                 4.0G     0  4.0G   0% /lib/init/rw
tmpfs                 4.0G     0  4.0G   0% /dev/shm
/dev/sdc2             114G   47G   62G  43% /mnt/hd

Mas info Bind mounts

Proxy transparente dentro de un contenedor openVZ

Todos sabemos que los contenedores cuando se trata de comunicarse con el núcleo del sistema operativo siempre nos deja algun regalito, así que aquí tenemos otro caso, en este caso queremos montar un proxy transparente dentro de un contenedor OpenVZ (Proxmox).

Nos encontramos que queremos ejecutar una línea de iptables en nuestro contenedor, pero nos sale este error:

iptables v1.4.8: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

Lo primero de todo tendremos que configurar el fichero /etc/vz/vz.conf y comentaremos la línea con el parámetro IPTABLES= y pondremos otra así:

IPTABLES="ipt_REJECT ipt_recent ipt_owner ipt_REDIRECT ipt_tos ipt_TOS ipt_LOG ip_conntrack ipt_limit ipt_multiport iptable_filter iptable_mangle ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_length ipt_state iptable_nat ip_nat_ftp"

Instalar plataforma goteo en nuestro server

Goteo es una plataforma de crowdfunding diseñada por la gente de platoniq.net, si los mismos que en 2005 desarrollaron la magnífica burnstation :) así que vamos a instalar esta magnífica herramienta en nuestro servidor.

Primero iremos a la página del proyecto en github y nos descargamos los ficheros, podemos descargar directamente todo el código desde github o bien usar el .zip con la ultima revisión.…

Añadir disco tras instalar proxmox pve 2.1

Justo acabo de instalar una máquina con la ISO de Proxmox pve 2.1, pero dicha instalación sólo permite hacerla sobre un solo disco y posiblemente nos interesa ampliar el tamaño que destinamos a las maquinas virtuales y contenedores con el otro disco.

Si nos fijamos, la instalación se ha hecho sobre particiones LVM, así que simplemente tendremos que ampliar la partición LVM data.

# lvscan
  ACTIVE            '/dev/pve/swap' [4.00 GiB] inherit
  ACTIVE            '/dev/pve/root' [37.25 GiB] inherit
  ACTIVE            '/dev/pve/data' [91.26 GiB] inherit

Como borrar los adjuntos de los mails de mailman

Los usuarios pocas veces se percatan de que los servicios que usan tienen unos recursos limitados y algunos tienen la sana costumbre de usar una lista de correo como si se tratase del envío de un mail a otra persona. ¿Pero qué ocurre cuando un usuario manda un correo a una lista de correo con cientos de suscritos en ella? ¿y encima que el administrador de la lista permita la moderación de estos mails? pues primero de todo que este fichero se tiene que mandar a todos y cada uno de los miembros de la lista, haciendo que el servidor tenga que enviar un montón de datos que quizás no serán nunca leídos; la segunda que estos datos se quedan en el servidor en los archivos, unos archivos que probablemente ningún otro usuario descargará.

Así que ante esto, y con el permiso del administrador de la lista, vamos a proceder con el vaciado de adjuntos de una lista de correo.

Antes de empezar tenemos que analizar donde se guardan estos archivos:
– directorio attached de los archivos
– fichero mbox de la lista

así que tenemos los adjuntos 2 veces, cosa que incrementa por 2 el tamaño total de la lista.…

dudle: alternativa opensource a doodle

¿Cuantas veces has estado usando el doodle, esta magnífica herramienta pero te ha jodido a lo grande que fuese cerrada? ¡pues de la mano de Benjamin Kellermann, aquí llega dudle! el programa de encuestas que hace lo mismo que doodle y totalmente personalizable e instalable en tu servidor!

Dudle es un software desarrollado en ruby y su instalación es un poco distinta a la que estamos acostumbrados en un PHP+MySQL, además de que dudle no usa ninguna base de datos relacional, simplemente crea un directorio con un fichero de texto llamado data.yaml con todas las opciones.…

Gif animado lluvias meteocat.com

Pues harta ya de cada vez que llueve tener que ir a la página de meteocat.com a mirar simplemente lo que me interesa, hago que una maquina lo haga para mi y me genere un gif animado para ponerlo en el desklet del escritorio.

Para hacerlo funcionar simplemente necesitamos php5-gd:

# apt-get install php5-gd

el código

# Generador d'imatge animada del radar metereològic meteocat.com
# Desenvolupat per Blackhold
# 2011-11-16

# I get the json file
$file= file_get_contents("http://www.meteo.cat/servmet/radar/images/cappicor_catalunya_10dBZ/images.json");

# And process the data
#var_dump(json_decode($file));
$parsed=json_decode($file);
$array=$parsed->{'items'};

//echo $array[0]->{'src'};

$length=count($array);

for ($i=0;$i{'src'},"./"));

        imagegif($png, "./meteo.".$i.".gif");

        imagedestroy($png);
}

exec("/usr/bin/convert -delay 60 -loop 0 ./meteo.*.gif ./meteo.gif");
exec("rm ./meteo.*.gif");

Y para que se vaya actualizando de vez en cuando lo añadimos al cron que lo vaya verificando cada 6 minutos, periodo con el que se actualiza el json de meteocat.

# vi /etc/crontab
# generador meteocat
*/6 * * * * root php /var/www/meteocat.php

Aquí os dejo con un ejemplo (no abusar! el código es muy simple, lo puedes poner en local o en un servidor tocho -compartid los links!-).