61 lines
1.9 KiB
Bash
61 lines
1.9 KiB
Bash
#!/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
|