TarMonster
[!NOTE]
An experimental backup & restore script utilizing tar, gzip, & bzip2.
[!WARNING]
This code is highly experiemental and has NOT been fully implemented or tested yet.
[!IMPORTANT]
Testing has NOT been done yet, is NOT suitable for testing, and still lacks most features.
:warning: This code is highly experiemental and has NOT been fully implemented or tested yet. :warning:
Testing has gone well so far, and can be considered somewhat suitable for testing, but still lacks most features.
Why Call It TarMonster?
TarMonster gets its name from both the Linux program tar and a Scooby-Doo villain.
It is intended to allow for automatic file naming with the date of the backup as part of the filename, e.g. backup-202220626-1.
For now, the primary focus is to create backups and compress them. Restoring backups will come later.
Update October 25, 2024 - UNTESTED!
- Added several fucntions from BLING into the functions folder.
Update August 1, 2023 - UNTESTED!
- Uploaded test code to _TarMonster-20230701-1 folder.
- Completed majority of config file split.
- Renamed $AppName and $AppVersion to $ProgName and $ProgVersion.
- Re-added $AppName to define app we are backing up, such as EspoCRM.
- Begin implementing plugin functionality.
Update April 19, 2023
- Uploaded working copy.
- Added and enabled ColorEcho (Cecho) functionality.
- Created _DepricatedFolders Folder.
- Moved previous non-working copy to _OldScripts2.
- Moved original files to _OldScripts.
- File & folder reorganization.
- Added functions folder.
- Added libraries folder.
- Added conf folder.
- Begin splitting master config file into seperate ones.
- Moved config files to conf folder.
- Moved Colors.shlib to libraries folder.
- Set main script to use new file/folder locations.
- Renamed old main scripts.
Update June 11, 2023
TODO
- [ ] Integrate BLING functionality. See Issue # 4.
- [x] :heavy_check_mark: Merge code from most recent EspoCRM tests. :heavy_check_mark: - DONE! Needs Testing.
- [x] :heavy_check_mark: Finish implementation of config file split. :heavy_check_mark: - DONE! Needs testing.
- [ ] Add Gzip functionality. See Issue #5.
- [ ] Add BackupFileName increments. See Issue # 3.
- [ ] :ballot_box_with_check: Enable Plugin Functionality. :ballot_box_with_check: See Issue #12. - In Progress.
Proposed Plugins - Applications
- [IN PROGRESS] :ballot_box_with_check: [EspoCRM] Backup/Restore Functionality For EspoCRM. :ballot_box_with_check:
- [IN PROGRESS] :ballot_box_with_check: [MantisBT] Backup/Restore Functionality For MantisBT. :ballot_box_with_check:
- [PLANNED] [Apache2] Backup/Restore Functionality For Apache2 (httpd).
- [PLANNED] [PhpMyAdmin] Backup/Restore Functionality For PhpMyAdmin.
- [PLANNED] [PhpSysInfo] Backup/Restore Functionality For PhpSysInfo.
- [PLANNED] [WordPress] Backup/Restore Functionality For WordPress.
Proposed Plugins - Utilities
- [IN PROGRESS] :ballot_box_with_check: [DB-Utility] Backup/Restore MySQL/MariaDB Databases w/ Optional Encryption - In Progress on our MantisBT site. :ballot_box_with_check:
- [PLANNED] [EspoCRM-PostUpdateChecker] Check for new releases after upgrading so as to rerun the DoUpgrade function again.
- [PLANNED] [WebRoot-Utility] Backup/Restore functionality for /var/www/html, etc.
- [PLANNED] [BuildRoot-Utility] Backup/Restore functionality for rpmbuild folder on Fedora/RHEL.
- [PLANNED] [UserDir-Utility] Backup/Restore functionality for user directories, such as home/user1, etc.
- [PLANNED] [BackupCompare] Compares 2 TarMonster archives.