blob: 121102a780f75754a3de4183bf80ffad704f243b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
#!/bin/bash
#/**
#@file opengnsys_update.sh
#@brief Script de desinstalación de OpenGnSys
#@warning No se elimina el directorio de imágenes, ni se desinstalan otros programas.
#@version 0.10 - Primera prueba de desinstalación.
#@author Ramón Gómez - ETSII Univ. Sevilla
#@date 2010/10/28
#@version 1.0 - Eliminar servicios de OpenGnSys.
#@author Ramón Gómez - ETSII Univ. Sevilla
#@date 2011/03/02
#@version 1.0.2 - Información de desinstalación y correcciones.
#@author Ramón Gómez - ETSII Univ. Sevilla
#@date 2011/12/22
#@version 1.0.4 - Compatibilidad con otras distribuciones y auto configuración de acceso a BD
#@author Ramón Gómez - ETSII Univ. Sevilla
#@date 2012/03/28
#@version 1.0.5 - Usar las mismas variables que el script de instalación.
#@author Ramón Gómez - ETSII Univ. Sevilla
#@date 2013/01/09
#### AVISO: Editar configuración de acceso.
#### WARNING: Edit access configuration
MYSQL_ROOT_PASSWORD="passwordroot" # Clave de root de MySQL
OPENGNSYS_DATABASE="ogAdmBD" # Base de datos de administración
OPENGNSYS_DB_USER="usuog" # Usuario de acceso a la base de datos
#### AVISO: NO EDITAR variables de configuración.
#### WARNING: DO NOT EDIT configuration variables.
OPENGNSYS="/opt/opengnsys" # Directorio de OpenGnSys
OGIMG="images" # Directorio de imágenes del repositorio
OPENGNSYS_CLIENT_USER="opengnsys" # Usuario Samba
OPENGNSYS_OLDDATABASE="ogBDAdmin" # Antigua base de datos
# Sólo ejecutable por usuario root
if [ "$(whoami)" != 'root' ]; then
echo "ERROR: this program must run under root privileges!!"
exit 1
fi
# Parar servicio.
echo "Uninstalling OpenGnSys services."
if [ -x /etc/init.d/opengnsys ]; then
/etc/init.d/opengnsys stop
if test which update-rc.d 2>/dev/null; then
update-rc.d -f opengnsys remove
else
chkconfig --del opengnsys
fi
fi
# Eliminar bases de datos.
echo "Erasing OpenGnSys database."
DROP=1
if ! mysql -u root -p"$MYSQL_ROOT_PASSWORD" <<<"quit" 2>/dev/null; then
stty -echo
read -p "- Please, insert MySQL root password: " MYSQL_ROOT_PASSWORD
echo ""
stty echo
if ! mysql -u root -p"$MYSQL_ROOT_PASSWORD" <<<"quit" 2>/dev/null; then
DROP=0
echo "Warning: database not erased."
fi
fi
if test $DROP; then
mysql -u root -p"$MYSQL_ROOT_PASSWORD" <<<"DROP DATABASE $OPENGNSYS_OLDDATABASE;" 2>/dev/null
mysql -u root -p"$MYSQL_ROOT_PASSWORD" <<<"DROP DATABASE $OPENGNSYS_DATABASE;" 2>/dev/null
mysql -u root -p"$MYSQL_ROOT_PASSWORD" <<<"DROP USER '$OPENGNSYS_DB_USER';" 2>/dev/null
mysql -u root -p"$MYSQL_ROOT_PASSWORD" <<<"DROP USER '$OPENGNSYS_DB_USER'@'localhost';" 2>/dev/null
fi
# Quitar configuración específica de Apache.
test which a2dissite 2>/dev/null && a2dissite opengnsys
rm -f /etc/{apache2/{sites-available,sites-enabled},httpd/conf.d}/opengnsys*
for serv in apache2 httpd; do
[ -x /etc/init.d/$serv ] && /etc/init.d/$serv reload
done
# Eliminar ficheros.
echo "Deleting OpenGnSys files."
for dir in $OPENGNSYS/*; do
if [ "$dir" != "$OPENGNSYS/$OGIMG" ]; then
rm -fr "$dir"
fi
done
rm -f /etc/init.d/opengnsys /etc/default/opengnsys /var/log/opengnsys
rm -f /etc/cron.d/{opengnsys,torrentcreator,torrenttracker}
# Elminar recursos de OpenGnSys en Samba.
rm -f /etc/samba/smb-og.conf
perl -ni -e "print unless /smb-og.conf/" /etc/samba/smb.conf
for serv in smbd smb ; do
[ -x /etc/init.d/$serv ] && /etc/init.d/$serv reload
done
# Eliminar usuario de OpenGnSys.
smbpasswd -x $OPENGNSYS_CLIENT_USER
userdel $OPENGNSYS_CLIENT_USER
# Tareas manuales a realizar después de desinstalar.
echo "Manual tasks:"
echo "- You may stop or uninstall manually all other services"
echo " (DHCP, PXE, TFTP, NFS/Samba, Apache, MySQL)."
echo "- Delete repository directory \"$OPENGNSYS/$OGIMG\""
|