backup 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. #!/bin/bash
  2. #=================================================
  3. # GENERIC STARTING
  4. #=================================================
  5. # MANAGE FAILURE OF THE SCRIPT
  6. #=================================================
  7. # Exit on command errors and treat unset variables as an error
  8. set -eu
  9. #=================================================
  10. # IMPORT GENERIC HELPERS
  11. #=================================================
  12. if [ ! -e _common.sh ]; then
  13. # Rapatrie le fichier de fonctions si il n'est pas dans le dossier courant
  14. sudo cp ../settings/scripts/_common.sh ./_common.sh
  15. sudo chmod a+rx _common.sh
  16. fi
  17. source _common.sh
  18. source /usr/share/yunohost/helpers
  19. #=================================================
  20. # LOAD SETTINGS
  21. #=================================================
  22. app=$YNH_APP_INSTANCE_NAME
  23. final_path=$(ynh_app_setting_get $app final_path)
  24. domain=$(ynh_app_setting_get $app domain)
  25. #=================================================
  26. # STANDARD BACKUP STEPS
  27. #=================================================
  28. # BACKUP OF THE MAIN DIRECTORIES OF THE APP
  29. #=================================================
  30. CHECK_SIZE "$final_path"
  31. ynh_backup "$final_path" "${YNH_APP_BACKUP_DIR}$final_path"
  32. CHECK_SIZE "/etc/.pihole"
  33. ynh_backup "/etc/.pihole" "${YNH_APP_BACKUP_DIR}/etc/.pihole"
  34. CHECK_SIZE "/etc/pihole"
  35. ynh_backup "/etc/pihole" "${YNH_APP_BACKUP_DIR}/etc/pihole"
  36. CHECK_SIZE "/opt/pihole"
  37. ynh_backup "/opt/pihole" "${YNH_APP_BACKUP_DIR}/opt/pihole"
  38. #=================================================
  39. # BACKUP OF THE NGINX CONFIGURATION
  40. #=================================================
  41. ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" "${YNH_APP_BACKUP_DIR}/etc/nginx/conf.d/$domain.d/$app.conf"
  42. #=================================================
  43. # BACKUP OF THE PHP-FPM CONFIGURATION
  44. #=================================================
  45. ynh_backup "/etc/php5/fpm/pool.d/$app.conf" "${YNH_APP_BACKUP_DIR}/etc/php5/fpm/pool.d/$app.conf"
  46. ynh_backup "/etc/php5/fpm/conf.d/20-$app.ini" "${YNH_APP_BACKUP_DIR}/etc/php5/fpm/conf.d/20-$app.ini"
  47. #=================================================
  48. # SPECIFIC BACKUP
  49. #=================================================
  50. # BACKUP OF THE CRON FILE
  51. #=================================================
  52. ynh_backup "/etc/cron.d/pihole" "${YNH_APP_BACKUP_DIR}/etc/cron.d/pihole"
  53. #=================================================
  54. # BACKUP OF SPECIFIC FILES
  55. #=================================================
  56. ynh_backup "/usr/local/bin/pihole" "${YNH_APP_BACKUP_DIR}/usr/local/bin/pihole"
  57. ynh_backup "/etc/bash_completion.d/pihole" "${YNH_APP_BACKUP_DIR}/etc/bash_completion.d/pihole"
  58. ynh_backup "/etc/sudoers.d/pihole" "${YNH_APP_BACKUP_DIR}/etc/sudoers.d/pihole"
  59. ynh_backup "/etc/init.d/pihole-FTL" "${YNH_APP_BACKUP_DIR}/etc/init.d/pihole-FTL"
  60. ynh_backup "/usr/bin/pihole-FTL" "${YNH_APP_BACKUP_DIR}/usr/bin/pihole-FTL"
  61. ynh_backup "/var/run/pihole-FTL.pid" "${YNH_APP_BACKUP_DIR}/var/run/pihole-FTL.pid"
  62. ynh_backup "/var/run/pihole-FTL.port" "${YNH_APP_BACKUP_DIR}/var/run/pihole-FTL.port"
  63. ynh_backup "/etc/dnsmasq.d/01-pihole.conf" "${YNH_APP_BACKUP_DIR}/etc/dnsmasq.d/01-pihole.conf"
  64. if test -e "/etc/dnsmasq.d/02-pihole-dhcp.conf"; then
  65. ynh_backup "/etc/dnsmasq.d/02-pihole-dhcp.conf" "${YNH_APP_BACKUP_DIR}/etc/dnsmasq.d/02-pihole-dhcp.conf"
  66. fi
  67. if test -e "/etc/dnsmasq.d/03-pihole-wildcard.conf"; then
  68. ynh_backup "/etc/dnsmasq.d/03-pihole-wildcard.conf" "${YNH_APP_BACKUP_DIR}/etc/dnsmasq.d/03-pihole-wildcard.conf"
  69. fi