Newer
Older
backup-commander / README.md
  1. # Backup Commander
  2.  
  3. Backup Commander is a simple web-based backup platform powered by PHP offering:
  4.  
  5. - Easy installation
  6. - Intuitive UI
  7. - Incremental file backup
  8. - Backup scheduling
  9.  
  10. ### Installation
  11. --------
  12. Backup Commander requires a running webserver such as apache using php
  13.  
  14. 1. Grab the latest version from the repository: `git clone http://pearcey.net:8080/johnpearcey/backup-commander`
  15. 2. Navigate to the install folder `cd install`
  16. 3. Run the install bash script. Note that you must specify the web user which apache is serving as, e.g. www-root or http etc..
  17.  
  18. The install.sh script will automatically pull the latest version so it can be run at any time to update the system.
  19.  
  20. The first time install.sh is run, it will require the presence of conf.php. You will need to fill this in with specific information
  21. relative to your setup. An template file is supplied as conf-sample.php.
  22.  
  23. The last thing which needs to be done is to edit the sudoers file using visudo. The following line should be added:
  24. > www-data ALL=(ALL) NOPASSWD: /usr/bin/php /var/www/html/bin/run-bu-by-id.php *
  25.  
  26. This line shoul be towards the end of the file, e.g. AFTER the %sudo line if you have one.
  27.  
  28. ><pre>
  29. Test by switching user to www-data:
  30. su -s /bin/bash www-data
  31. cd /var/www/html
  32. php bin/run-bu-by-id.php 19 0
  33. where 19 is the backup id and 0/1 is not-test/test
  34. </pre>
  35.  
  36. Comment out /inc/secure.php in post_handler.php if the login is not required
  37.  
  38.  
  39. ### Project directory structure
  40. <pre>
  41. backup-commander
  42. └─html All web code. You can create a symlink to this directory for your web-server
  43. ├─bin Binary scripts runnable via bash. This directory is NOT served
  44. ├─css All CSS files
  45. ├─img All image files
  46. ├─inc All php files. This directory is NOT served
  47. ├─data All data files. This directory is NOT served
  48. └─js All JS files
  49. └─install Install and update scripts
  50. </pre>
  51.  
  52.  
  53. ### TODO
  54. --------
  55.  
  56. <pre>
  57. update install script to ask questions to fill in details for conf.php
  58. get passwords from BD
  59. create a user credential page:
  60. new user+password
  61. change own password
  62. but only if the login is enabled (in post_handler.php)
  63. </pre>