8343-New-machine-id #48
|
@ -1 +1,59 @@
|
|||
1
|
||||
#!/bin/bash
|
||||
|
||||
# Configuración
|
||||
IP_MACHINE=10.29.1.11
|
||||
POOL=backup-pool
|
||||
TARGET_DIR=/etc/pve
|
||||
INTERFACES_FILE=/etc/network
|
||||
BACKUP_NAME=etc-pve.pxar
|
||||
BACKUP_NAME_INTERFACES=interfaces.pxar
|
||||
LOG_FILE=/var/log/proxmox-backup-node-pve.log
|
||||
KEY_FILE="key.key"
|
||||
|
||||
show_help() {
|
||||
echo "Uso: $0 [--standard | --encrypt]"
|
||||
echo
|
||||
echo "Opciones:"
|
||||
echo " --standard Realiza un respaldo estándar."
|
||||
echo " --encrypt Realiza un respaldo encriptado (requiere un archivo de clave)."
|
||||
echo " --help Muestra esta ayuda."
|
||||
exit 0
|
||||
}
|
||||
|
||||
if [ $# -eq 0 ]; then
|
||||
show_help
|
||||
fi
|
||||
|
||||
case "$1" in
|
||||
--standard)
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') - Iniciando respaldo estándar de $TARGET_DIR al repositorio $IP_MACHINE:$POOL" | tee -a "$LOG_FILE"
|
||||
proxmox-backup-client backup "$BACKUP_NAME:$TARGET_DIR" --repository "$IP_MACHINE:$POOL" 2>>"$LOG_FILE" &&
|
||||
proxmox-backup-client backup "$BACKUP_NAME_INTERFACES:$INTERFACES_FILE" --repository "$IP_MACHINE:$POOL" 2>>"$LOG_FILE"
|
||||
;;
|
||||
--encrypt)
|
||||
# Comprobar si el archivo de clave existe
|
||||
if [ ! -f "$KEY_FILE" ]; then
|
||||
echo "Error: El archivo de clave $KEY_FILE no existe." | tee -a "$LOG_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') - Iniciando respaldo encriptado de $TARGET_DIR al repositorio $IP_MACHINE:$POOL" | tee -a "$LOG_FILE"
|
||||
proxmox-backup-client backup "$BACKUP_NAME:$TARGET_DIR" --repository "$IP_MACHINE:$POOL" --crypt-mode encrypt --keyfile "$KEY_FILE" 2>>"$LOG_FILE" &&
|
||||
proxmox-backup-client backup "$BACKUP_NAME_INTERFACES:$INTERFACES_FILE" --repository "$IP_MACHINE:$POOL" --crypt-mode encrypt --keyfile "$KEY_FILE" 2>>"$LOG_FILE"
|
||||
;;
|
||||
--help)
|
||||
show_help
|
||||
;;
|
||||
*)
|
||||
echo "Error: Opción no reconocida."
|
||||
show_help
|
||||
;;
|
||||
esac
|
||||
|
||||
# Verificar el resultado del respaldo
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "$(date '+%Y-%m-%d %H:%M:%S') - Respaldo completado con éxito. Puede revisar el log en $LOG_FILE\n" | tee -a "$LOG_FILE"
|
||||
else
|
||||
echo -e "$(date '+%Y-%m-%d %H:%M:%S') - Error durante el respaldo. Puede revisar el log en $LOG_FILE\n" | tee -a "$LOG_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue