{"id":17846441,"url":"https://github.com/technicalguru/backup","last_synced_at":"2026-04-12T12:50:04.236Z","repository":{"id":43300982,"uuid":"148840889","full_name":"technicalguru/backup","owner":"technicalguru","description":"A Perl-based backup/archiving solution for Linux machines","archived":false,"fork":false,"pushed_at":"2023-10-04T15:06:30.000Z","size":110,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-02T15:43:00.910Z","etag":null,"topics":["backup","docker","inux","kubernetes","mysql","perl"],"latest_commit_sha":null,"homepage":null,"language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/technicalguru.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/contributing.md","funding":null,"license":"LICENSE","code_of_conduct":".github/code_of_conduct.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-09-14T20:55:11.000Z","updated_at":"2022-03-06T18:23:34.000Z","dependencies_parsed_at":"2024-10-27T22:28:22.774Z","dependency_job_id":"e4eeed93-0012-4be6-b256-fa0190996ead","html_url":"https://github.com/technicalguru/backup","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/technicalguru/backup","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technicalguru%2Fbackup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technicalguru%2Fbackup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technicalguru%2Fbackup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technicalguru%2Fbackup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/technicalguru","download_url":"https://codeload.github.com/technicalguru/backup/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/technicalguru%2Fbackup/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31715492,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-12T06:22:27.080Z","status":"ssl_error","status_checked_at":"2026-04-12T06:21:52.710Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backup","docker","inux","kubernetes","mysql","perl"],"created_at":"2024-10-27T21:39:57.374Z","updated_at":"2026-04-12T12:50:04.218Z","avatar_url":"https://github.com/technicalguru.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"# backup\nA Perl-based backup/archiving solution for Linux machines.\n\nI have been an administrator of Linux machines for many years. Since then I had been using my\nown little backup script that also fulfills archiving purposes. This GitHub project makes\nmy work available to everyone and basically is a complete rewrite of the original code. The\nnew version can now be enhanced easily by new types of backups (as it was required for some\nKubernetes and Docker databases) as well as by new types of compression, notification or\ntransfers to remote backup locations. \n\nFeatures:\n* full modular design\n* Comes with modules for:\n  * Filesystem backups\n  * GlusterFS filesystems\n  * MySQL database backups\n  * MySQL database backups from Kubernetes services\n  * MySQL database backups from Docker containers\n  * FTP transfer to remote backup location\n  * SCP transfer to remote backup location\n* extendable by custom backup modules\n* GZIP compression of backup files (other types can be plugged in)\n* supports hourly, daily, weekly and monthly backups\n* keeps archived versions of backups\n* notification by email (other types can be plugged in) when errors occur\n\n# Status and Known Issues\n\nBackup is stable. The current version is 2.0. Please notice that these modules are deprecated in 2.0:\n\n* MySQL module for Kubernetes\n\nThe MySQL module has been reworked. Please check your configuration when upgrading from 1.x. The changes\nare not compatible.\n\n# Installation and Configuration\n\n* Prerequisites:\n  * Perl 5.22 or above\n  * `cpan install: JSON`\n  * `cpan install: JSON::Parse`\n  * `cpan install: Number::Format`\n* `git clone https://github.com/technicalguru/backup`\n* Create /etc/backup/main.json from example. Follow the [Configuration guide](CONFIGURATION.md).\n\n# Testing your backup\n\n* Create backup and log directory (will not be created in test mode)\n* `backup.pl --dry-run --type=daily`\n\n# Running a backup\n\n* `backup.pl`\n* For cronjob: create a shell file, e.g.\n\n```bash\n#!/bin/bash\n\n/usr/local/backup/backup.pl\n```\n* Define the backup job in ```/etc/crontab```, e.g.:\n\n```crontab\n0 * * * * root /usr/local/backup/backup.sh \u003e/var/log/backup/cronjob.log 2\u003e\u00261\n```\n\n# Command Line Options\n\n* `--dry-run` - perform a dry run, do not change anything (will set log level to verbose)\n* `--verbose` - set log level to verbose. \n* `--type=(hourly|daily|weekly|monthly|mobile)` - perform the given type of backup\n* `--config-file=path` - use the given JSON file as config (Default: /etc/backup/main.json)\n* `--help` - show the usage help text\n\n# Writing your own Backup Module\n\nsee [```ExampleModule.pm```](examples/ExampleModule.pm)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechnicalguru%2Fbackup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftechnicalguru%2Fbackup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechnicalguru%2Fbackup/lists"}