Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

Gitea_EDbackup-Script_Gitea_ED-Auto.sh 3.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. #!/bin/bash
  2. USER=`whoami`
  3. LOG_Folder="_LOG"
  4. LOG1=/ED/Gitea_ED/Script_Gitea_ED/_LOG/Gitea_EDbackup-Script_Gitea_ED.log
  5. TS=`date +"%Y%m%d-%H%M%S"`
  6. Bak_Folder="/ED/Gitea_ED/Backup_file"
  7. Bak_File_Name=$Bak_Folder/Script_Gitea_ED.tar
  8. Bak_File_Name_TS=$Bak_Folder/Script_Gitea_ED-$TS.tar
  9. BAK_Disk_A_Mount_Point="/BAK_Disk_A"
  10. BAK_Disk_A_Hostname_Folder="$BAK_Disk_A_Mount_Point/`hostnamectl | grep "Static hostname" | awk '{print $NF}'`"
  11. BAK_Disk_A_Gitea_ED_Script_BAK_Folder="$BAK_Disk_A_Hostname_Folder/Gitea_ED/Backup_file"
  12. BAK_Disk_A_Gitea_ED_Script_Bak_File_Name_TS="$BAK_Disk_A_Gitea_ED_Script_BAK_Folder/Script_Gitea_ED-$TS.gz"
  13. Target_Folder=/ED/Gitea_ED/Script_Gitea_ED
  14. GITEA_INI="/var/lib/gitea/custom/conf/app.ini"
  15. GITEA_INI_TS="$Bak_Folder/app.ini-$TS"
  16. BAK_Disk_A_GITEA_INI_TS=$BAK_Disk_A_Gitea_ED_Script_BAK_Folder/app.ini-$TS
  17. ##### Func
  18. CHK_LOG_Folder (){
  19. ls /ED/Gitea_ED/Script_Gitea_ED/_LOG > /dev/null 2>&1
  20. if [[ $? != 0 ]]; then
  21. sudo mkdir -p /ED/Gitea_ED/Script_Gitea_ED/_LOG
  22. sudo chown $USER:$USER /ED/Gitea_ED/Script_Gitea_ED/_LOG
  23. fi
  24. }
  25. CHK_Bak_Folder (){
  26. ls $Bak_Folder > /dev/null 2>&1
  27. if [[ $? == 0 ]]; then
  28. echo -e "\033[34mPass. Backup file saving folder: $Bak_Folder exist, go next.\033[0m"
  29. else
  30. echo -e "\033[31mThere is no Backup file saving folder: $Bak_Folder, next will create a new one automatically.\033[0m"
  31. sudo mkdir -p $Bak_Folder
  32. sudo chown $USER:$USER $Bak_Folder
  33. fi
  34. }
  35. TAR_File (){
  36. tar cvf $Bak_File_Name $Target_Folder > /dev/null 2>&1
  37. if [[ $? == 0 ]]; then
  38. echo -e "\033[34mPass. tar Script_Gitea_ED file OK.\033[0m"
  39. cp $Bak_File_Name $Bak_File_Name_TS
  40. if [[ $? == 0 ]]; then
  41. echo -e "\033[34mPass. Make a copy file to \"$Bak_Folder\". Finished!\033[0m"
  42. else
  43. echo -e "\033[41;37mFail. Make a copy file to \"$Bak_Folder\" failed.\033[0m"
  44. fi
  45. else
  46. echo -e "\033[41;37mFail. tar Script_Gitea_ED file failed.\033[0m"
  47. fi
  48. }
  49. CP_To_BAK_Disk_A (){
  50. cp $Bak_File_Name $BAK_Disk_A_Gitea_ED_Script_Bak_File_Name_TS
  51. if [[ $? == 0 ]]; then
  52. echo -e "\033[34mPass. Copied to BAK_Disk_A. \033[0m"
  53. else
  54. echo -e "\033[41;37mFail. Copied to BAK_Disk_A. \033[0m"
  55. fi
  56. }
  57. BAK_GITEA_INI (){
  58. ls $GITEA_INI > /dev/null 2>&1
  59. if [[ $? == 0 ]]; then
  60. echo -e "\033[34mPass. $GITEA_INI exist \033[0m"
  61. cp $GITEA_INI $GITEA_INI_TS && cp $GITEA_INI $BAK_Disk_A_GITEA_INI_TS
  62. if [[ $? == 0 ]]; then
  63. echo -e "\033[34mPass. Make a $GITEA_INI copy to \"$Bak_Folder\" and \"BAK_Disk_A\" good. \033[0m"
  64. else
  65. echo -e "\033[41;37mFail. Make a $GITEA_INI copy to \"$Bak_Folder\" and \"BAK_Disk_A\" failed. \033[0m"
  66. fi
  67. else
  68. echo -e -n "\033[33mWarning! $GITEA_INI doesn't exist, please input the filename include its full path: (ex: /var/lib/gitea/custom/conf/app.ini) \033[0m"
  69. read INI
  70. ls $INI > /dev/null 2>&1
  71. if [[ $? != 0 ]]; then
  72. echo -e "\033[41;37mFail. We can't get the app.ini file in your input. Exit \033[0m"
  73. echo
  74. exit
  75. else
  76. cp $INI $GITEA_INI_TS && cp $INI $BAK_Disk_A_GITEA_INI_TS
  77. if [[ $? == 0 ]]; then
  78. echo -e "\033[34mPass. Make a $INI copy to \"$Bak_Folder\" and \"BAK_Disk_A\" good. \033[0m"
  79. else
  80. echo -e "\033[41;37mFail. Make a $INI copy to \"$Bak_Folder\" and \"BAK_Disk_A\" failed. \033[0m"
  81. fi
  82. fi
  83. fi
  84. }
  85. echo -e "===== `date +"%Y/%m/%d %H:%M:%S"` ===== \033[45;37m$0\033[0m =====" | tee -a $LOG1
  86. echo -e "\033[32mStart backup the Script_Gitea_ED \033[0m" | tee -a $LOG1
  87. CHK_LOG_Folder | tee -a $LOG1
  88. CHK_Bak_Folder | tee -a $LOG1
  89. TAR_File | tee -a $LOG1
  90. echo | tee -a $LOG1
  91. echo -e "\033[32mStart backup the Script_Gitea_ED to BAK_Disk_A \033[0m" | tee -a $LOG1
  92. CP_To_BAK_Disk_A | tee -a $LOG1
  93. echo | tee -a $LOG1
  94. echo | tee -a $LOG1
  95. echo -e "\033[32mStart backup the app.ini of gitea \033[0m" | tee -a $LOG1
  96. BAK_GITEA_INI | tee -a $LOG1
  97. echo
  98. echo -e "\033[33mLOG file:"
  99. echo -e " $LOG1\033[m"
  100. echo