init
This commit is contained in:
commit
6d87ac8ba1
139 changed files with 7604 additions and 0 deletions
53
local-bin/.local/bin/dbeaver-backup.sh
Executable file
53
local-bin/.local/bin/dbeaver-backup.sh
Executable file
|
@ -0,0 +1,53 @@
|
|||
#!/bin/bash
|
||||
|
||||
# DBeaver Profile Backup Script
|
||||
# This script creates a backup of DBeaver profiles and configurations
|
||||
|
||||
# Configuration variables - modify as needed
|
||||
BACKUP_DIR="/home/forbi/Sync/Backups"
|
||||
HOSTNAME=$(hostname)
|
||||
BACKUP_FILE="dbeaver_backup_${HOSTNAME}.tar.gz"
|
||||
LOG_FILE="$BACKUP_DIR/dbeaver_backup_log.txt"
|
||||
|
||||
# DBeaver configuration location
|
||||
DBEAVER_DATA="$HOME/.local/share/DBeaverData" # Contains drivers, workspace, and secure storage
|
||||
|
||||
# Create backup directory if it doesn't exist
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
|
||||
# Start logging
|
||||
echo "===== DBeaver Backup Started at $(date) =====" >>"$LOG_FILE"
|
||||
|
||||
# Check if DBeaver configuration exists
|
||||
if [ ! -d "$DBEAVER_DATA" ]; then
|
||||
echo "Error: DBeaver configuration not found at $DBEAVER_DATA. Please make sure DBeaver is installed and has been run at least once." | tee -a "$LOG_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Create temporary directory for backup
|
||||
TEMP_DIR=$(mktemp -d)
|
||||
echo "Created temporary directory: $TEMP_DIR" >>"$LOG_FILE"
|
||||
|
||||
# Copy DBeaver data to temporary directory
|
||||
echo "Copying DBeaver data from $DBEAVER_DATA..." >>"$LOG_FILE"
|
||||
cp -r "$DBEAVER_DATA" "$TEMP_DIR/"
|
||||
|
||||
# Create compressed archive
|
||||
echo "Creating backup archive..." >>"$LOG_FILE"
|
||||
tar -czf "$BACKUP_DIR/$BACKUP_FILE" -C "$TEMP_DIR" .
|
||||
BACKUP_RESULT=$?
|
||||
|
||||
# Clean up temporary directory
|
||||
echo "Cleaning up temporary files..." >>"$LOG_FILE"
|
||||
rm -rf "$TEMP_DIR"
|
||||
|
||||
# Check if backup was successful
|
||||
if [ $BACKUP_RESULT -eq 0 ]; then
|
||||
echo "Backup completed successfully: $BACKUP_DIR/$BACKUP_FILE" | tee -a "$LOG_FILE"
|
||||
echo "Backup size: $(du -h "$BACKUP_DIR/$BACKUP_FILE" | cut -f1)" | tee -a "$LOG_FILE"
|
||||
echo "Keeping only the latest backup for this PC ($HOSTNAME)" >>"$LOG_FILE"
|
||||
else
|
||||
echo "Error: Backup failed with exit code $BACKUP_RESULT" | tee -a "$LOG_FILE"
|
||||
fi
|
||||
|
||||
echo "===== DBeaver Backup Finished at $(date) =====" >>"$LOG_FILE"
|
Loading…
Add table
Add a link
Reference in a new issue