Files
homelab-docs/scripts/backup-ct105-vectors.sh

32 lines
974 B
Bash

#!/bin/bash
# Копирование векторов RAG (vectors.npz и др.) из контейнера 105.
# Запускать на хосте Proxmox под root. Использует pct exec.
# Результат: /mnt/backup/other/ct105-vectors/vectors-YYYYMMDD-HHMM.tar.gz
set -e
CT_ID=105
REMOTE_PATH="/home/rag-service/data/vectors"
BACKUP_DIR="/mnt/backup/other/ct105-vectors"
RETENTION_DAYS=14
if [ "$(id -u)" -ne 0 ]; then
echo "Запускайте под root."
exit 1
fi
mkdir -p "$BACKUP_DIR"
DATE=$(date +%Y%m%d-%H%M)
OUTPUT="$BACKUP_DIR/vectors-$DATE.tar.gz"
pct exec $CT_ID -- tar cf - -C /home/rag-service/data vectors 2>/dev/null | gzip > "$OUTPUT"
if [ -s "$OUTPUT" ]; then
echo "Создан: $OUTPUT ($(du -h "$OUTPUT" | cut -f1))"
else
echo "Ошибка: архив пустой или каталог недоступен."
rm -f "$OUTPUT"
exit 1
fi
find "$BACKUP_DIR" -name 'vectors-*.tar.gz' -mtime +$RETENTION_DAYS -delete