source: installer/opengnsys_uninstall.sh @ 957d1a1

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since 957d1a1 was 6adea38, checked in by irina <irinagomez@…>, 12 years ago

opengnsys_uninstall.sh: permisos al fichero sql que borra base de datos

git-svn-id: https://opengnsys.es/svn/branches/version1.0@4038 a21b9725-9963-47de-94b9-378ad31fedc9

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