{"id":42502536,"url":"https://github.com/r3c/arshive","last_synced_at":"2026-01-28T13:30:55.378Z","repository":{"id":40649971,"uuid":"3529045","full_name":"r3c/arshive","owner":"r3c","description":"Simple rotation backup tool written in pure shell","archived":false,"fork":false,"pushed_at":"2026-01-16T13:59:26.000Z","size":44,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-17T04:22:18.720Z","etag":null,"topics":["archive","backup","rotate","shell"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/r3c.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"license.md","code_of_conduct":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2012-02-23T19:22:15.000Z","updated_at":"2025-11-24T23:29:34.000Z","dependencies_parsed_at":"2025-06-16T13:47:41.404Z","dependency_job_id":"fc106233-6f8d-47df-9d92-4c6bde9258e2","html_url":"https://github.com/r3c/arshive","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/r3c/arshive","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r3c%2Farshive","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r3c%2Farshive/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r3c%2Farshive/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r3c%2Farshive/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/r3c","download_url":"https://codeload.github.com/r3c/arshive/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/r3c%2Farshive/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28846051,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-28T13:02:32.985Z","status":"ssl_error","status_checked_at":"2026-01-28T13:02:04.945Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["archive","backup","rotate","shell"],"created_at":"2026-01-28T13:30:54.011Z","updated_at":"2026-01-28T13:30:55.372Z","avatar_url":"https://github.com/r3c.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Arshive backup script\n\n[![Build Status](https://img.shields.io/github/actions/workflow/status/r3c/arshive/verify.yml?branch=master)](https://github.com/r3c/arshive/actions/workflows/verify.yml)\n[![license](https://img.shields.io/github/license/r3c/arshive.svg)](https://opensource.org/licenses/MIT)\n\n## Overview\n\nArshive is a simple backup tool written in pure shell script. It is designed to\nperform periodic snapshots of any software data and rotate them to keep only\nthe last N archives. Being written as a shell script, Arshive can be added to\nyour crontab without any extra dependency.\n\n## How to use\n\nDownload [latest release](https://github.com/r3c/arshive/releases/latest) or\nclone repository, then place contents of the `src` directory anywhere in your\nfile system e.g. in `/opt/arshive/`:\n\n```sh\nmkdir -p /opt/arshive \u0026\u0026\nwget -qO - http://github.com/r3c/arshive/tarball/master/ |\ntar xvz --strip-components=2 --wildcards -C /opt/arshive '*/src/'\n```\n\nOpen and edit configuration file `arshive.conf` to declare one or more rule\nfile(s) (see `rules` option) defining backup rules. Other options can be\nmodified in this file to tweak the script behavior.\n\nOpen and edit rule file(s) (see sample `arshive.rule` file) to define how, when\nand for how long backup files should be created. Each rule file can contain\none or more backup task declaration(s) to define how backup files should be\ncreated and maintained.\n\nHere is a sample rule declaring a backup task named \"web-data\" creating a\ngzipped tar archive of everything within `/var/www` every two hour, and keeping\nthe three most recent backups created that way:\n\n```sh\nweb-data: cd /var/www \u0026\u0026 tar -czf {.tgz} *\n  interval=7200\n  keep=3\n```\n\nRun `/your/directory/archive.sh -q` every 5 minutes or so from your crontab.\nThe \"-q\" flag will suppress any non-error output so the tool will take care of\nexecuting any due backup task and warn about anything that went bad.\n\n## Rule options\n\nFollowing rule options can be used to tweak a backup task:\n\n- `interval=N`: create a backup only if latest one is more than N seconds old\n  or if no backup was successfully created yet. Default value is 86400 (1 day).\n- `keep=N`: keep the last N successfully created backup files and delete older\n  ones. Default value is 7.\n- `max_size=N`: log a warning if size of created backup file is larger than N\n  bytes.\n- `max_size_ratio=N`: log a warning if size of created backup file is more than\n  N times larger than previous backup size. N can be a decimal number, default\n  value is 10.0.\n- `min_size=N`: log a warning if size of created backup file is smaller than N\n  bytes.\n- `min_size_ratio=N`: log a warning if size of created backup file is less than\n  N times smaller than previous backup size. N can be a decimal number, default\n  value is 0.1.\n\n## Resource\n\n- Contact: v.github.com+arshive [at] mirari [dot] fr\n- License: [license.md](license.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fr3c%2Farshive","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fr3c%2Farshive","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fr3c%2Farshive/lists"}