sábado, 30 de agosto de 2014

Habilitación de Servicios en Manjaro

Como muchos ya saben desde hace un tiempo estoy migrando de Ubuntu a Manjaro en lo que a un escritorio con algunas funcionalidades de servidor respecta.
Los motivos de este cambio son varios, y si bien están fuera del alcance de deste artículo tienen por objeto mejorar mis niveles de disponibilidad y performance, lo que he logrado ámpliamente.
Me encontré con algunos temas a resolver en plena migración de servicios, entre ellos justamente lo que hace referencia...a los servicios!
Entonces, acá una breve guía de cómo armar un servicio para Manjaro, que usa systemd como medio para gestionarlos.
Nótese que todo lo que verán a continuación fue ejecutado como el usuario root, o anteponiendo el comando sudo.
Lo primero es ingresar al directorio /etc/systemd/system, que es donde depositaremos el archivo que configura nuestro servicio.
En particular, en mi caso necesito levantar un viejo servidor Apache que contiene módulos aún más viejos, que no funcionan ya en las versiones más nuevas.
La forma de levantar dicho servidor es la ejecución del comando /opt/lampp/bin/apachectl start y la forma de bajarlo es /opt/lampp/bin/apachectl stop .
En el directorio en cuestión, entonces, generé un archivo llamado lampp.service que tiene el siguiente contenido:

[Unit]
Description=LAMPP de versiones viejas de Apache y PHP

[Service]
ExecStart=/opt/lampp/bin/apachectl start
ExecReload=/opt/lampp/bin/apachectl restart
ExecStop=/opt/lampp/bin/apachectl stop
Type=forking

[Install]
WantedBy=multi-user.target


Lo que estoy diciendo en este script es cómo se levanta en ExecStart, cómo se recarga en ExecReload, cómo se baja en ExecStop, que es un script, y por eso el Type, y en qué nivel de ejecución de mi sistema operativo debe estar, como aparece en WantedBy.
También una descripción del servicio en Description, pero me imagino que ya lo deben haber adivinado.
Una vez creado dicho archivo, lo habilito con el siguiente comando:

systemctl --system enable lampp

Voila! Ya tengo el servicio habilitado, de aquí en más lo podré levantar con:

systemctl start lampp

...lo podré bajar con:

systemctl stop lampp

...y lo podré relanzar con:

systemctl restart lampp

Espero que les sea de utilidad esta breve guía. Nos leemos!

No hay comentarios: