Use case: I have some Tiki instances on ClearOS and I want automatic backups of different Tiki instances to various local computers for safekeeping. These are high level instructions as to how to combine TRIM and Syncthing to do so.
At a high level:
Install each Tiki as a distinct website using sub-domains: How to set up websites on ClearOS
Good:
example.org
example.com
projecta.example.org
projectb.example.org
Bad:
example.org/projecta/
example.org/projectb/
Install TRIM in /var/local/trim as per https://doc.tiki.org/TRIM#How_to_download_and_use
https://doc.tiki.org/TRIM#make_backup
The TRIM archive folders have the following pattern:
Check that your backup is OK, and move on to the next step
TRIM will make the backups and also has a retention cycle (keep last 7 days, last 4 weeks and once per month forever)
https://doc.tiki.org/TRIM#To_setup_automated_backups
Make sure Syncthing automatically restarts when you reboot so that you have unattended automatic backups. Just reboot to see if it's OK. If not, you need to look up the documentation for your Operating System.
You archives will be in something like /var/local/trim/backup/archive/1-example.org/: so sync that folder with your local computer.
Syncthing by default is set two sync multiple folders so they get to the exact same set of files and folders. So if you delete a file in one folder, the deletion is propagated. In the contexts of backups, this could cause issues. Ex.: one the devices runs out of space, and its user decides to clear out old backups. Then, all devices would lose the old backups. The solution is the set Folder Type to "Send Only"
The other thing that could happen: The master server is compromised and the backups are corrupted. Then, all the devices would receive the corrupted data which replaces the valid data. The solution here is to set https://docs.syncthing.net/users/versioning.htmlFile Versioning. Recommended setting is "Staggered"
Because the master server is set to "Send Only", there is no point in setting to "Staggered" (It doesn't receive any data, and thus doesn't need versioning).