modified backup-server code. now it uses normal copy function to back up VM files instead of rsync

This commit is contained in:
arul 2025-03-12 02:12:58 +05:30
parent 7b0108c236
commit 7abc6d7977

69
backup-server Executable file → Normal file
View File

@ -11,7 +11,6 @@ fi
./check-server1
./check-server2
# Define source directories using the explicit path to your home directory
VM_DIR_MY_PLATFORMS="/home/arul/my_platforms/"
VM_DIR_LDR_SERVER="/home/arul/ldr-server/"
@ -43,57 +42,63 @@ chmod 700 "$BACKUP_DRIVE"
chmod 755 "$BACKUP_DRIVE/my_platforms" "$BACKUP_DRIVE/ldr-server" "$BACKUP_DRIVE/home-server_nginx"
echo "Backup directory structure set up with appropriate permissions."
# Backup VM files from my_platforms if the source directory exists
# Delete previous backups from the backup drive if they exist
echo "Deleting previous backups..."
rm -rf "$BACKUP_DRIVE/my_platforms/*" "$BACKUP_DRIVE/ldr-server/*" "$BACKUP_DRIVE/home-server_nginx/*"
echo "Previous backups deleted."
# Copy VM files from my_platforms if the source directory exists
if [ -d "$VM_DIR_MY_PLATFORMS" ]; then
echo "Backing up VM files from my_platforms..."
rsync -avh --progress --no-owner --no-group "$VM_DIR_MY_PLATFORMS" "$BACKUP_DRIVE/my_platforms/"
echo "Backup of my_platforms completed."
echo "Copying VM files from my_platforms..."
cp -r "$VM_DIR_MY_PLATFORMS"/* "$BACKUP_DRIVE/my_platforms/"
echo "Copy of my_platforms completed."
else
echo "Warning: $VM_DIR_MY_PLATFORMS does not exist. Skipping backup for my_platforms."
echo "Warning: $VM_DIR_MY_PLATFORMS does not exist. Skipping copy for my_platforms."
fi
# Backup VM files from ldr-server if the source directory exists
# Copy VM files from ldr-server if the source directory exists
if [ -d "$VM_DIR_LDR_SERVER" ]; then
echo "Backing up VM files from ldr-server..."
rsync -avh --progress --no-owner --no-group "$VM_DIR_LDR_SERVER" "$BACKUP_DRIVE/ldr-server/"
echo "Backup of ldr-server completed."
echo "Copying VM files from ldr-server..."
cp -r "$VM_DIR_LDR_SERVER"/* "$BACKUP_DRIVE/ldr-server/"
echo "Copy of ldr-server completed."
else
echo "Warning: $VM_DIR_LDR_SERVER does not exist. Skipping backup for ldr-server."
echo "Warning: $VM_DIR_LDR_SERVER does not exist. Skipping copy for ldr-server."
fi
# Backup Nginx configuration files
echo "Backing up Nginx configuration files..."
rsync -avh --progress --no-owner --no-group "$NGINX_DIR" "$BACKUP_DRIVE/home-server_nginx/"
echo "Backup of Nginx configuration completed."
# Copy Nginx configuration files
echo "Copying Nginx configuration files..."
cp -r "$NGINX_DIR"/* "$BACKUP_DRIVE/home-server_nginx/"
echo "Copy of Nginx configuration completed."
# Set permissions for Nginx configuration files
echo "Setting permissions for Nginx configuration files..."
chmod 644 "$BACKUP_DRIVE/home-server_nginx/"*
echo "Permissions set for Nginx files."
#echo "Setting permissions for Nginx configuration files..."
#chmod 644 "$BACKUP_DRIVE/home-server_nginx/"*
#echo "Permissions set for Nginx files."
# Set permissions for VM files if the directories exist
if [ -d "$BACKUP_DRIVE/my_platforms" ]; then
echo "Setting permissions for VM files in my_platforms..."
chmod 600 "$BACKUP_DRIVE/my_platforms/"*
fi
#if [ -d "$BACKUP_DRIVE/my_platforms" ]; then
# echo "Setting permissions for VM files in my_platforms..."
# chmod 600 "$BACKUP_DRIVE/my_platforms/"*
#fi
if [ -d "$BACKUP_DRIVE/ldr-server" ]; then
echo "Setting permissions for VM files in ldr-server..."
chmod 600 "$BACKUP_DRIVE/ldr-server/"*
fi
#if [ -d "$BACKUP_DRIVE/ldr-server" ]; then
# echo "Setting permissions for VM files in ldr-server..."
# chmod 600 "$BACKUP_DRIVE/ldr-server/"*
#fi
# Remove executable permissions from backed up files
echo "Removing executable permissions from backed up files..."
chmod -x "$BACKUP_DRIVE/my_platforms/"* "$BACKUP_DRIVE/ldr-server/"* "$BACKUP_DRIVE/home-server_nginx/"*
echo "Executable permissions removed."
# Remove executable permissions from copied files
#echo "Removing executable permissions from copied files..."
#chmod -x "$BACKUP_DRIVE/my_platforms/"* "$BACKUP_DRIVE/ldr-server/"* "$BACKUP_DRIVE/home-server_nginx/"*
#echo "Executable permissions removed."
echo "All backups completed successfully!"
echo "Latest version of Server VM Backup completed successfully!"
figlet "Done"
echo "Unmounting the External backup drive"
umount -l /mnt/my-drive
# Reboot the system after the backup
# Reboot the system after the copy operation
echo "Rebooting the system..."
reboot