|
@@ -0,0 +1,83 @@
|
|
|
+# Backup
|
|
|
+
|
|
|
+How to back up server services.
|
|
|
+
|
|
|
+## Prepare
|
|
|
+
|
|
|
+```sql
|
|
|
+CREATE ROLE backup WITH
|
|
|
+ NOSUPERUSER
|
|
|
+ NOCREATEDB
|
|
|
+ NOCREATEROLE
|
|
|
+ PASSWORD 'tropcool'
|
|
|
+ LOGIN
|
|
|
+ ;
|
|
|
+```
|
|
|
+
|
|
|
+### Probably does not work
|
|
|
+Add in the file `pg_hba.conf` :
|
|
|
+```
|
|
|
+local all backup trust
|
|
|
+```
|
|
|
+
|
|
|
+Reload with `SELECT pg_reload_conf();`.
|
|
|
+
|
|
|
+### Probably works
|
|
|
+
|
|
|
+With _postgres_ : `GRANT SELECT ON ALL TABLES IN SCHEMA public TO backup;`
|
|
|
+
|
|
|
+Connect with `sudo -u postgres psql --username=backup --host localhost --dbname=kanboard_db`
|
|
|
+
|
|
|
+`pg_dump kanboard_db --username=backup --host=localhost > dumpfile.test`
|
|
|
+
|
|
|
+Does not work because backup can't access sequences.
|
|
|
+
|
|
|
+## Backup process
|
|
|
+
|
|
|
+### Disable websites
|
|
|
+
|
|
|
+Through _SSH_ on server
|
|
|
+
|
|
|
+```sh
|
|
|
+sudo a2dissite \
|
|
|
+kanboard.jovian-hersemeule.eu kanboard.jovian-hersemeule.eu-le-ssl \
|
|
|
+wiki.jovian-hersemeule.eu wiki.jovian-hersemeule.eu-le-ssl \
|
|
|
+gogs.jovian-hersemeule.eu gogs.jovian-hersemeule.eu-le-ssl ;
|
|
|
+sudo systemctl reload apache2 ;
|
|
|
+```
|
|
|
+
|
|
|
+### Backup local machine
|
|
|
+
|
|
|
+Through _SSH_ on server
|
|
|
+
|
|
|
+```sh
|
|
|
+cd /home/jovian/GitWork/DricomDragon/JovianLinux/ServerScripts/Backup/ ;
|
|
|
+git pull ;
|
|
|
+./j7backalllocal
|
|
|
+```
|
|
|
+
|
|
|
+### Retrieve backups
|
|
|
+
|
|
|
+On local machine
|
|
|
+
|
|
|
+```sh
|
|
|
+cd /home/jovian/GitWork/DricomDragon/JovianLinux/ServerScripts/Backup/ ;
|
|
|
+git pull ;
|
|
|
+./j7retrieve
|
|
|
+```
|
|
|
+
|
|
|
+### Enable websites
|
|
|
+
|
|
|
+Through _SSH_ on server
|
|
|
+
|
|
|
+```sh
|
|
|
+sudo a2ensite \
|
|
|
+kanboard.jovian-hersemeule.eu kanboard.jovian-hersemeule.eu-le-ssl \
|
|
|
+wiki.jovian-hersemeule.eu wiki.jovian-hersemeule.eu-le-ssl \
|
|
|
+gogs.jovian-hersemeule.eu gogs.jovian-hersemeule.eu-le-ssl ;
|
|
|
+sudo systemctl reload apache2 ;
|
|
|
+```
|
|
|
+
|
|
|
+## Automate
|
|
|
+
|
|
|
+Use Jenkins.
|