summaryrefslogtreecommitdiffstats
path: root/installer/opengnsys_export.sh
diff options
context:
space:
mode:
authorramon <ramongomez@us.es>2016-10-31 13:09:54 +0000
committerramon <ramongomez@us.es>2016-10-31 13:09:54 +0000
commit749ae5fbfec33947c2bbf3d0508fce45cb2ccd1c (patch)
treeda532d1f47e699935d2d03304e042dbf62a4a3c1 /installer/opengnsys_export.sh
parentb32e00fd2deb012eb5c859ad2b11259988f14cc6 (diff)
#755: Usar fichero temporal con datos de conexión a MySQL para no incluir datos sensibles en la ejecución de comandos.
git-svn-id: https://opengnsys.es/svn/branches/version1.1@5059 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'installer/opengnsys_export.sh')
-rwxr-xr-xinstaller/opengnsys_export.sh21
1 files changed, 18 insertions, 3 deletions
diff --git a/installer/opengnsys_export.sh b/installer/opengnsys_export.sh
index 580c7b78..c8a75fba 100755
--- a/installer/opengnsys_export.sh
+++ b/installer/opengnsys_export.sh
@@ -82,15 +82,29 @@ cp $OPENGNSYS/client/etc/engine.cfg $TMPDIR
echo "Guardamos las páginas de inicio."
cp -r $OPENGNSYS/www/menus $TMPDIR
-# MYSQL: Excluimos las tablas del servidor de administración (entornos) y repositorios
+# Exportar la base de datos
echo "Exportamos la información de la base de datos."
source $OPENGNSYS/etc/ogAdmServer.cfg
-mysqldump --opt -u $USUARIO -p$PASSWORD $CATALOG \
+# Crear fichero temporal de acceso a la BD
+MYCNF=$(mktemp /tmp/.my.cnf.XXXXX)
+chmod 600 $MYCNF
+trap "rm -f $MYCNF" 1 2 3 6 9 15
+cat << EOT > $MYCNF
+[client]
+user=$USUARIO
+password=$PASSWORD
+EOT
+
+# MYSQL: Excluimos las tablas del servidor de administración (entornos) y repositorios
+mysqldump --defaults-extra-file=$MYCNF --opt $CATALOG \
--ignore-table=${CATALOG}.entornos \
--ignore-table=${CATALOG}.repositorios \
--ignore-table=${CATALOG}.usuarios > $MYSQLFILE
# Tabla usuario
-mysqldump --opt --no-create-info -u $USUARIO -p$PASSWORD $CATALOG usuarios > $MYSQLFILE2
+mysqldump --defaults-extra-file=$MYCNF --opt --no-create-info $CATALOG \
+ usuarios > $MYSQLFILE2
+# Borrar fichero temporal
+rm -f $MYCNF
# IP SERVIDOR
echo $ServidorAdm > $TMPDIR/IPSERVER.txt
@@ -102,5 +116,6 @@ echo $ServidorAdm > $TMPDIR/IPSERVER.txt
echo "Creamos un archivo comprimido con los datos: $BACKUPFILE."
cd /tmp
tar -czvf $BACKUPFILE ${TMPDIR##*/} &>/dev/null
+
# Cambio permisos: sólo puede leerlo el root
chmod 600 $BACKUPFILE