#!/bin/bash set -e case "$1" in remove|purge) echo "Deteniendo y deshabilitando servicios..." systemctl stop ogrepo-api || true systemctl disable ogrepo-api || true systemctl stop smbd || true systemctl stop nmbd || true # Restaurar configuración original de Samba si fue modificada if [ -f /etc/samba/smb.conf.ogrepository ]; then echo "Restaurando configuración original de Samba..." mv /etc/samba/smb.conf.ogrepository /etc/samba/smb.conf dpkg-divert --remove --rename /etc/samba/smb.conf fi # Eliminar configuración específica de ogrepository en Samba if grep -q "include = /etc/samba/ogrepo-smb.conf" /etc/samba/smb.conf; then echo "Eliminando referencia a ogrepo-smb.conf en smb.conf..." sed -i '/include = \/etc\/samba\/ogrepo-smb.conf/d' /etc/samba/smb.conf fi # Eliminar usuario de Samba si es necesario if pdbedit -L | grep -q "^$SAMBA_USER:"; then echo "Eliminando usuario Samba $SAMBA_USER..." smbpasswd -x "$SAMBA_USER" fi # Eliminar archivos de configuración si se trata de una purga if [ "$1" = "purge" ]; then echo "Eliminando archivos de configuración..." rm -rf /opt/opengnsys/ogrepository rm -rf /etc/samba/ogrepo-smb.conf rm -rf /etc/systemd/system/ogrepo-api.service fi # Eliminar el script post-invoke si existe if [ -f /var/lib/dpkg/info/ogrepository.post-invoke ]; then echo "Eliminando script post-invoke..." rm -f /var/lib/dpkg/info/ogrepository.post-invoke fi echo "Limpieza completada." ;; upgrade|deconfigure) # No hacer nada en actualización o desconfiguración ;; *) echo "prerm llamado con un argumento desconocido '$1'" >&2 exit 1 ;; esac exit 0