urbackup.sh 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #!/bin/sh
  2. echo -e '\033[35m
  3. _ _ _ _ ___ _ _ _
  4. | | | |_ _| |__ __ _ __| |___ _ _ __ / __| | (_)___ _ _| |_
  5. | |_| | _| _ \/ _` / _| / / || | _ \ | (__| |__| / -_) \ _|
  6. \___/|_| |_.__/\__,_\__|_\_\\_,_| .__/ \___|____|_\___|_||_\__|
  7. |_|
  8. \033[0m'
  9. if [ "$EUID" -ne 0 ]; then
  10. echo "Please run as root"
  11. exit
  12. fi
  13. # get the current position
  14. _cwd="$(pwd)"
  15. # check for assets forlder
  16. _assets="$_cwd/assets"
  17. if [ ! -d "$_assets" ]; then
  18. _assets="$_cwd/../assets"
  19. if [ ! -d "$_assets" ]; then
  20. echo "!! can't find assets directory !!"
  21. exit
  22. fi
  23. fi
  24. # install urbackup client
  25. # https://www.urbackup.org/client_debian_ubuntu_install.html
  26. # https://blog.stephane-huc.net/systeme/debian/urbackup_client_gui
  27. # https://urbackup.atlassian.net/wiki/spaces/US/pages/9142274/Headless+Linux+client+setup
  28. # Install the dependencies UrBackup needs
  29. apt install build-essential "g++" "libcrypto++-dev" libz-dev -y
  30. # libwxgtk3.0-dev
  31. # Download the UrBackup client source files and extract them
  32. # wget -P /tmp/ https://hndl.urbackup.org/Client/latest/urbackup-client-2.3.4.0.tar.gz
  33. # wget -P /tmp/ https://hndl.urbackup.org/Client/2.4.11/urbackup-client-2.4.11.0.tar.gz
  34. # wget -P /tmp/ https://hndl.urbackup.org/Client/2.5.20/urbackup-client-2.5.20.0.tar.gz
  35. wget -P /tmp/ https://hndl.urbackup.org/Client/2.5.20/urbackup-client-2.5.24.0.tar.gz
  36. cd /tmp
  37. # tar xzf /tmp/urbackup-client-2.3.4.0.tar.gz
  38. # tar xzf /tmp/urbackup-client-2.5.20.0.tar.gz
  39. tar xzf /tmp/urbackup-client-2.5.24.0.tar.gz
  40. # Build the UrBackup client and install it
  41. # cd /tmp/urbackup-client-2.3.4.0
  42. cd /tmp/urbackup-client-2.5.24.0
  43. ./configure --enable-headless
  44. make -j4
  45. make install
  46. # Make sure that the UrBackup client backend runs correctly
  47. # urbackupclientbackend -v info
  48. # configure
  49. echo -n "Please provide the urbackup-server's ip : "
  50. read _ip
  51. echo -n "Please provide the internet_authkey of server : "
  52. read _authkey
  53. echo -n "Please provide the computer name of this client : "
  54. read _computername
  55. echo "internet_server=$_ip
  56. internet_server_port=55415
  57. internet_authkey=$_authkey
  58. internet_mode_enabled=true
  59. internet_image_backups_def=false
  60. default_dirs_def=/etc;var/www;/var/backups/mysql
  61. startup_backup_delay_def=3
  62. computername=$_computername" > /etc/default/urbackupclient
  63. # /usr/local/var/urbackup/data/settings.cfg
  64. # firewall
  65. ufw allow from "$_ip" to any port 35621
  66. ufw allow from "$_ip" to any port 35622
  67. ufw allow from "$_ip" to any port 35623
  68. # install and enable systemd service
  69. # cp "$_assets"/urbackup.service /etc/systemd/system/
  70. cp urbackupclientbackend-debian.service /etc/systemd/system/urbackup.service
  71. chmod a+x /etc/systemd/system/urbackup.service
  72. systemctl --system daemon-reload
  73. systemctl start urbackup.service
  74. systemctl enable urbackup.service