You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
126 lines
3.4 KiB
126 lines
3.4 KiB
#!/bin/bash
|
|
#
|
|
# Script de restauración de Vicibox para servidor destino
|
|
# Uso: ./restore.sh
|
|
#
|
|
|
|
set -e
|
|
|
|
# Colores para output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m'
|
|
|
|
info() {
|
|
echo -e "${GREEN}[INFO]${NC} $1"
|
|
}
|
|
|
|
warn() {
|
|
echo -e "${YELLOW}[WARN]${NC} $1"
|
|
}
|
|
|
|
error() {
|
|
echo -e "${RED}[ERROR]${NC} $1"
|
|
}
|
|
|
|
# Verificar que se ejecuta como root
|
|
if [ "$EUID" -ne 0 ]; then
|
|
error "Este script debe ejecutarse como root"
|
|
exit 1
|
|
fi
|
|
|
|
# Verificar que existen los archivos
|
|
if [ ! -f "vicibox-scripts.tar.gz" ]; then
|
|
error "No se encuentra vicibox-scripts.tar.gz"
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -f "astguiclient-trunk.tar.gz" ]; then
|
|
error "No se encuentra astguiclient-trunk.tar.gz"
|
|
exit 1
|
|
fi
|
|
|
|
info "=========================================="
|
|
info "Restauración de Vicibox"
|
|
info "=========================================="
|
|
echo ""
|
|
|
|
# 1. Restaurar scripts de Vicibox
|
|
info "1. Restaurando scripts de Vicibox..."
|
|
mkdir -p /usr/share
|
|
if tar -xzf vicibox-scripts.tar.gz -C /usr/share/ 2>/dev/null; then
|
|
chmod +x /usr/share/vicibox/*.sh 2>/dev/null
|
|
chmod +x /usr/share/vicibox/*.pl 2>/dev/null
|
|
chmod +x /usr/share/vicibox/vicibox-* 2>/dev/null
|
|
info " ✓ Scripts restaurados"
|
|
else
|
|
error " ✗ Error al restaurar scripts"
|
|
exit 1
|
|
fi
|
|
echo ""
|
|
|
|
# 2. Crear enlaces simbólicos
|
|
info "2. Creando enlaces simbólicos..."
|
|
mkdir -p /usr/local/bin
|
|
ln -sf /usr/share/vicibox/vicibox-install.pl /usr/local/bin/vicibox-install 2>/dev/null
|
|
ln -sf /usr/share/vicibox/vicibox-express /usr/local/bin/vicibox-express 2>/dev/null
|
|
ln -sf /usr/share/vicibox/vicibox-externip /usr/local/bin/vicibox-externip 2>/dev/null
|
|
ln -sf /usr/share/vicibox/vicibox-timezone /usr/local/bin/vicibox-timezone 2>/dev/null
|
|
ln -sf /usr/share/vicibox/vicibox-mdraid1 /usr/local/bin/vicibox-mdraid1 2>/dev/null
|
|
info " ✓ Enlaces simbólicos creados"
|
|
echo ""
|
|
|
|
# 3. Restaurar código fuente
|
|
info "3. Restaurando código fuente de ViciDial..."
|
|
mkdir -p /usr/src
|
|
if tar -xzf astguiclient-trunk.tar.gz -C /usr/src/ 2>/dev/null; then
|
|
chmod +x /usr/src/astguiclient/trunk/install.pl 2>/dev/null
|
|
chmod +x /usr/src/astguiclient/trunk/bin/* 2>/dev/null || true
|
|
chmod +x /usr/src/astguiclient/trunk/extras/*.sh 2>/dev/null || true
|
|
info " ✓ Código fuente restaurado"
|
|
else
|
|
error " ✗ Error al restaurar código fuente"
|
|
exit 1
|
|
fi
|
|
echo ""
|
|
|
|
# 4. Verificación
|
|
info "4. Verificando instalación..."
|
|
ERRORS=0
|
|
|
|
if [ ! -f "/usr/share/vicibox/vicibox-install.pl" ]; then
|
|
error " ✗ No se encuentra vicibox-install.pl"
|
|
ERRORS=$((ERRORS+1))
|
|
fi
|
|
|
|
if [ ! -f "/usr/src/astguiclient/trunk/install.pl" ]; then
|
|
error " ✗ No se encuentra install.pl de ViciDial"
|
|
ERRORS=$((ERRORS+1))
|
|
fi
|
|
|
|
if [ ! -f "/usr/src/astguiclient/trunk/extras/MySQL_AST_CREATE_tables.sql" ]; then
|
|
error " ✗ No se encuentra MySQL_AST_CREATE_tables.sql"
|
|
ERRORS=$((ERRORS+1))
|
|
fi
|
|
|
|
if [ $ERRORS -eq 0 ]; then
|
|
info " ✓ Verificación completada sin errores"
|
|
else
|
|
warn " ⚠ Se encontraron $ERRORS errores en la verificación"
|
|
fi
|
|
echo ""
|
|
|
|
info "=========================================="
|
|
info "Restauración completada!"
|
|
info "=========================================="
|
|
echo ""
|
|
info "Ahora puedes ejecutar la instalación:"
|
|
echo ""
|
|
echo " Para instalación Express (todo-en-uno):"
|
|
echo " vicibox-install --vicibox-express"
|
|
echo ""
|
|
echo " Para instalación personalizada:"
|
|
echo " vicibox-install"
|
|
echo ""
|