restic-automatic-backup-scheduler | Automatic restic backup using Backblaze B2 storage | Continuous Backup library

 by   erikw Shell Version: v7.4.0 License: BSD-3-Clause

kandi X-RAY | restic-automatic-backup-scheduler Summary

kandi X-RAY | restic-automatic-backup-scheduler Summary

restic-automatic-backup-scheduler is a Shell library typically used in Backup Recovery, Continuous Backup applications. restic-automatic-backup-scheduler has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.

Automatic restic backup using Backblaze B2 storage, Linux systemd timers, macOS LaunchAgent, Windows ScheduledTask or simply cron
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              restic-automatic-backup-scheduler has a low active ecosystem.
              It has 492 star(s) with 94 fork(s). There are 12 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 3 open issues and 47 have been closed. On average issues are closed in 51 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of restic-automatic-backup-scheduler is v7.4.0

            kandi-Quality Quality

              restic-automatic-backup-scheduler has 0 bugs and 0 code smells.

            kandi-Security Security

              restic-automatic-backup-scheduler has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              restic-automatic-backup-scheduler code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              restic-automatic-backup-scheduler is licensed under the BSD-3-Clause License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              restic-automatic-backup-scheduler releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of restic-automatic-backup-scheduler
            Get all kandi verified functions for this library.

            restic-automatic-backup-scheduler Key Features

            No Key Features are available at this moment for restic-automatic-backup-scheduler.

            restic-automatic-backup-scheduler Examples and Code Snippets

            No Code Snippets are available at this moment for restic-automatic-backup-scheduler.

            Community Discussions

            QUESTION

            How to disable azure cosmos db continious backup
            Asked 2022-Feb-22 at 10:59

            I enabled the Azure cosmos DB continuous backup for one of my Cosmos DBs.
            How can I disable it? It just says you have successfully enrolled in continuous backup.

            ...

            ANSWER

            Answered 2022-Feb-22 at 10:59

            I am not sure if you have seen this message in the portal when you created the account/also mentioned in the doc

            "You will not be able to switch between the backup policies after the account has been created"

            since you need to select either "Periodic" or "Continuous" at the creation of Cosmos Account, it becomes mandatory.

            Update:

            You will not see the above in portal anymore, you can Switch from "Periodic" to "Continous" on an existing account and that cannot be reverted. You can read more here.

            Source https://stackoverflow.com/questions/69347197

            QUESTION

            Consistency of Continuous backup of Azure Cosmos DB
            Asked 2021-Nov-25 at 17:15

            What would be the consistency of the continuous backup of the write region if the database is using bounded staleness consistency? Will it be equivalent to strong consistent data assuming no failovers happened?

            Thanks Guru

            ...

            ANSWER

            Answered 2021-Nov-25 at 17:15

            Backups made from any secondary region will have data consistency defined by the guarantees provided by the consistency level chosen. In the case of strong consistency, all secondary region backups will have completely consistent data.

            Bounded staleness will have data that may have stale or inconsistent data inside the defined staleness window (minimum 300 seconds or 100k writes). Outside of that staleness window the data will be consistent.

            Data for the weaker consistency levels will have no guarantees for consistency from backups in secondary regions.

            Source https://stackoverflow.com/questions/70099953

            QUESTION

            Mongo atlas recommends cloud provider snaphots for backup - Is it effective?
            Asked 2020-May-19 at 10:12

            MongoDB has deprecated the continuous back up of data. It has recommended using CPS (Cloud provider snapshots). As far as I understood, snapshots isn't really going to be effective compared to continuous backup coz, if system breaks, then we can only be able to restore the data till the previous snapshot which isn't gonna make the database up-to-date or close to it atleast.

            Am I missing something here in my understanding?

            ...

            ANSWER

            Answered 2020-May-19 at 10:12

            Cloud provider snapshots can be combined with point in time restore to give the recovery point objective you require. With oplog based restores you can get granularity of one second.

            Source https://stackoverflow.com/questions/61886736

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install restic-automatic-backup-scheduler

            Depending on your system, the setup will look different. Choose one of:.
            Linux + Systemd
            macOS + LaunchAgent
            Windows + ScheduledTask
            Cron - for any system having a cron daemon. Tested on FreeBSD and macOS.
            ☝ Note The Linux setup here will assume an installation to /. Many Linux distributions nowadays use Systemd, which features good support for running services and scheduled jobs. If your distribution is no on Systemd, check out the cron setup instead.
            Create B2 bucket + credentials
            Install scripts, configs systemd units/timers: With make: $ sudo make install-systemd Arch Linux users: use the AUR package, e.g. $ yay -S restic-automatic-backup-scheduler
            Fill out configuration values in /etc/restic.
            Initialize the remote repo. Source the profile to make all needed configuration available to restic(1). All commands after this assumes the profile is sourced in the current shell. # source /etc/restic/default.env.sh # restic init
            Configure how often backups should be done. If needed, edit OnCalendar in /usr/lib/systemd/system/restic-backup@.timer.
            Enable automated backup for starting with the system & make the first backup: # systemctl enable --now restic-backup@default.timer
            Watch the first backup progress with Systemd journal: # journalctl -f --lines=50 -u restic-backup@default
            Verify the backup # restic snapshots
            (recommended) Enable the check job that verifies that the backups for the profile are all intact. # systemctl enable --now restic-check@default.timer
            (optional) Define multiple profiles: just make a copy of the default.env.sh and use the defined profile name in place of default to run backups or enable timers. Notice that the value after @ works as a parameter. # systemctl enable restic-backup@other_profile.timer
            Consider more optional features.
            ☝ Note The macOS setup here will assume an installation to /usr/local, as custom with Homebrew installations. Launchd is the modern built-in service scheduler in macOS. It has support for running services as root (Daemon) or as a normal user (Agent). Here we set up an LauchAgent to be run as your normal user for starting regular backups.
            Create B2 bucket + credentials
            Install scripts, configs and LaunchAgent: (recommended) with Homebrew from the erikw/homebrew-tap: $ brew install erikw/tap/restic-automatic-backup-scheduler Using make: $ make PREFIX=/usr/local install-launchagent
            Fill out configuration values in /usr/local/etc/restic.
            Initialize the remote repo. Source the profile to make all needed configuration available to restic(1). All commands after this assumes the profile is sourced in the current shell. $ source /usr/local/etc/restic/default.env.sh $ restic init
            Configure how often backups should be done. If needed, edit OnCalendar in Homebrew install: ~/Library/LaunchAgents/homebrew.mxcl.restic-automatic-backup-scheduler.plist. make install: ~/Library/LaunchAgents/com.github.erikw.restic-backup.plist.
            Enable automated backup for starting with the system & make the first backup: Homebrew install: $ brew services start restic-automatic-backup-scheduler make install: $ launchctl bootstrap gui/$UID ~/Library/LaunchAgents/com.github.erikw.restic-backup.plist $ launchctl enable gui/$UID/com.github.erikw.restic-backup $ launchctl kickstart -p gui/$UID/com.github.erikw.restic-backup As a convenience, a shortcut for the above commands are $ make activate-launchagent-backup.
            Watch the first backup progress from the log files: $ tail -f ~/Library/Logs/restic/backup*
            Verify the backup $ restic snapshots
            (recommended) Enable the check job that verifies that the backups for the profile are all intact. Homebrew install: $ brew services start restic-automatic-backup-scheduler-check make install: $ launchctl bootstrap gui/$UID ~/Library/LaunchAgents/com.github.erikw.restic-check.plist $ launchctl enable gui/$UID/com.github.erikw.restic-check $ launchctl kickstart -p gui/$UID/com.github.erikw.restic-check As a convenience, a shortcut for the above commands are $ make activate-launchagent-check.
            Consider more optional features.
            Then control the service with homebrew:.
            Use the disable command to temporarily pause the agent, or bootout to uninstall it. If you updated the .plist file, you need to issue the bootout followed by bootrstrap and enable sub-commands of launchctl. This will guarantee that the file is properly reloaded.
            Windows comes with a built-in task scheduler called ScheduledTask. The frontend app is "Task Scheduler" (taskschd.msc) and we can use PowerShell commands to install a new scheduled task. I describe here one of may ways you can get restic and this backup script working on Windows. Here I chose to work with scoop and git-bash.
            Install scoop
            Install dependencies from a PowerShell with administrator privileges: powershell> scoop install restic make git
            In a non-privileged PowerShell, start git-bash and clone this repo powershell> git-bash git-bash$ mkdir ~/src && cd ~/src/ git-bash$ git clone https://github.com/erikw/restic-automatic-backup-scheduler.git && cd $(basename "$_" .git)
            Install scripts, configs and ScheduledTasks git-bash$ make install-schedtask
            Fill out configuration values in /etc/restic. git-bash$ vim /etc/restic/* Note that you should use cygwin/git-bash paths. E.g. in default.env.sh you could have export RESTIC_BACKUP_PATHS='/c/Users/<username>/My Documents'
            Initialize the remote repo. Source the profile to make all needed configuration available to restic(1). All commands after this assumes the profile is sourced in the current shell. git-bash$ source /etc/restic/default.env.sh git-bash$ restic init
            Make the first backup git-bash$ restic_backup.sh
            Verify the backup git-bash$ restic snapshots
            Inspect the installed ScheduledTasks and make a test run Open the app "Task Scheduler" (taskschd.msc) Go to the local "Task Scheduler Library" Right click on one of the newly installed tasks e.g. restic_backup and click "run". If the tasks are not there, maybe you opended it up before make install-schedtask: just close and start it again to refresh. Now a git-bash window should open running restic_backup.sh, and the next time the configured schedule hits!
            Consider more optional features.
            ☝ Note There are many different cron implementations out there and they all work slightly different. Any system that has a cron-like system can easily setup restic backups as well. However if you system supports any of the previous setups, those are recommended over cron as they provide more features and reliability for your backups.
            Create B2 bucket + credentials
            Install scripts, configs systemd units/timers: $ sudo make install-cron This assumes that your cron supports dropping files into /etc/cron.d/. If that is not the case, simply copy the relevant contents of the installed /etc/cron.d/restic in to your /etc/crontab. # grep "^@.*restic_" /etc/cron.d/restic >> /etc/crontab
            Fill out configuration values in /etc/restic.
            Initialize the remote repo. Source the profile to make all needed configuration available to restic(1). All commands after this assumes the profile is sourced in the current shell. # source /etc/restic/default.env.sh # restic init
            Make the first backup # restic_backup.sh
            Verify the backup # restic snapshots
            Configure how often backups should be done by directly editing /etc/cron.d/restic (or /etc/crontab).
            Consider more optional features.
            This is a more detailed explanation than the TL;DR sections above that will give you more understanding in the setup. This section is more general, but uses Linux + Systemd as the example setup.
            Create a Backblaze account (use 2FA!).
            Create a new B2 bucket. Private, without B2 encryption and without the object lock feature
            Create a pair of keyId and applicationKey Limit scope of the new id and key pair to only the above created bucket.
            _global.env.sh: Fill this file out with your global settings including B2 keyID & applicationKey.
            default.env.sh: This is the default profile. Fill this out with bucket name, backup paths and retention policy. This file sources _global.env.sh and is thus self-contained and can be sourced in the shell when you want to issue some manual restic commands. For example: $ source /etc/restic/default.env.sh $ restic snapshots # You don't have to supply all parameters like --repo, as they are now in your environment!
            pw.txt: This file should contain the restic password (single line) used to encrypt the repository. This is a new password what soon will be used when initializing the new repository. It should be unique to this restic backup repository and is needed for restoring from it. Don't re-use your B2 login password, this should be different. For example you can generate a 128 character password (must all be on one line) with: $ openssl rand -base64 128 | tr -d '\n' > /etc/restic/pw.txt
            backup_exclude.txt: List of file patterns to ignore. This will trim down your backup size and the speed of the backup a lot when done properly!
            restic_backup.sh: A script that defines how to run the backup. The intention is that you should not need to edit this script yourself, but be able to control everything from the *.env.sh profiles.
            /etc/restic/backup_exclude.txt - global exclude list. You can use only this one if your setup is easy. This is set in _global.env.sh. If you need a different file for another profile, you can override the envvar RESTIC_BACKUP_EXCLUDE_FILE in this profile.
            .backup_exclude.txt per backup path. If you have e.g. an USB disk mounted at /mnt/media and this path is included in the $RESTIC_BACKUP_PATHS, you can place a file /mnt/media/.backup_exclude.txt and it will automatically picked up. The nice thing about this is that the backup paths are self-contained in terms of what they shoud exclude!
            restic-backup@.service: A service that calls the backup script with the specified profile. The profile is specified by the value after @ when running it (see below).
            restic-backup@.timer: A timer that starts the former backup every day (same thing about profile here). If needed, edit this file to configure how often back up should be made. See the OnCalendar key in the file.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/erikw/restic-automatic-backup-scheduler.git

          • CLI

            gh repo clone erikw/restic-automatic-backup-scheduler

          • sshUrl

            git@github.com:erikw/restic-automatic-backup-scheduler.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Continuous Backup Libraries

            restic

            by restic

            borg

            by borgbackup

            duplicati

            by duplicati

            manifest

            by phar-io

            velero

            by vmware-tanzu

            Try Top Libraries by erikw

            tmux-powerline

            by erikwShell

            dotfiles

            by erikwShell

            taiga-stats

            by erikwPython