13 de octubre de 2010

Instalando Cherokee y MoinMoin en ArchLinux

Instalación de ArchiLinux

ArchLinux (http://www.archlinux.org/) es una distribución de Linux que tiene como objetivo la simplicidad, «Keep It Simple» es su eslogan. Hace algún tiempo había oído hablar bastante bien de ella, pero no había encontrado el tiempo para probarla.

Como también estaba pensando en reorganizar la red en casa, pensé que esta era una buena oportunidad para probar esta distribución.

La instalación es bastante similar a otras distribuciones, aunque sólo en modo texto, el instalador sigue una secuencia de pasos y nos va presentando opciones. Desde aquí puede verse una de las características de ArchLinux, siempre supone que el usuario sabe que es lo que esta haciendo. Por ejemplo un paso antes de finalizar la instalación es presentar al usuario una lista con los archivos de configuración para que pueda customizar el sistema por completo.

En caso de duda uno puede ayudarse de la guía oficial para los detalles más puntuales y la guía para principiantes, si es la primera vez que usan ArchLinux.
De todos me encontré con un par de inconvenientes:

  • Antes de terminar la instalación, grub no podía instalar el sector de arranque en /dev/vda (la instalación fue en una máquina virtual de kvm usando virt-manager). Consultado el wiki entre la solución, primero hay que hacer que la instalación falle, de manera que los archivos necesarios queden en /boot, y luego proceder como en el wiki. 
  • Al iniciar el arranque no encuentra /dev/vdaX para montar como directorio root. El problema es que el disco de inicio o initrd no contiene los drivers para virtio (virtio_blk, virtio_pci), consultando de nuevo el wiki la solución es agregar al final de la instalación los drivers al tener la oportunidad de configurar el archivo mkinitcpio.conf.
Una pieza fundamental para un servidor es openssh, cuya instalación es ejectuar pacman -S openssh y editar los archivos /etc/hosts.allow y /etc/hosts.deny para permitir conexiones. Pueden consultar el wiki para más detalles.

El resto es bastante simple para pacman -Syu para sincronizar y actualizar con los repositorios. 
Instalación de Cherokee y MoinMoin

Para instalar Cherokee ejectuamos pacman -S cherokee, queremos que cherokee se ejecute desde el inicio del sistema tenemos que modificar el archivo /etc/rc.conf y agregar cherokee a la línea DAEMONS.
Una de las ventajas de Cherokee es que tiene un wizard que automatiza la tarea de editar el archivo de configuración, simplemente apuntando donde están los archivos de MoinMoin y spawn-fcgi.
Para poder ejectuar MoinMoin necesitamos instalar spawn-fcgi y moinmoin, para ello basta pacman -S moinmoin spawn-fcgi.

Ahora necesitamos preparar un directorio para que puede ser utilizado por la instalación de MoinMoin. Por ejemplo:

Creamos la carpeta
# mkdir /srv/http/wiki
# cd /srv/http/wiki
Copiamos los archivos de configuración y creamos un enlace para los archivos estáticos
# cp -R /usr/share/moin/* .
# cp server/moin.fcgi config/wikiconfig.py .
# ln -s /usr/lib/python2.6/site-packages/MoinMoin/web/static/htdocs htdocs
Corregimos permisos para que sean accesibles por el servidor web
# chown -R http:http /srv/http/wiki
# chmod -R ug+rwx /srv/http/wiki
# chmod -R o-rwx /srv/http/wiki
Nota: Opté por el camino más simple de copiar todos los archivos pero al parecer no todos son necesarios en una instalación y se podría evitar copiar algunos.
Ahora usando el wizard de Cherokee podemos agregar nuestro MoinMoin. Comprobar que en Sources este correctamente seteado en el interprete que archivo debe ejecutar /srv/http/wiki/moin.fcgi (la línea aparecía trunca en mi servidor).

Para terminar de configurar MoinMoin puede servirse de alguna de las guías del wiki. Pueden usar como punto de partida las guías para Ubuntu o Centos, obviando la parte de la instalación de paquetes.

Para un próximo artículo la instalación de Gitweb en Cherokee.

Update (02/11): Debido a una reciente actualización del interprete default de python a la versión 3.x, mi setup dejo de funcionar. Para arreglarlo seguí parte de este artículo, en concreto lo que me ayudo es borrar los archivos en la cache, en mi caso también tuve que editar algunos archivos .py para que apunten al intérprete correcto /usr/bin/python2.

No hay comentarios.:

Publicar un comentario