Wikipedia Offline con Kiwix
El proyecto kiwix nos permite tener una copia de la Wikipedia en distintos idiomas. Además de un programa para consultar la Wikipedia localmente, Kiwix posee un servidor HTTP (kiwix-serve) que permite extender el servicio a una red local.
En este caso queremos colocar la wikipedia en nuestro nodo para LaOtraRed.
Requisistos
Estamos asumiendo que el equipo que será el servidor con kiwix es GNU/Linux Debian o un derivado, y que el S.O. instalado es de arquitectura x86 64 bits.
- Descargar la imagen de la wikipedia en el idioma que necesitamos, las últimas imágenes acutalizadas de wikipedia se pueden descargar aquí.
Kiwix puede funcionar con bibliotecas dinámicas para optimizar el uso de memoria y espacio de almacenamiento , pero en este caso usaremos las bibliotecas estáticas que trae el archivo .zip que descarguemos.
Ejecutar kiwix-serve
En Debian 8 el procedimiento es:
- Descomprimir todo el contenido del archivo .zip que hemos descargado
- Descomprimir los ejecutables de
kiwix-serve
, estos ejecutables estan en el fichero comprimidokiwix-linux.tar.bz2
- Dentro el directorio descomprimido buscar
bin/kiwix-serve
. - Probarlo con:
./kiwix-serve --port=7511 --library ../../data/library/wikipedia_es_all_2016-02.zim.xml
Se debería ejecutar sin problemas y podemos probarlo abriendo un navegador web y colocar en la URL: localhost:7511
.
Ejecutar kiwix-serve al inicio con systemd
Podemos hacer que systemd se encargue de ejecutar el servicio automáticamente y además nos dará la posibilidad controlar el servicio mediante systemctl
.
Podemos crear un nuevo archivo para el servicio en /etc/systemd/system/kiwix.service
con contenido:
[Unit] Description=kiwix deamon After=network.target [Service] User=www-data Group=www-data WorkingDirectory=/ruta/kiwix-linux/bin/ ExecStart=/ruta/kiwix-linux/bin/kiwix-serve --port=7511 --library ../../data/library/wikipedia_es_all_2016-05.zim.xml [Install] WantedBy=multi-user.target
Donde /ruta
es la ubicación absoluta de la wikipedia descargada en el sistema. y 7511 es el puerto reservado para el programa.
Para iniciar el servicio:
sudo systemctl start kiwix.service
Para ver su estado:
sudo systemctl status kiwix.service
Si funciona bien habilitarlo para que funcione al inicio:
sudo systemctl enable kiwix.service
Ya tienes wikipedia-offline funcionando :)