backup 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  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 LOGROTATE
  51. #=================================================
  52. ynh_backup "/etc/logrotate.d/$app" "${YNH_APP_BACKUP_DIR}/etc/logrotate.d/$app"
  53. #=================================================
  54. # BACKUP OF THE CRON FILE
  55. #=================================================
  56. ynh_backup "/etc/cron.d/pihole" "${YNH_APP_BACKUP_DIR}/etc/cron.d/pihole"
  57. #=================================================
  58. # BACKUP OF SPECIFIC FILES
  59. #=================================================
  60. ynh_backup "/usr/local/bin/pihole" "${YNH_APP_BACKUP_DIR}/usr/local/bin/pihole"
  61. ynh_backup "/etc/bash_completion.d/pihole" "${YNH_APP_BACKUP_DIR}/etc/bash_completion.d/pihole"
  62. ynh_backup "/etc/sudoers.d/pihole" "${YNH_APP_BACKUP_DIR}/etc/sudoers.d/pihole"
  63. ynh_backup "/etc/init.d/pihole-FTL" "${YNH_APP_BACKUP_DIR}/etc/init.d/pihole-FTL"
  64. ynh_backup "/usr/bin/pihole-FTL" "${YNH_APP_BACKUP_DIR}/usr/bin/pihole-FTL"
  65. ynh_backup "/var/run/pihole-FTL.pid" "${YNH_APP_BACKUP_DIR}/var/run/pihole-FTL.pid"
  66. ynh_backup "/var/run/pihole-FTL.port" "${YNH_APP_BACKUP_DIR}/var/run/pihole-FTL.port"
  67. ynh_backup "/etc/dnsmasq.d/01-pihole.conf" "${YNH_APP_BACKUP_DIR}/etc/dnsmasq.d/01-pihole.conf"
  68. if test -e "/etc/dnsmasq.d/02-pihole-dhcp.conf"; then
  69. ynh_backup "/etc/dnsmasq.d/02-pihole-dhcp.conf" "${YNH_APP_BACKUP_DIR}/etc/dnsmasq.d/02-pihole-dhcp.conf"
  70. fi
  71. if test -e "/etc/dnsmasq.d/03-pihole-wildcard.conf"; then
  72. ynh_backup "/etc/dnsmasq.d/03-pihole-wildcard.conf" "${YNH_APP_BACKUP_DIR}/etc/dnsmasq.d/03-pihole-wildcard.conf"
  73. fi