#!/bin/bash # Configura las rutas MONITOR_SCRIPT="monitor_nfs.sh" SYSTEMD_SERVICE="monitor_nfs.service" LOGROTATE_CONF="monitor_nfs_logrotate" INITD_SERVICE="monitor_nfs" # Nombre del script de servicio init.d SYSTEMD_PATH="/etc/systemd/system" LOGROTATE_PATH="/etc/logrotate.d" INITD_PATH="/etc/init.d" SCRIPT_DEST="/usr/local/bin" # Comprueba que se ejecuta como root if [[ $EUID -ne 0 ]]; then echo "Este script debe ejecutarse como root." exit 1 fi # Copia el script de monitoreo al directorio de destino y otorga permisos de ejecución echo "Copiando el script de monitoreo a $SCRIPT_DEST..." mkdir -p "$SCRIPT_DEST" cp "$MONITOR_SCRIPT" "$SCRIPT_DEST/$MONITOR_SCRIPT" chmod +x "$SCRIPT_DEST/$MONITOR_SCRIPT" # Verifica si systemd está disponible if command -v systemctl > /dev/null; then # Copia el archivo de servicio systemd y recarga el daemon echo "Instalando el servicio de systemd..." cp "$SYSTEMD_SERVICE" "$SYSTEMD_PATH/$SYSTEMD_SERVICE" systemctl daemon-reload # Copia el archivo de configuración de logrotate echo "Configurando logrotate..." cp "$LOGROTATE_CONF" "$LOGROTATE_PATH/monitor_nfs" chmod 644 "$LOGROTATE_PATH/monitor_nfs" # Habilita y arranca el servicio de systemd echo "Habilitando y arrancando el servicio de monitoreo (systemd)..." systemctl enable "$SYSTEMD_SERVICE" systemctl start "$SYSTEMD_SERVICE" # Verifica el estado del servicio systemd echo "Estado del servicio monitor_nfs (systemd):" systemctl status "$SYSTEMD_SERVICE" else # Si systemd no está disponible, verifica si init.d está disponible if [ -f "$INITD_PATH/$INITD_SERVICE" ]; then # Copia el archivo de servicio init.d echo "Instalando el servicio init.d..." cp "$INITD_SERVICE" "$INITD_PATH/$INITD_SERVICE" chmod +x "$INITD_PATH/$INITD_SERVICE" # Habilita el servicio init.d echo "Habilitando el servicio de monitoreo (init.d)..." update-rc.d "$INITD_SERVICE" defaults # Verifica el estado del servicio init.d echo "Estado del servicio monitor_nfs (init.d):" service "$INITD_SERVICE" status else echo "No se encontró systemd ni init.d en el sistema. No se puede configurar el servicio." exit 1 fi fi echo "Configuración completada con éxito."