Compare commits
No commits in common. "77d7355497d074c57eb9f63fb113ea158eb91be9" and "88d122ea6e4fccb2b35c38a0eeb34a5d75e2153a" have entirely different histories.
77d7355497
...
88d122ea6e
10 changed files with 39 additions and 416 deletions
|
@ -49,7 +49,7 @@ Nota: En determinadas versiones, las actualizaciones a partir de los repositorio
|
||||||
|
|
||||||
#### Inicialización de configuración GPG
|
#### Inicialización de configuración GPG
|
||||||
|
|
||||||
Como un requisito de nuestra plataforma, todos los desarrolladores deberán contar, por lo menos, con una clave GPG, que se utilizará para firmar o decifrar archivos, correos u otros. Esto se hará con el uso del comando gpg (previamente instalado con la ejecución de bin/boostrap.sh).
|
Como un requisito de nuestra plataforma, todos los desarrolladores deberán contar, por lo menos, con una clave GPG, que se utilizará para firmar o decifrar archivos, correos u otros. Esto se hará con el uso del comando gpgp que ya debió ser instalado con la ejecución de bin/boostrap.sh.
|
||||||
|
|
||||||
En este paso estableceremos la configuración por defecto de GPG:
|
En este paso estableceremos la configuración por defecto de GPG:
|
||||||
|
|
||||||
|
|
|
@ -56,9 +56,6 @@ install() {
|
||||||
local DIALOG_PACKAGE=dialog
|
local DIALOG_PACKAGE=dialog
|
||||||
local SOPS_PACKAGE=sops
|
local SOPS_PACKAGE=sops
|
||||||
local GNUPG_PACKAGE=gnupg
|
local GNUPG_PACKAGE=gnupg
|
||||||
local ZIP_PACKAGE=zip
|
|
||||||
local SQLITE_COMMAND=sqlite3
|
|
||||||
local SQLITE_PACKAGE="$SQLITE_COMMAND libsqlite3-dev"
|
|
||||||
|
|
||||||
# Load base bash library
|
# Load base bash library
|
||||||
source $BIN_PATH/$LIBRARY/base.lib
|
source $BIN_PATH/$LIBRARY/base.lib
|
||||||
|
@ -101,14 +98,7 @@ install() {
|
||||||
command_installed $DIALOG_PACKAGE
|
command_installed $DIALOG_PACKAGE
|
||||||
if [ $? -ne 0 ]
|
if [ $? -ne 0 ]
|
||||||
then
|
then
|
||||||
os_pkgs_install $ZIP_PACKAGE
|
os_pkgs_install $DIALOG_PACKAGE
|
||||||
fi
|
|
||||||
|
|
||||||
# Install sqlite3 from OS Packages
|
|
||||||
command_installed $SQLITE_COMMAND
|
|
||||||
if [ $? -ne 0 ]
|
|
||||||
then
|
|
||||||
os_pkgs_install $SQLITE_PACKAGE
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Install python from OS Packages
|
# Install python from OS Packages
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
devs
|
|
|
@ -1 +0,0 @@
|
||||||
secure/backups
|
|
|
@ -1,17 +0,0 @@
|
||||||
gh
|
|
||||||
gnupg2
|
|
||||||
iftop
|
|
||||||
imagemagick
|
|
||||||
iperf
|
|
||||||
jq
|
|
||||||
lsof
|
|
||||||
mutt
|
|
||||||
net-tools
|
|
||||||
nmap
|
|
||||||
paperkey
|
|
||||||
pipx
|
|
||||||
python3-pip
|
|
||||||
python3-gitlab
|
|
||||||
remmina
|
|
||||||
terminator
|
|
||||||
wireshark
|
|
|
@ -1,135 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
#
|
|
||||||
# gpg_backup.sh
|
|
||||||
# Modified: 2024/12/09 10:27:00
|
|
||||||
# Derechos de Autor (C) [2024] [Mauro Rosero P. <mauro@roser.one>]
|
|
||||||
#
|
|
||||||
# Este programa es software libre: usted puede redistribuirlo y/o modificarlo
|
|
||||||
# bajo los términos de la Licencia Pública Affero General de GNU tal como
|
|
||||||
# lo publica la Free Software Foundation, ya sea la versión 3 de la licencia,
|
|
||||||
# o (a su elección) cualquier versión posterior.
|
|
||||||
#
|
|
||||||
# Este programa se distribuye con la esperanza de que sea útil,
|
|
||||||
# pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de
|
|
||||||
# COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la
|
|
||||||
# Licencia Pública Affero General de GNU para obtener más detalles.
|
|
||||||
#
|
|
||||||
# Debería haber recibido una copia de la Licencia Pública Affero General
|
|
||||||
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
DEVSPATH=devs
|
|
||||||
BIN_HOME=$HOME/$DEVSPATH
|
|
||||||
BIN_MESG=bin/msg
|
|
||||||
BIN_LIBS=bin/lib
|
|
||||||
|
|
||||||
# CHECK SHELL LANGUAGE
|
|
||||||
BIN_LANG=${LANG:0:2}
|
|
||||||
|
|
||||||
# LOAD BASE BASH LIBRARY
|
|
||||||
source $BIN_HOME/$BIN_LIBS/base.lib
|
|
||||||
#baselib_test
|
|
||||||
|
|
||||||
# LOAD CONSOLE BASH LIBRARY
|
|
||||||
source $BIN_HOME/$BIN_LIBS/console.lib
|
|
||||||
#consolelib_test
|
|
||||||
|
|
||||||
# LOAD SQLITE3 BASH LIBRARY
|
|
||||||
source $BIN_HOME/$BIN_LIBS/sqlite.lib
|
|
||||||
#sqlitelib_test
|
|
||||||
|
|
||||||
# LOAD GPG BASH LIBRARY
|
|
||||||
source $BIN_HOME/$BIN_LIBS/gpg.lib
|
|
||||||
#gpglib_test
|
|
||||||
|
|
||||||
# Load head messages
|
|
||||||
load_messages $BIN_HOME $BIN_MESG $BIN_LANG "head"
|
|
||||||
|
|
||||||
# Load gpg messages
|
|
||||||
load_messages $BIN_HOME $BIN_MESG $BIN_LANG "gpg"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
########### MAIN PROGRAM ###########
|
|
||||||
|
|
||||||
# Set program title
|
|
||||||
title="$head_000 $head_002"
|
|
||||||
apps_title="${gpmsg_001}"
|
|
||||||
|
|
||||||
# Check if dialog is not installed, exited!
|
|
||||||
command_installed "dialog"
|
|
||||||
if [ $? -ne 0 ]
|
|
||||||
then
|
|
||||||
display_devstools_header "${gpmsg_001}"
|
|
||||||
echo "${head_001}"
|
|
||||||
exit 200
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check if os is valid!
|
|
||||||
get_osname
|
|
||||||
if [ "${os_name}" == "${head_unknow}" ]
|
|
||||||
then
|
|
||||||
dialog_error_box "${head_error}" "${head_os_error}"
|
|
||||||
exit 3
|
|
||||||
fi
|
|
||||||
|
|
||||||
command_installed "zip"
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
dialog_error_box "${head_error}" "${head_zip}"
|
|
||||||
exit 9
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Backup de claves GPG
|
|
||||||
dialog_yesno "${gpmsg_105}"
|
|
||||||
case ${result} in
|
|
||||||
0)
|
|
||||||
gpg_backup "$DB_GPG_PATH/$DB_GPG_FILE" "$BIN_HOME/$GPG_CONFIG_PATH" "$DATEBAK"
|
|
||||||
rc=$?
|
|
||||||
case $rc in
|
|
||||||
0)
|
|
||||||
dialog_error_box "${head_info}" "${gpmsg_106}"
|
|
||||||
clear
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
10)
|
|
||||||
dialog_error_box "${head_error}" "${gpmsg_107}"
|
|
||||||
clear
|
|
||||||
exit $rc
|
|
||||||
;;
|
|
||||||
11)
|
|
||||||
dialog_error_box "${head_error}" "${gpmsg_108}"
|
|
||||||
clear
|
|
||||||
exit $rc
|
|
||||||
;;
|
|
||||||
13)
|
|
||||||
dialog_error_box "${head_error}" "${gpmsg_109}"
|
|
||||||
clear
|
|
||||||
exit $rc
|
|
||||||
;;
|
|
||||||
14)
|
|
||||||
dialog_error_box "${head_error}" "${gpmsg_111}"
|
|
||||||
clear
|
|
||||||
exit $rc
|
|
||||||
;;
|
|
||||||
15)
|
|
||||||
dialog_error_box "${head_error}" "${gpmsg_112}"
|
|
||||||
clear
|
|
||||||
exit $rc
|
|
||||||
;;
|
|
||||||
18)
|
|
||||||
dialog_error_box "${head_error}" "${gpmsg_110}"
|
|
||||||
clear
|
|
||||||
exit $rc
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
dialog_error_box "${head_error}" "${head_op_error} (${rc})"
|
|
||||||
exi $rc
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
dialog_error_box "${head_error}" "${head_op_error}"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# End Main Program
|
|
||||||
clear
|
|
180
bin/lib/gpg.lib
180
bin/lib/gpg.lib
|
@ -17,21 +17,15 @@
|
||||||
# Debería haber recibido una copia de la Licencia Pública Affero General
|
# Debería haber recibido una copia de la Licencia Pública Affero General
|
||||||
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
|
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
GPG_DEFAULT_PATH=$HOME/.gnupg
|
GPG_DEFAULT_PATH=~/.gnupg
|
||||||
GPG_CONFIG_PATH=bin/config
|
GPG_CFG_PATH=bin/config
|
||||||
GPG_TEMPLATE=gpg.config
|
GPG_TEMPLATE=gpg.config
|
||||||
GPG_CONFIG=gpg.conf
|
GPG_CONFIG=gpg.conf
|
||||||
GPG_BACKUP_CFG=gpg.backup
|
|
||||||
GPGP_BACKUP_SECRET=gpg.secret
|
|
||||||
GPG_SUBKEY_ID=""
|
GPG_SUBKEY_ID=""
|
||||||
GPG_REVOKE_FILES="*.rev"
|
|
||||||
|
|
||||||
DB_GPG_PATH=$HOME/.gnupg
|
|
||||||
DB_GPG_FILE=$USER.db
|
|
||||||
DB_GPG_SUBKEYS_KEY="subkey_id"
|
DB_GPG_SUBKEYS_KEY="subkey_id"
|
||||||
DB_GPG_SUBKEYS="GPG_SUBKEYS"
|
DB_GPG_SUBKEYS="GPG_SUBKEYS"
|
||||||
SQL_GPG_SUBKEYS="${DB_GPG_SUBKEYS}.sql"
|
DF_GPG_SUBKEYS="${DB_GPG_SUBKEYS}.sql"
|
||||||
|
REVOKE_FILES="*.rev"
|
||||||
|
|
||||||
# Test library
|
# Test library
|
||||||
function gpglib_test() {
|
function gpglib_test() {
|
||||||
|
@ -42,144 +36,42 @@ function gpglib_test() {
|
||||||
# Set gpg environment
|
# Set gpg environment
|
||||||
function gpg_setting() {
|
function gpg_setting() {
|
||||||
|
|
||||||
local BIN_CONFIG=$1
|
local BIN_CONFIG=$1
|
||||||
local GPG_PATH=$2
|
local GPG_PATH=$2
|
||||||
local LOCAL_BACKUP=$3
|
local LOCAL_BACKUP=$3
|
||||||
local TIMESTAMP=$4
|
local TIMESTAMP=$4
|
||||||
|
|
||||||
# Check if gpg directory path exists
|
# Check if gpg directory path exists
|
||||||
if [ ! -d "${GPG_PATH}" ]
|
if [ ! -d "${GPG_PATH}" ]
|
||||||
then
|
|
||||||
# Create gpg directory path
|
|
||||||
mkdir -p ${GPG_PATH}
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
return 2
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check if gpg template file exists
|
|
||||||
if [ ! -f "${BIN_CONFIG}/${GPG_CFG_PATH}/${GPG_TEMPLATE}" ]
|
|
||||||
then
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -d "${LOCAL_BACKUP}" ]
|
|
||||||
then
|
|
||||||
if [ -f "${GPG_PATH}/${GPG_CONFIG}" ]
|
|
||||||
then
|
then
|
||||||
# Destination file backup
|
# Create gpg directory path
|
||||||
local BACKUP_FILE="${LOCAL_BACKUP}/gpg_${TIMESTAMP}.bak"
|
mkdir -p ${GPG_PATH}
|
||||||
cp -f "${GPG_PATH}/${GPG_CONFIG}" "${BACKUP_FILE}"
|
if [ $? -ne 0 ]; then
|
||||||
if [ $? -ne 0 ]; then
|
return 2
|
||||||
return 3
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if gpg template file exists
|
||||||
|
if [ ! -f "${BIN_CONFIG}/${GPG_CFG_PATH}/${GPG_TEMPLATE}" ]
|
||||||
|
then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d "${LOCAL_BACKUP}" ]
|
||||||
|
then
|
||||||
|
if [ -f "${GPG_PATH}/${GPG_CONFIG}" ]
|
||||||
|
then
|
||||||
|
# Destination file backup
|
||||||
|
local BACKUP_FILE="${LOCAL_BACKUP}/gpg${TIMESTAMP}.bak"
|
||||||
|
cp -f "${GPG_PATH}/${GPG_CONFIG}" "${BACKUP_FILE}"
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
return 3
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
# Copia el archivo de plantilla al destino
|
# Copia el archivo de plantilla al destino
|
||||||
cp -f "${BIN_CONFIG}/${GPG_CFG_PATH}/${GPG_TEMPLATE}" "${GPG_PATH}/${GPG_CONFIG}"
|
cp -f "${BIN_CONFIG}/${GPG_CFG_PATH}/${GPG_TEMPLATE}" "${GPG_PATH}/${GPG_CONFIG}"
|
||||||
return $?
|
return $?
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
# Generate token for backup file
|
|
||||||
function gpg_backup_token() {
|
|
||||||
local SECRET_FILE=$1
|
|
||||||
|
|
||||||
if [[ ! -e $archivo_token ]]
|
|
||||||
then
|
|
||||||
local BACKUP_TOKEN=$(uuidgen)
|
|
||||||
echo "$BACKUP_TOKEN" > "$SECRET_FILE"
|
|
||||||
chmod 600 "$SECRET_FILE"
|
|
||||||
fi
|
|
||||||
|
|
||||||
return 0
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
# Local backup of gpp keys
|
|
||||||
function gpg_backup() {
|
|
||||||
|
|
||||||
local DB_BACKUP=$1
|
|
||||||
local BIN_CONFIG=$2
|
|
||||||
local TIMESTAMP=$3
|
|
||||||
local rc=0
|
|
||||||
|
|
||||||
# Check if backup configuration file exists
|
|
||||||
if [ ! -f $BIN_CONFIG/$GPG_BACKUP_CFG ]
|
|
||||||
then
|
|
||||||
return 10
|
|
||||||
fi
|
|
||||||
|
|
||||||
local LOCAL_BACKUP=$HOME/$(cat < $BIN_CONFIG/$GPG_BACKUP_CFG)
|
|
||||||
|
|
||||||
# Check if backup path exist
|
|
||||||
if [ -z "$LOCAL_BACKUP" ]; then
|
|
||||||
return 11
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -d "${LOCAL_BACKUP}" ]
|
|
||||||
then
|
|
||||||
mkdir -p "${LOCAL_BACKUP}"
|
|
||||||
rc=$?
|
|
||||||
if [ $rc -ne 0 ]; then
|
|
||||||
return $rc
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
gpg_backup_token "${LOCAL_BACKUP}/$GPGP_BACKUP_SECRET"
|
|
||||||
|
|
||||||
# Get secret backup
|
|
||||||
ZPASSWORD=$(cat < "${LOCAL_BACKUP}/$GPGP_BACKUP_SECRET")
|
|
||||||
if [ -z "${ZPASSWORD}" ]; then
|
|
||||||
return 13
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Exportar el anillo de claves GPG a un archivo de respaldo temporal
|
|
||||||
local TMP_PATH=$(mktemp -d)
|
|
||||||
local TMP_FILE="gpg.bak"
|
|
||||||
gpg --export-options backup -o "${TMP_PATH}/${TMP_FILE}" --export
|
|
||||||
rc=$?
|
|
||||||
if [ $rc -ne 0 ]; then
|
|
||||||
rm -rf "${tmp_path}"
|
|
||||||
return $rc
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Dump GPG_SUBKEYS table to SQL
|
|
||||||
local TMP_DB_DUMP="${SQL_GPG_SUBKEYS}"
|
|
||||||
local DB_DUMP="${TMP_PATH}/${TMP_DB_DUMP}"
|
|
||||||
sqlite_dump "${DB_BACKUP}" "${DB_DUMP}" "${DB_GPG_SUBKEYS}"
|
|
||||||
rc=$?
|
|
||||||
if [ ${rc} -ne 0 ]
|
|
||||||
then
|
|
||||||
rm -rf "${TMP_PATH}"
|
|
||||||
return $rc
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Copiar los archivos de revocación
|
|
||||||
local REVOKE_PATH="${GNUPGHOME:-$GPG_DEFAULT_PATH}/openpgp-revocs.d"
|
|
||||||
cp -rf "${REVOKE_PATH}"/${GPG_REVOKE_FILES} "${TMP_PATH}/"
|
|
||||||
rc=$?
|
|
||||||
if [ $rc -ne 0 ]
|
|
||||||
then
|
|
||||||
rm -rf "${TMP_PATH}"
|
|
||||||
return $rc
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Cambiar el directorio de trabajo a la carpeta temporal para poder hacer el empaquetamiento zip
|
|
||||||
cd "${TMP_PATH}"
|
|
||||||
|
|
||||||
# Comprimir el archivo de respaldo en un archivo ZIP protegido con contraseña
|
|
||||||
BACKUP_FILE="${LOCAL_BACKUP}/gpg_${USER}_${TIMESTAMP}"
|
|
||||||
zip -r -P "${ZPASSWORD}" $BACKUP_FILE *
|
|
||||||
rc=$?
|
|
||||||
if [ $rc -ne 0 ]
|
|
||||||
then
|
|
||||||
rm -rf "${TMP_PATH}"
|
|
||||||
return $rc
|
|
||||||
fi
|
|
||||||
|
|
||||||
rm -rf "${TMP_PATH}"
|
|
||||||
return 0
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,95 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
#
|
|
||||||
# Library: sqlite.lib
|
|
||||||
# Modified: 2024/12/09 08:20:00
|
|
||||||
# Derechos de Autor (C) [2024] [Mauro Rosero P. <mauro@roser.one>]
|
|
||||||
#
|
|
||||||
# Este programa es software libre: usted puede redistribuirlo y/o modificarlo
|
|
||||||
# bajo los términos de la Licencia Pública Affero General de GNU tal como
|
|
||||||
# lo publica la Free Software Foundation, ya sea la versión 3 de la licencia,
|
|
||||||
# o (a su elección) cualquier versión posterior.
|
|
||||||
#
|
|
||||||
# Este programa se distribuye con la esperanza de que sea útil,
|
|
||||||
# pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de
|
|
||||||
# COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la
|
|
||||||
# Licencia Pública Affero General de GNU para obtener más detalles.
|
|
||||||
#
|
|
||||||
# Debería haber recibido una copia de la Licencia Pública Affero General
|
|
||||||
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
|
|
||||||
DB_LOADED=1
|
|
||||||
DB_PATH=dbfiles
|
|
||||||
DB_USER=${USER}.db
|
|
||||||
|
|
||||||
# Test library
|
|
||||||
function sqlitelib_test() {
|
|
||||||
echo "Sqlite Library loaded!"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
# Export selected sqlite tables
|
|
||||||
# Arguments:
|
|
||||||
# $1: Database file
|
|
||||||
# $2: Dump tables file
|
|
||||||
# $3...: Tables list to dump
|
|
||||||
# Example Use:
|
|
||||||
# sqlite_export "my_database.db" "output.sql" "table1" "table2"
|
|
||||||
# To export all tables, use:
|
|
||||||
# sqlite_export "my_database.db" "output.sql"
|
|
||||||
|
|
||||||
function sqlite_dump() {
|
|
||||||
|
|
||||||
local DATABASE=$1
|
|
||||||
local DUMP_FILE=$2
|
|
||||||
|
|
||||||
shift 2
|
|
||||||
local TABLES_LIST=("$@")
|
|
||||||
local rc=0
|
|
||||||
|
|
||||||
# Check if database exists
|
|
||||||
if [ -z "$DATABASE" ]; then
|
|
||||||
return 18
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f "$DATABASE" ]; then
|
|
||||||
return 14
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check not blank dump file name
|
|
||||||
if [ -z "$DUMP_FILE" ]; then
|
|
||||||
return 15
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ${#TABLES_LIST[@]} -eq 0 ]
|
|
||||||
then
|
|
||||||
# If no tables are provided, dump all tables
|
|
||||||
sqlite3 "$DATABASE" .dump > $DUMP_FILE
|
|
||||||
rc=$?
|
|
||||||
if [ $rc -gt 1 ]; then
|
|
||||||
return $rc
|
|
||||||
else
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Reset dump file
|
|
||||||
> $DUMP_FILE
|
|
||||||
|
|
||||||
for TABLE in "${TABLES_LIST[@]}"
|
|
||||||
do
|
|
||||||
# Check if table exists
|
|
||||||
EXIST=$(sqlite3 $DATABASE "SELECT name FROM sqlite_master WHERE type='table' AND name='$TABLE';")
|
|
||||||
|
|
||||||
if [ "$EXIST" == "$TABLE" ]; then
|
|
||||||
sqlite3 "$DATABASE" .dump "$TABLE" >> "$DUMP_FILE"
|
|
||||||
rc=$?
|
|
||||||
if [ $rc -gt 1 ]; then
|
|
||||||
return $rc
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
return 0
|
|
||||||
|
|
||||||
}
|
|
|
@ -13,17 +13,8 @@
|
||||||
|
|
||||||
|
|
||||||
gpmsg_000="INICIALIZAR GPG"
|
gpmsg_000="INICIALIZAR GPG"
|
||||||
gpmsg_001="BACKUP GPG"
|
|
||||||
|
|
||||||
gpmsg_101="Desea inicializar la configuración de GPG?"
|
gpmsg_101="Desea inicializar la configuración de GPG?"
|
||||||
gpmsg_102="Inicialización de configuración GPG completada!"
|
gpmsg_102="Inicialización de configuración GPG completada!"
|
||||||
gpmsg_103="Plantilla de configuración GPG no existe!"
|
gpmsg_103="Plantilla de configuración GPG no existe!"
|
||||||
gpmsg_104="Desea realizar una copia de seguridad de GPG?"
|
|
||||||
gpmsg_105="Desea realizar copia de seguridad de las claves GPG?"
|
|
||||||
gpmsg_106="Copia de seguridad de claves GPG completada!"
|
|
||||||
gpmsg_107="Archivo de configuración GPG no fue encontrado!"
|
|
||||||
gpmsg_108="Carpeta de copia de seguridad local no existe"
|
|
||||||
gpmsg_109="Contraseña para encriptación del archivo ZIP no fue suministrada"
|
|
||||||
gpmsg_110="Base de Datos SQLITE3 no fue suministrada"
|
|
||||||
gpmsg_111="Archivo de Base de Datos SQLITE3 no existe!"
|
|
||||||
gpmsg_112="Carpeta temporal de Backup no fue suministrada"
|
|
||||||
|
|
|
@ -36,7 +36,6 @@ head_nobuild="No existe carpeta build para creación de contenedores"
|
||||||
head_nodockerfile="No existe el archivo de configuración Dockerfile"
|
head_nodockerfile="No existe el archivo de configuración Dockerfile"
|
||||||
head_nobuilded="No se pudo completar la construcción del contenedor"
|
head_nobuilded="No se pudo completar la construcción del contenedor"
|
||||||
head_builded="Construcción del contenedor completada!"
|
head_builded="Construcción del contenedor completada!"
|
||||||
head_zip="Utilitario zip no ha sido instalado!"
|
|
||||||
|
|
||||||
head_container="Generando contenedor"
|
head_container="Generando contenedor"
|
||||||
label_email="Correo Electrónico:"
|
label_email="Correo Electrónico:"
|
||||||
|
|
Loading…
Reference in a new issue