#!/bin/bash USER=`whoami` LOG_Folder="_LOG" LOG1=/ED/Gitea_ED/Script_Gitea_ED/_LOG/Gitea_EDbackup-Source_Files.log TS=`date +"%Y%m%d-%H%M%S"` Bak_Folder="/ED/Gitea_ED/Backup_file" Bak_File_Name=$Bak_Folder/Source_Files.tar Bak_File_Name_TS=$Bak_Folder/Source_Files-$TS.tar BAK_Disk_A_Mount_Point="/BAK_Disk_A" BAK_Disk_A_Hostname_Folder="$BAK_Disk_A_Mount_Point/`hostnamectl | grep "Static hostname" | awk '{print $NF}'`" BAK_Disk_A_Gitea_ED_Script_BAK_Folder="$BAK_Disk_A_Hostname_Folder/Gitea_ED/Backup_file" BAK_Disk_A_Gitea_ED_Script_Bak_File_Name_TS="$BAK_Disk_A_Gitea_ED_Script_BAK_Folder/Source_Files-$TS.gz" Target_Folder=/ED/Gitea_ED/Source_Files ##### Func CHK_LOG_Folder (){ ls /ED/Gitea_ED/Script_Gitea_ED/_LOG > /dev/null 2>&1 if [[ $? != 0 ]]; then sudo mkdir -p /ED/Gitea_ED/Script_Gitea_ED/_LOG sudo chown $USER:$USER /ED/Gitea_ED/Script_Gitea_ED/_LOG fi } CHK_Bak_Folder (){ ls $Bak_Folder > /dev/null 2>&1 if [[ $? == 0 ]]; then echo -e "\033[34mPass. Backup file saving folder: $Bak_Folder exist, go next.\033[0m" else echo -e "\033[31mThere is no Backup file saving folder: $Bak_Folder, next will create a new one automatically.\033[0m" sudo mkdir -p $Bak_Folder sudo chown $USER:$USER $Bak_Folder fi } TAR_File (){ tar cvf $Bak_File_Name $Target_Folder > /dev/null 2>&1 if [[ $? == 0 ]]; then echo -e "\033[34mPass. tar Source_Files file OK.\033[0m" cp $Bak_File_Name $Bak_File_Name_TS if [[ $? == 0 ]]; then echo -e "\033[34mPass. Make a copy file to \"$Bak_Folder\". Finished!\033[0m" else echo -e "\033[41;37mFail. Make a copy file to \"$Bak_Folder\" failed.\033[0m" fi else echo -e "\033[41;37mFail. tar Source_Files file failed.\033[0m" fi } CP_To_BAK_Disk_A (){ cp $Bak_File_Name $BAK_Disk_A_Gitea_ED_Script_Bak_File_Name_TS if [[ $? == 0 ]]; then echo -e "\033[34mPass. Copied to BAK_Disk_A. \033[0m" else echo -e "\033[31mFail. Copied to BAK_Disk_A. \033[0m" fi } echo -e "===== `date +"%Y/%m/%d %H:%M:%S"` ===== \033[45;37m$0\033[0m =====" | tee -a $LOG1 echo -e "\033[32mStart backup the Gitea_ED Source_Files \033[0m" | tee -a $LOG1 CHK_LOG_Folder | tee -a $LOG1 CHK_Bak_Folder | tee -a $LOG1 TAR_File | tee -a $LOG1 echo | tee -a $LOG1 echo -e "\033[32mStart backup the Gitea_ED Source_Files to BAK_Disk_A \033[0m" | tee -a $LOG1 CP_To_BAK_Disk_A | tee -a $LOG1 echo | tee -a $LOG1 echo echo -e "\033[33mLOG file:" echo -e " $LOG1\033[0m" echo