Tengo dos servicios: mysql y liferay. El inicio de Liferay depende de MySQL, pero el cierre de Liferay también depende de MySQL. El problema es que systemd cerrará mysql antes de que finalice el cierre de liferay. Cuando ejecuto "systemctl stop mysql", comenzará a cerrar ambos servicios al mismo tiempo y liferay no tendrá ningún servicio mysql para finalizar su propio apagado.
Tengo el servicio de Liferay declarado así:
[Unit]
Description=Liferay Portal
After=network.target,mysql.service
Requires=mysql.service
[Service]
Type=forking
WorkingDirectory=/opt/liferay
ExecStart=/opt/liferay/liferay-ce-portal/tomcat/bin/startup.sh
User=liferay
Group=liferay
Restart=always
[Install]
WantedBy=multi-user.target
¿Algunas ideas?
tia
Fernando
Respuesta1
Según el comentario de Gerald, parece que la respuesta es simplemente eliminar "Requires=".
Esta versión funciona:
[Unit]
Description=Liferay Portal
After=mysql.service
[Service]
Type=forking
WorkingDirectory=/opt/liferay
ExecStart=/opt/liferay/liferay-ce-portal/tomcat/bin/startup.sh
User=liferay
Group=liferay
Restart=always
[Install]
WantedBy=multi-user.target
Gracias Gerardo!