diff options
author | ramon <ramongomez@us.es> | 2016-10-31 13:09:54 +0000 |
---|---|---|
committer | ramon <ramongomez@us.es> | 2016-10-31 13:09:54 +0000 |
commit | 749ae5fbfec33947c2bbf3d0508fce45cb2ccd1c (patch) | |
tree | da532d1f47e699935d2d03304e042dbf62a4a3c1 /installer/opengnsys_import.sh | |
parent | b32e00fd2deb012eb5c859ad2b11259988f14cc6 (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_import.sh')
-rwxr-xr-x | installer/opengnsys_import.sh | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/installer/opengnsys_import.sh b/installer/opengnsys_import.sh index 69f44604..e58da24f 100755 --- a/installer/opengnsys_import.sh +++ b/installer/opengnsys_import.sh @@ -109,15 +109,27 @@ cp -r $TMPDIR/menus $OPENGNSYS/www # MYSQL echo " * Importamos informacion mysql." source $OPENGNSYS/etc/ogAdmServer.cfg +# 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 + # Copia de seguridad del estado de la base de datos -mysqldump --opt -u $USUARIO -p$PASSWORD $CATALOG > $MYSQLBCK +mysqldump --defaults-extra-file=$MYCNF --opt $CATALOG > $MYSQLBCK # Importamos los datos nuevos -mysql -u "$USUARIO" -p"$PASSWORD" -D "$CATALOG" < $MYSQLFILE &>/dev/null +mysql --defaults-extra-file=$MYCNF -D "$CATALOG" < $MYSQLFILE &>/dev/null [ $? -ne 0 ] && echo "ERROR: Error al importar la información de la base de datos." # Importamos datos tabla usuario, ignoramos los repetidos sed -i -e s/IGNORE//g -e s/INSERT/"\nALTER TABLE usuarios ADD UNIQUE (usuario);\n\nINSERT IGNORE"/g $MYSQLFILE2 -mysql -u "$USUARIO" -p"$PASSWORD" -D "$CATALOG" < $MYSQLFILE2 &>/dev/null +mysql --defaults-extra-file=$MYCNF -D "$CATALOG" < $MYSQLFILE2 &>/dev/null [ $? -ne 0 ] && echo "ERROR: Error al importar la información de los usuarios de la consola" +# Borrar fichero temporal +rm -f $MYCNF echo -e "Se ha terminado de importar los datos del backup. \n\nSe han realizado copias de seguridad de los archivos antiguos:" echo " - $DHCPCFGDIR/dhcpd.conf-$(date +%Y%m%d)" |