Manual de instalación de mantis 1.2.11 en CentOS 5.8
-
Upload
joshep-ticante -
Category
Technology
-
view
3.223 -
download
0
description
Transcript of Manual de instalación de mantis 1.2.11 en CentOS 5.8
By… José Venustiano Ticante Hernández [email protected]
Manual de instalación de la herramienta “Mantis Bug Tracer” 1.2.11 en CentOS 5.8
Introducción:
MantisBT es un sistema de seguimiento de errores libre y muy popular basado en la web. Esta
escrito en PHP y trabaja con MySQL, MS SQL y bases de datos basados en PostgresSQL y para su
funcionamiento necesita un servidor web. MantiBT esta diseñado para funcionar en plataformas
Windows, Linux, MAC OS, OS/2 y otros. Casi cualquier navegador debe ser capaz de funcionar
como un cliente.
Requisitos
MantisBT está desarrollado principalmente en Linux usando Apache, MySQL y PHP. Los requisitos
básicos para MantiBT son los siguientes:
Hardware
MantisBT tiene requerimientos modestos de hardware. Se requiere un equipo que es capaz de
ejecutar el software de servidor.
- Espacio mínimo en disco: 160 MB libres, además de todo lo que necesita para guardar sus
materiales (5 GB es probablemente un mínimo realista, dependiendo del uso planeado).
Ya que el código de la aplicación es menor a 20 MB.
- Memoria RAM: 256 MB como mínimo, es recomendado 1 GB o mas.
Software
Todo el software necesario es gratuito para uso comercial y no comercial (código abierto). Por
favor refiérase a la tabla de abajo para las versiones mínimos y recomendados.
- Un Sistema Operativo: En este caso se utilizará un Sistema Operativo CentOS en su versión
5.8 y una arquitectura X86_64.
- Un servidor web: En primer lugar y muy recomendable el servidor web Apache o IIS. En
este caso se debe instalar el equivalente apache para CentOS “httpd”.
- PHP: La versión mínima actualmente es 5.1.x pero funciona con cualquier versión superior
a esta. En este manual se instalará la versión de PHP 5.3.11.
- Extensiones PHP: Mantis BT está diseñado para trabajr en tantos ambientes como sea
posible. Por lo tanto las extensiones requeridas son mínimas y muchos de ellos son
opcionales afectando solo a una función.
- Una Base de Datos: MySQL y PostgreSQL son los gestores de base de datos recomendables
para MantisBT, aunque Oracle, MSSQL y DB2 son totalmente compatibles. Las versiones
mínimas de los gestores de bases de datos son las siguientes.
By… José Venustiano Ticante Hernández [email protected]
Tabla de compatibilidad de versiones
Categoría Paquete Versión Mínima Recomendado
DBMS
MySQL 4.1.X 5.0.X o superior
PostgreSQL 7.0 8.0 o superior
IBM DB2
MS SQL Server
Oracle 8i 11gR2
Web Server Apache 1.3.X 2.2.X
Lighttpd 1.4.X 1.4.X
IIS 6.0 6.0
PHP PHP 5.1.X 5.2 o superior
Para la instalación de “MantisBT” en este manual, se utilizara PostgreSQL en su versión 8.4-11.
Los clientes y usuarios de MantisBT podrán acceder desde cualquier navegador web, en caso de
utilizar Internet Explorer, debe de utilizar una versión superior a la 6, ya que esta y las anteriores
no son compatibles con MantisBT.
Instalación de dependencias
Como ya se mencionó anteriormente se necesita software adicional para que esta herramienta
funcione al 100 % y, también se mencionaron algunas restricciones que deben considerarse para la
instalación de las dependencias que “MantisBT” necesita.
Es recomendable tener instalada todas las dependencias de “MantisBT” antes de su instalación y
configuración.
Instalando servidor web
Como ya se mencionó es recomendable instalar el servidor web Apache, sin embargo para el
sistema operativo CentOS no existe apache literalmente, sino, es el mismo servidor web pero con
el nombre de “httpd”, y para instalarse es necesario ejecutar la siguiente línea de comando como
supe usuario (root):
yum install httpd
El sistema buscará en la web este servidor, descargará e instalará automáticamente la versión más
actual de este servidor web.
Instalación de PostgreSQL 8.4.12-1
By… José Venustiano Ticante Hernández [email protected]
PostgreSQL es una de los gestores de base de datos altamente recomendados para la versión 1.2
de MantisBT, ya que MantisBT está desarrollado para funcionar principalmente con este gestor de
Base de Datos al igual que con MySQL.
Para comenzar la instalación de PostgreSQL es necesario seguir las siguientes instrucciones:
- Descargar el repositorio de la versión 8.4 de PostgreSQL, para ello debe ejecutar el
siguiente comando como súper usuario (root) en una terminal del sistema:
# wget http://yum.postgresql.org/8.4/redhat/rhel-5-i386/pgdg-centos-8.4-3.noarch.rpm
- Después de que el sistema descargue el repositorio indicado, será necesario agregarlo al
sistema para que en base a él, se descargue la versión de PostgreSQL requerida. Es
necesario entrar al directorio donde se descargó el repositorio, posteriormente ejecutar la
siguiente instrucción:
rpm -ivh pgdg-centos-8.4-3.noarch.rpm
- Después de haber agregado el repositorio al sistema, ya puede proceder a la instalación de
PostgreSQL, en esta ocasión, como ya se agregó el repositorio de la versión 8.4.12-1, el
gestor se puede instalar con la instrucción “yum”. Ejecute la siguiente línea de comando
en una terminal para comenzar la instalación:
yum install -y postgresql postgresql-server
Esta instrucción instalará automáticamente las dependencias faltantes para estos paquetes. Una
vez que la instalación de PostgreSQL termine, solo resta inicializar el servidor de base de datos, lo
cual se realiza de la siguiente manera:
service postgresql initdb
Después de la inicialización de gestor, es necesario reiniciar o iniciar el servicio de postgresql.
Ejecute la siguiente línea de comando para realizar esta acción:
service postgresql restart
Por último es necesario agregar el servicio de Postgresql al inicio del sistema, para que este se
inicialice en conjunto con el sistema y no sea necesario iniciar el servicio manualmente. Ejecute la
siguiente instrucción para realizar esta acción:
chkconfig postgresql on
Con esta acción quedo instalado PostgreSQL en su versión 8.4-11, y el servidor de base datos
inicializado y aceptando conexiones locales, pero aun no es posible acceder al servidor desde
conexiones remotas. Para habilitar las conexiones remotas es necesario asegurarse que no exista
ningún tipo de bloqueo ahora solo es necesario editar el archivo
By… José Venustiano Ticante Hernández [email protected]
“/var/lib/pgsql/data/pg_hba.conf” en el cual se tiene que dar acceso a la red desde la cual se va
acceder. Para hacer esto en necesario ejecutar la siguiente línea de comando:
nano /var/lib/pgsql/data/pg_hba.conf
Vaya al final del archivo y modifique las líneas a modo que quede de la siguiente manera:
Posteriormente a esto será, necesario reiniciar el servicio de postgresql:
service postgresql restart
El servicio se reiniciará, con esto ya quedo instalado y configurado postgresql.
Creación de una Base de Datos para MantisBT
Esta instrucción asume que el servidor de base de datos y el servidor web ya se encuentran
instalados en el equipo. La creación de la base de datos es bastante sencilla, los paso para
realizarlo se describen a continuación:
- Lo primero que se tiene que hacer es posicionarse en una terminal de línea de comando y
loguearse como súper usuario, posterior a esto, en la misma terminal, debe ejecutar la siguiente
instrucción para iniciar sesión el cliente de línea de comando de PostgreSQL:
# psql -U postgres
- Una vez hecho lo anterior y que la sesión del cliente de postgres ha sido inicializada,
proceda a ejecutar la siguiente instrucción para crear el usuario de la base de datos
necesaria para “MantisBT” y asignarle una contraseña:
postgresql=# CREATE USER admin WITH PASSWORD ‘password123’;
Donde:
- “admin”: es el nombre del usuario que se va a crear (cambie este dato de acuerdo a sus
necesidades).
By… José Venustiano Ticante Hernández [email protected]
- “password123”: es la contraseña asignada a este usuario (cambie este dato de acuerdo a
sus necesidades).
Si la instrucción anterior deberá mostrarse una salida como la de la siguiente imagen:
Tenga en cuenta que el método de autenticación depende del archivo ya editado “pg_hba.conf”
del servidor de PostgreSQL.
Nota: Algunos métodos de autenticación (como ident) no requieren la contraseña.
- Una vez creado el usuario con su respectiva contraseña, es necesario crear la base de
datos de la cual será propietario este usuario. Para crear la base de datos ejecute la
siguiente instrucción:
postgres=# CREATE DATABASE mantisdb WITH OWNER admin;
La instrucción anterior debe arrojar un resultado igual a la de la imagen siguiente:
- Para verificar que la base de datos fue creada exitosamente ejecute la siguiente
instrucción “\l” (diagonal invertida seguida de la letra “l”):
postgres=# \l
Esta instrucción debe arrojar un listado de las bases de datos existentes, y el resultado debe ser
parecido al de la siguiente imagen:
Una vez que se comprobó que la base de datos fue creada exitosamente ejecute la siguiente
instrucción “\q” (diagonal invertida seguida de la letra “q”) para salir del cliente de postgresql y
regresar a la terminal en Shell del sistema:
postgres=# \q
Una vez realizado lo anterior es posible seguir con la instalación de las demás herramientas
necesarias para el perfecto funcionamiento de “MantisBT”.
Instalación de PHP 5.3.13
En este documento se describen las acciones que se tienen que realizar para poder instalar
de manera adecuada y exitosa PHP en la versión 5.3.13, ya que para que MantisBT se ejecute
By… José Venustiano Ticante Hernández [email protected]
correctamente, necesita que PHP se encuentre instalado en la versión mínima aceptada por
“MantisBT” que es la versión 5.1.X o superior.
Se ha elegido esta versión de PHP ya que actualmente es la versión estable, cabe
mencionar que existe una versión superior a esta, sin embargo esta última aún se encuentra en
desarrollo y no es estable. La versión de PHP aún no se encuentra empaquetada, es decir, aun no
se puede descargar utilizando la herramienta “yum”, por esta razón es necesario descargar todas
las librerías y paquetes necesarios para instalar PHP. A continuación se listan los paquetes que se
deben descargar:
- Php-common-5.3.13-1
- Php-cli-5.3.13-1
- Php-5.3.13-1
- Php-devel-5.3.13-1
- Php-gd-5.3.13-1
- Php-pdo-5.3.13-1
- Php-pgsql-5.3.13-1
Los paquetes listados anteriormente se encuentran alojados en un repositorio en la pág.
http://repo.webtatic.com/yum/centos/5/x86_64/ de donde se pueden descargar los paquetes de
forma manual e instalarlos con el manejador de paquetes de forma gráfica, sin embargo este no es
el caso, se procederá a descargar e instalar estos paquetes desde la línea de comando de una
terminal.
- Descargar e instalar php-common-5.3.13-1
# wget http://repo.webtatic.com/yum/centos/5/x86_64/php-common-5.3.13-1.w5.x86_64.rpm
rpm -ivh php-common-5.3.13-1.w5.x86_64.rpm
- Descargar e instalar Php-cli-5.3.13-1
# wget http://repo.webtatic.com/yum/centos/5/x86_64/php-cli-5.3.13-1.w5.x86_64.rpm
By… José Venustiano Ticante Hernández [email protected]
rpm -ivh php-common-5.3.13-1.w5.x86_64.rpm
NOTA: Es importante no alterar el orden de la instalación anterior, es decir, no debe intentar
instalar en primer lugar el paquete “php-cli” ya que este paquete necesita que el paquete “php-
common” este instalado. Si usted altera el orden obtendrá una salida de error como la siguiente:
A partir de aquí, debes realizar las mismas acciones que se realizaron con la instalación de
los paquetes anteriores, el procedimiento es el mismo, se descarga el paquete con una instrucción
y se instala con otra, solo que a partir de aquí no se mostrarán imágenes de comprobación, ya que
solo se trata de replicar el mismo paso para cada paquete.
- Descargar e instalar php-5.3.13-1
# wget http://repo.webtatic.com/yum/centos/5/x86_64/php-5.3.13-1.w5.x86_64.rpm
# rpm -ivh php-5.3.13-1.w5.x86_64.rpm
- Descargar e instalar php-devel-5.3.13-1
# wget http://repo.webtatic.com/yum/centos/5/x86_64/php-devel-5.3.13-1.w5.x86_64.rpm
# rpm -ivh php-devel-5.3.13-1.w5.x86_64.rpm
- Descargar e instalar php-dg-5.3.13-1
# wget http://repo.webtatic.com/yum/centos/5/x86_64/php-gd-5.3.13-1.w5.x86_64.rpm
# rpm -ivh php-gd-5.3.13-1.w5.x86_64.rpm
- Descargar e instalar php-pdo-5.3.13-1
# wget http://repo.webtatic.com/yum/centos/5/x86_64/php-pdo-5.3.13-1.w5.x86_64.rpm
# rpm -ivh php-pdo-5.3.13-1.w5.x86_64.rpm
By… José Venustiano Ticante Hernández [email protected]
- Descargar e instalar php-pgsql-5.3.13-1
# wget http://repo.webtatic.com/yum/centos/5/x86_64/php-pgsql-5.3.13-1.w5.x86_64.rpm
# rpm -ivh php-pgsql-5.3.13-1.w5.x86_64.rpm
Una vez que ya se hayan descargado e instalado todos paquetes anteriores, ya es posible
comenzar con la “instalación” y configuración de MantisBT.
Instalación y configuración de Mantis Bug Tracer 1.2.11
Lo primero que se tiene que realizar es obtener una copia del software de MantisBT, se
recomienda altamente obtenerlo desde la página oficial de MantisBT (mantisbt.org) en la sección
de descarga donde también se encuentra bastante documentación referente a este software
(sección docs).
Para descargar la versión 1.2.11 de mantisbt vaya a la página web
http://www.mantisbt.org/download.php y seleccione descargar la versión “mantisbt 1.2.11”, este
link lo re direccionará a la página donde se encuentran alojadas las versiones existentes de
mantisbt como se muestra en la siguiente imagen:
Seleccione la versión 1.2.11 y esta lo re direccionará a otra página para que pueda seleccionar el
formato de descarga de mantisbt versión 1.2.11, seleccione el archivo en formato “.tar.gz”, para
instalarlo sobre CentOS como se muestra en la siguiente imagen:
By… José Venustiano Ticante Hernández [email protected]
Página oficial de descarga de mantisbt.
La descarga comenzará automáticamente después de unos segundos.
- Guarde el archivo en el directorio que usted desea, en este caso se guardará en el
escritorio del sistema.
- Una vez que la descarga finalice, debe descomprimir el paquete, para ello ejecute la
siguientes instrucciones como súper usuario en una terminal del sistema:
# cd /root/Desktop/ (con esta instrucción se ubica el escritorio, cambie esta ruta por la
ruta donde se guardo el paquete descargado).
# tar -zxvf mantisbt-1.2.11.tar.gz (instrucción para descomprimir el paquete).
Esta instrucción desplegará mucha información en la pantalla de la terminal, una vez que termine
de descomprimir el paquete, la salida final debe ser algo parecida a la siguiente imagen:
By… José Venustiano Ticante Hernández [email protected]
Al terminar de descomprimir el paquete, automáticamente se creará una carpeta con el nombre
“mantisbt-1.2.11” en el escritorio o en el mismo directorio donde lo descomprimió, esta carpeta
deberá ser colocada en el directorio del servidor web, se recomienda copiar esta carpeta y
renombrarla a “mantis” con la instrucción “/var/www/html/mantisBT/” como se muestra en la
siguiente imagen:
Desktop# cp -R mantisbt-1.2.11 /var/www/html/mantisBT/
Es vital que los archivos no tengan permiso de escritura por el usuario del servidor web, es por ello
que es necesario modificar los permisos y el propietario de este directorio, para realizar esto
ejecute las siguientes instrucciones como súper usuario en la terminal del sistema:
# chown -R root /var/www/html/mantisBT/
Para verificar que este directorio sea perteneciente al propietario “root” ejecute la siguiente
instrucción:
# ll /var/www/html/
La salida a esta instrucción debe ser como la siguiente:
Ejecute la siguiente instrucción para cambiar los permisos del directorio:
# chmod -R 755 /var/www/html/mantisBT/
Después de la instrucción anterior puede verificar los resultados con la instrucción “ll
/var/www/html” y la salida de esta instrucción debe ser como la siguiente:
By… José Venustiano Ticante Hernández [email protected]
Las instrucciones anteriores hacen que los archivos sean propiedad del administrador o usuario
root y solo pueden ser escritos por ellos y legibles para todos los demás usuarios.
Inicio de instalación de Moodle
Después de instalar todas las herramientas necesarias y realizar ciertas configuraciones, es el
momento para ejecutar el instalador para crear las tablas de base de datos y configurar el Nuevo
sitio. El método recomendado es usar el instalador basado en la web, cualquiera que sea el
método de instalación no tendrá ningún efecto secundario sobre el servidor web de moodle, para
este manual la instalación está basada en la opción web.
Instalación basada en la web
Para ejecutar el script de la instalación web, basta con abrir un navegador y escribir la dirección de
donde se encuentra el instalador de mantisbt.
Antes de iniciar la instalación via web, es necesario reiniciar el servicio de postgresql y apache, los
cual se hace ejecutando las siguientes instrucciones:
# service postgresql restart
# service httpd restart
Las instrucciones anteriores permitirán re cargar los datos de los servicios.
Escriba en la URL “localhost/moodle/ e inmediatamente se mostrara en pantalla la página
principal de instalación donde el script de instalación comprueba los parámetros básicos para el
servidor web y muestra el estado de este como se muestra en la siguiente imagen:
En la misma ventana se muestra algunos aparatados donde se debe proporcionar las opciones de
instalación, es decir, se debe proporcionar la información requerida como el tipo de base de datos,
el nombre de host de base de datos, usuario y contraseña de la base de datos, etc., debe
rellenarse con los datos de las configuraciones creadas anteriormente como se muestra en la
siguiente imagen:
By… José Venustiano Ticante Hernández [email protected]
Posterior a esto, la siguiente imagen deberá mostrar una larga lista de las tablas creadas y algunas
advertencias como se muestra en la siguiente imagen:
Esta pagina se divide en secciones, por lo tanto en la sección “write configuration File(s)” se
mostrará un problema indicando que no se pudo crear el archivo “config_inc.php” en el directorio
raíz de mantisBT, antes de continuar con la instalación y configuración, este problema debe ser
resuelto creando el archivo manualmente, lo cual se realiza ejecutando las siguientes líneas de
comando en la terminal:
# touch /var/www/html/mantisBT/config_inc.php
Una vez creado el archivo, se tiene que abrir y editarlo. Ejecute la siguiente instrucción para editar
el archivo creado recientemente:
# nano / var/www/html/mantisBT/config_inc.php
By… José Venustiano Ticante Hernández [email protected]
El resultado de la instrucción anterior será una pantalla en negro donde se debe agregar el código
proporcionado como se muestra en la siguiente imagen:
Una vez copiado el código, guarde los cambios y cierre el editor de archivos. Antes de continuar,
será necesario reiniciar el servicio de apache.
# service httpd restart
Es momento pasar a la siguiente sección en la misma ventana, seguramente en el aparatado
“Checking Installation…” deben de mostrarse unos errores resaltados en color rojo como se
muestra en la siguiente imagen:
Este error es típico y muy normal ya que a causa de que acaban de crear todas las tablas en la base
de datos, el usuario que se creo no tiene ciertos privilegios sobre algunas tablas en particular
como es el caso de la tabla “mantis_config_table” donde el usuario “admin” no tiene permisos de
inserción, selección, actualización y borrado.
Para resolver este problema, será necesario acceder al cliente de base de datos de postgres vía
terminal, y otorgarle dichos privilegios a este usuario, para realizar lo mencionado ejecute las
siguientes instrucciones en una terminal:
# psql -U postgres
postgres=# \c mantisdb;
mantisdb=# GRANT ALL PRIVILEGES ON mantis_config_table TO admin;
mantisdb=# \q
By… José Venustiano Ticante Hernández [email protected]
Las instrucciones anteriores deben de mostrar resultados como los que muestra la siguiente
imagen:
Antes de volver a intentar la configuración y continuar con la instalación será necesario reiniciar el
servicio de postgresql para que los cambios que se acaban de realizar surjan efecto sobre la base
de datos. Ejecute la siguiente instrucción para reiniciar postgres:
# service postgres restart
Haga clic sobre el botón “retry”, este seguramente mostrará otro error como el que se muestra en
la siguiente imagen:
Para corregir este error debe hacerse lo mismo que en el apartado anterior, deben de asignársele
privilegios sobre todas las tablas al usuario admin, ya que de no hacer podrían presentarse
problemas mas adelante.
Para resolver este problema, será necesario acceder al cliente de base de datos de postgres vía
terminal, y otorgarle dichos privilegios a este usuario, para realizar lo mencionado ejecute las
siguientes instrucciones en una terminal:
# psql -U postgres
postgres=# \c mantisdb;
mantisdb=# GRANT ALL PRIVILEGES ON DATABASE mantisdb TO admin;
mantisdb=# \q
Después de realizar lo anterior, será necesario reiniciar el servicio de postgres. Ejecute la siguiente
instrucción para realizarlo:
By… José Venustiano Ticante Hernández [email protected]
# service postgres restart
Presione la tecle F5 de su teclado para recargar la página y verificar si el problema esta resuelto. Lo
siguiente que debe mostrase en la pantalla es una imagen como la siguiente:
Como puede darse cuenta aun se muestran errores remarcados en letras color rojo, este es por las
configuraciones que vienen por default en los archivos de mantisbt, este mensaje de error debe de
resolverse ya que de lo contrario aparecerá en cada una de las diferentes páginas que componen a
mantisbt.
Este problema se resuelve editando el archivo “config_defaults_inc.php” que se encuentra en el
directorio “/var/www/html/mantisBT/. Busque la línea número 1057 o el argumento
“g_default_timezone” y escriba la zona de horario correspondiente a México como se muestra en
la siguiente imagen:
By… José Venustiano Ticante Hernández [email protected]
Guarde los cambios, cierre el editor de archivos y reinicie el servicio de apache:
# service httpd restart
Una vez echo esto, actualice la página web de mantis presionando la tecla F5 de su teclado y verá
como el mensaje de error ha desaparecido como se muestra en la siguiente imagen:
MantiBT crea por defecto una cuenta de administrador para la creación de nuevas cuentas de
nivel administrador, los datos de la cuenta son las siguientes:
Usuario: administrator
By… José Venustiano Ticante Hernández [email protected]
Contraseña: root
Ingrese estos datos y se mostrara la ventana principal de mantis.
Ahora ya puede hacer uso de esta herramienta.